{"version":3,"sources":["webpack:///./node_modules/jsonp/index.js","webpack:///./src/components/MailChimpSubscribe/MailChimpSubscribe.js","webpack:///./src/pages/articles/2020-guide-checklist.js","webpack:///./node_modules/gatsby-plugin-mailchimp/index.js","webpack:///./node_modules/jsonp/node_modules/debug/src/browser.js","webpack:///./node_modules/email-validator/index.js","webpack:///./node_modules/gatsby-plugin-google-analytics/index.js","webpack:///./node_modules/jsonp/node_modules/ms/index.js","webpack:///./src/pages/articles/tick.gif","webpack:///./node_modules/jsonp/node_modules/debug/src/debug.js","webpack:///./src/components/Layout/Button/Button.js"],"names":["debug","module","exports","url","opts","fn","script","timer","prefix","id","name","count","param","timeout","enc","encodeURIComponent","target","document","getElementsByTagName","head","setTimeout","cleanup","Error","parentNode","removeChild","window","noop","clearTimeout","data","indexOf","replace","createElement","src","insertBefore","MailChimpSubscribe","props","validateForm","email","trim","length","setState","emailError","match","clearErrors","formMessage","submitHandler","event","preventDefault","listFields","emailEl","current","value","addToMailchimp","then","result","formSubmissionSuccessful","trackCustomEvent","category","trackCategory","action","trackAction","label","trackLabel","msg","React","createRef","state","isVerified","capatchaValue","bind","render","successHTML","Message","dangerouslySetInnerHTML","__html","this","formHTML","onSubmit","Title","Headline","title","Input","placeholder","type","pattern","ref","Button","buttonLabel","displayHTML","Box","FormContainter","Component","styled","div","input","GuideStyle","GuidePage","location","Layout","description","PageHeader","text","SectionPageMargin","marginBottom","Grid2","GridItem","Heading2","Paragraph1","href","HR","ReadyToGetStarted","bullet","hr","Object","defineProperty","obj","_jsonp","require","__esModule","default","_emailValidator","subscribeEmailToMailchimp","_ref","Promise","resolve","reject","err","convertListFields","fields","queryParams","field","prototype","hasOwnProperty","call","fieldTransformed","substring","toUpperCase","concat","_default","endpointOverride","isEmailValid","validate","emailEncoded","endpoint","__GATSBY_PLUGIN_MAILCHIMP_ADDRESS__","__GATSBY_PLUGIN_MAILCHIMP_TIMEOUT__","arguments","load","r","storage","e","process","DEBUG","log","console","Function","apply","formatArgs","args","useColors","namespace","humanize","diff","c","color","splice","index","lastC","save","namespaces","removeItem","documentElement","style","WebkitAppearance","firebug","exception","table","navigator","userAgent","toLowerCase","parseInt","RegExp","$1","chrome","local","localStorage","localstorage","colors","formatters","j","v","JSON","stringify","message","enable","tester","test","parts","split","some","part","_interopRequireDefault","OutboundLink","_ref$nonInteraction","nonInteraction","transport","hitCallback","_ref$callbackTimeout","callbackTimeout","ga","trackingEventOptions","eventCategory","eventAction","eventLabel","eventValue","callback","opt_timeout","called","raceCallback","createFunctionWithTimeout","_extends2","_objectWithoutPropertiesLoose2","_react","_propTypes","rest","onClick","redirect","button","altKey","ctrlKey","metaKey","shiftKey","defaultPrevented","propTypes","string","number","func","s","m","h","d","plural","ms","n","Math","floor","ceil","val","options","str","String","exec","parseFloat","parse","isNaN","long","round","fmtShort","prevTime","createDebug","enabled","self","curr","Date","prev","Array","i","coerce","unshift","format","formatter","logFn","hash","charCodeAt","abs","selectColor","init","stack","disable","names","skips","len","push","substr","attrs","bgColor"],"mappings":"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","file":"component---src-pages-articles-2020-guide-checklist-js-2ad54d1e71e5a9f4e13d.js","sourcesContent":["/**\n * Module dependencies\n */\nvar debug = require('debug')('jsonp');\n/**\n * Module exports.\n */\n\n\nmodule.exports = jsonp;\n/**\n * Callback index.\n */\n\nvar count = 0;\n/**\n * Noop function.\n */\n\nfunction noop() {}\n/**\n * JSONP handler\n *\n * Options:\n * - param {String} qs parameter (`callback`)\n * - prefix {String} qs parameter (`__jp`)\n * - name {String} qs parameter (`prefix` + incr)\n * - timeout {Number} how long after a timeout error is emitted (`60000`)\n *\n * @param {String} url\n * @param {Object|Function} optional options / callback\n * @param {Function} optional callback\n */\n\n\nfunction jsonp(url, opts, fn) {\n if ('function' == typeof opts) {\n fn = opts;\n opts = {};\n }\n\n if (!opts) opts = {};\n var prefix = opts.prefix || '__jp'; // use the callback name that was passed if one was provided.\n // otherwise generate a unique name by incrementing our counter.\n\n var id = opts.name || prefix + count++;\n var param = opts.param || 'callback';\n var timeout = null != opts.timeout ? opts.timeout : 60000;\n var enc = encodeURIComponent;\n var target = document.getElementsByTagName('script')[0] || document.head;\n var script;\n var timer;\n\n if (timeout) {\n timer = setTimeout(function () {\n cleanup();\n if (fn) fn(new Error('Timeout'));\n }, timeout);\n }\n\n function cleanup() {\n if (script.parentNode) script.parentNode.removeChild(script);\n window[id] = noop;\n if (timer) clearTimeout(timer);\n }\n\n function cancel() {\n if (window[id]) {\n cleanup();\n }\n }\n\n window[id] = function (data) {\n debug('jsonp got', data);\n cleanup();\n if (fn) fn(null, data);\n }; // add qs component\n\n\n url += (~url.indexOf('?') ? '&' : '?') + param + '=' + enc(id);\n url = url.replace('?&', '?');\n debug('jsonp req \"%s\"', url); // create script\n\n script = document.createElement('script');\n script.src = url;\n target.parentNode.insertBefore(script, target);\n return cancel;\n}","import React, { Component } from 'react';\nimport addToMailchimp from 'gatsby-plugin-mailchimp'\nimport { trackCustomEvent } from 'gatsby-plugin-google-analytics';\nimport styled from 'styled-components'\nimport Button from '../Layout/Button/Button'\n\nclass MailChimpSubscribe extends Component {\n\n constructor(props){\n super(props);\n this.emailEl = React.createRef();\n \n this.state = {\n formSubmissionSuccessful: null,\n formMessage: \"\",\n emailError: \"\",\n isVerified: false,\n capatchaValue: \"\"\n }\n\n this.submitHandler = this.submitHandler.bind(this);\n }\n\n validateForm = (email) => {\n\n if(email.trim().length === 0) {\n this.setState({emailError: \"Enter an email addresss\"});\n return false;\n }\n\n let emailValid = email.match(/^([\\w.%+-]+)@([\\w-]+\\.)+([\\w]{2,})$/i);\n if(!emailValid) {\n this.setState({emailError: \"Invalid email addresss\"});\n return false;\n }\n\n return true;\n }\n\n \n clearErrors = () => {\n this.setState({\n formMessage: \"\",\n emailError: \"\",\n })\n } \n \n submitHandler = (event) => {\n\n event.preventDefault(); \n \n let listFields = {}\n if(this.props.listFields) {\n listFields = this.props.listFields[0];\n }\n\n \n this.clearErrors();\n \n const email = this.emailEl.current.value; \n let formValid = this.validateForm(email);\n\n if(!formValid) return;\n\n\n addToMailchimp(email, listFields).then(data => {\n if(data.result === \"success\"){\n\n this.setState({ formSubmissionSuccessful: true,\n formMessage: \"Thank you, the Guide has been emailed to you. Please check your spam folder or Promotions tab (Gmail) if you don't receive it.\"\n })\n\n trackCustomEvent({\n category: this.props.trackCategory,\n action: this.props.trackAction,\n label: this.props.trackLabel\n });\n\n }\n if(data.result === \"error\"){\n this.setState({ formSubmissionSuccessful: true,\n formMessage: data.msg\n })\n }\n });\n\n }\n\n render () {\n\n const successHTML = (\n \n );\n\n const formHTML = (\n
\n
\n Download\n {this.props.title}\n
\n \n {this.state.emailError}\n
\n
\n \n
\n
\n
\n );\n\n var displayHTML = \"\";\n if(this.state.formSubmissionSuccessful) {\n displayHTML = successHTML;\n } else {\n displayHTML = formHTML;\n }\n \n return (\n\n \n \n {displayHTML}\n \n \n \n )\n }\n }\n\n export default MailChimpSubscribe;\n\n const Box = styled.div`\n width: 310px;\n height: 310px;\n\n text-align: center;\n background-color: #f8f8f9;\n padding-top: 60px;\n padding-bottom: 20px;\n margin-left: 60px;\n margin-right: 60px;\n clip-path: circle(150px at center);\n\n @media (max-width: 599px) {\n margin-left: 5px;\n margin-right: 5px;\n padding-left: 20px;\n padding-right: 10px;\n }\n\n `\n const FormContainter = styled.div`\n display: inline-block;\n text-align: center;\n `\n\n\nconst Input = styled.input`\ndisplay: block;\noutline: none;\nwidth: 200px;\nfont-size: 1.2rem;\nbackground-color: white;\ncolor: black;\npadding: 5px;\nborder-color: #3479ae;\nmargin-bottom: 5px;\nmargin-top: 20px;\n\n&::placeholder { \n color: #CCCCCC;\n text-aligned: center;\n} \n\n`\n\nconst Title = styled.div `\n margin-top: 40px;\n font-size: 2rem;\n\n font-weight: 400;\n letter-spacing: -0.1rem;\n`\n\n\nconst Headline = styled.div `\n font-size: 1.3rem;\n font-weight: 400;\n letter-spacing: -0.1rem;\n`\n\nconst Error = styled.div `\n height: 20px;\n text-aligned: center;\n font-size: 0.8rem;\n`\n\nconst Message = styled.div `\n margin: 90px 40px 10px 40px;\n text-aligned: center;\n`\n\n\n","import React from \"react\"\nimport Layout from \"../../components/Layout/Layout\"\nimport SEO from \"../../components/Seo/Seo\"\nimport styled from 'styled-components'\nimport bullet from './tick.gif'\nimport MailChimpSubscribe from \"../../components/MailChimpSubscribe/MailChimpSubscribe\"\nimport PageHeader from '../../components/Layout/PageHeader/PageHeader'\nimport SectionPageMargin from '../../components/Layout/Section/SectionPageMargin'\nimport Grid2 from '../../components/Layout/Grid2/Grid2'\nimport GridItem from '../../components/Layout/GridItem/GridItem'\nimport Heading2 from '../../components/Type/Heading2'\nimport Paragraph1 from '../../components/Type/Paragraph1'\nimport ReadyToGetStarted from '../../components/ReadyToGetStarted/ReadyToGetStarted'\n\n\nconst GuidePage = ({location}) => \n\t(\n\t\t\n\n\t\t\t\n\n\t\t\t\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tMake the process easier\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tThis guide and checklist is designed to make the process easier if you want to sell a prestige car yourself privately. We hope that by following this process you can make life easier for yourself, and also present your car in the best possible way, to get a better price for your car.\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tIf you’re too busy to sell privately yourself, consider using Summon to help. We offer a full concierge service for selling your car privately. You can find more information here.\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tSelling a car privately, in particular a prestige car, can seem overwhelming. The truth is, there is nothing overly complicated... but there are a lot of steps, and as most people only sell a car every 3 or 4 years it’s not a process you can easily remember, rinse and repeat.\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tThis guide and checklist is designed to make the process easier if you want to sell a prestige car yourself privately. We hope that by following this process you can make life easier for yourself, and also present your car in the best possible way, to get a better price for your car.\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tIf you’re too busy to sell privately yourself, consider using Summon to help. We offer a full concierge service for selling your car privately. You can find more information here.\n\t\t\t\t\t\n\n\t\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\tPreparing your car for sale\n\t\t\t\t\t\n\t\t\t\t\t\tFirst things first; you will need to find and prepare all the documents and information needed to advertise and sell your car;\n\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
  • Have ready vehicle details including; car registration, rego expiry, VIN (vehicle information number)
  • \n\t\t\t\t\t\t
  • Check any specific State Government regulations for selling a car privately; NSW, Victoria, Queensland, South Australia, Western Australia, Tasmania, Australian Capital Territory, Northern Territory - in particular pay attention to requirements for Road Worthy Certificate (RWC) or Safety Certificates
  • \n\t\t\t\t\t\t
  • Get an up-to-date service history for your car - if your logbooks are not 100% current then request a statement from your service centre. For prestige cars, owners will be reassured by servicing with approved service centres, if this is the case with your car then mention it in the advertising
  • \n\t\t\t\t\t\t
  • If you have finance owing on the car, request a statement from the loan provider so you know the final payout figures (after any early exit fees, interest and the like)
  • \n\t\t\t\t\t\t
  • Check if the car is still under manufacturers warranty, or an extended warranty. If it is, be sure to call this out (with remaining months/years) in your listing adverts
  • \n\t\t\t\t\t\t
  • Collect your proof of ownership documentation (e.g. receipt of purchase)
  • \n\t\t\t\t\t\t
  • Consider getting a vehicle history report from CarFacts.com.au ($34) which can be provided to interested buyers
  • \n\t\t\t\t\t\t
  • Rummage around your filing cabinets for your owners manual and spare keys
  • \n\t\t\t\t\t
\n\n\t\t\t\t\t
\n\n\t\t\t\t\tHow much is your car worth?\n\t\t\t\t\t\n\t\t\t\t\t\tNow for the fun part… trying to establish a realistic price for your car. This is much harder than it looks, and private sellers often get this wrong (as do dealers!);\n\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
  • Request a comparison price from a dealership (either as a trade-in or straight purchase). If you are selling an Audi, take it to an Audi dealership - it’s unlikely BMW will offer you a great price unless you are buying a new car from them. If you are happy with the price from the dealer, you can skip most of the remaining tips!
  • \n\t\t\t\t\t\t
  • Request a comparison price from an online wholesaler such as Sell Your Car Fast or Sell My Car. Expect a price of 15% - 20% less than the market price
  • \n\t\t\t\t\t\t
  • Optional: seek valuations for your car from online price guides such as Carsales.com.au, Manheims auction results, Glass's Guide or Carsguide. But take these with a grain of salt, we recently benchmarked these and found a huge discrepancy in the results.
  • \n\t\t\t\t\t\t
  • Research other cars available for sale (on Carsales.com.au, CarsGuide, Drive.com.au and Autotrader) that are comparable to your car, make a shortlist of five similar cars. The most important things to look for are the same make, model, series, badge, model year - and similar mileage. Also watch carefully for dealer listings vs private seller listings - Dealers are generally more accurate / realistic in pricing than private sellers. From this research, you should have a good benchmark from which to price your car
  • \n\t\t\t\t\t\t
  • Based on your research, decide on a final price to advertise the car for sale, but be sure to allow room for negotiation with any interested buyer
  • \n\t\t\t\t\t\t
  • Use Carsales.com.au PriceAssist to check your price against current listed cars and cars that have sold in the last 12 months. Unfortunately PriceAssist is only available after you have paid for and listed your car for sale, after which you can adjust the price if you wish to
  • \n\t\t\t\t\t
\n\n\t\t\t\t\t
\n\n\t\t\t\t\tCar photography\n\t\t\t\t\t\n\t\t\t\t\t\tHere at Summon, it makes us cringe every time we see a car listed for sale that is either a) covered in dirt, and/or b) photographed with an iPhone 3 in a dark garage. A small investment in presenting your car at it’s best will ensure more interest and ultimately a better price and faster sale;\n\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
  • Start by giving your car a thorough clean inside and out. Make sure you clean all the tricky spots like boot openings, door openings and bonnet. Attention to detail now will help with photos but also when you have people inspecting the car later. Empty out any personal items such as deodorants, door storage areas and the boot. If you’re busy, get the car professionally cleaned.
  • \n\t\t\t\t\t\t
  • If the paintwork is looking tired, consider getting a professional detail. This will also be a benefit for people inspecting the car. First impressions count!
  • \n\t\t\t\t\t\t
  • Find a good location for photos, ideally not at your house (for privacy reasons), but perhaps a nearby street that is quiet and has good light. We prefer not taking photos at the beach, as although it can look good, potential buyers might think the car has been exposed to moisture and salt
  • \n\t\t\t\t\t\t
  • Timing your photo shoot; the ideal time to take photos is in the early morning or late afternoon (in summer) when you can avoid harsh shadows and glare.
  • \n\t\t\t\t\t\t
  • If you are selling a prestige car, consider hiring a professional photographer. You can hire photographers on-demand from sites such as www.snappr.co and for a few hundred dollars you can have your car looking a million bucks
  • Take as many photos as your ad will allow, being sure to take good quality exterior shots from every angle. Get down low to frame the shot, and take care that the background is clear of distractions. Take photos of each wheel, and interior and the boot. Take photos of any scratches or damage to the car.
  • \n\t\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t
\n\n\t\t\t\t\tAdvertising your car for private sale\n\t\t\t\t\t\n\t\t\t\t\t\tNow that you have amazing photos, we need to show them to the world and attract a buyer. There are several popular classified sites, and some are better suited to particular cars than others. For prestige cars, the most buyers are looking on Carsales.com.au - but listing on other marketplaces is free so also worth doing.\n\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
  • You should already have collected all the details about your car, now you need to write an honest, persuasive and compelling description to go with your photos. Channel your inner writer and use the AIDA framework: Attention, Interest, Desire and Action!
  • \n\t\t\t\t\t\t
  • Highlight the positives of the car, but also be honest about any shortcomings
  • \n\t\t\t\t\t\t
  • Be sure to list any options on the car in the description
  • \n\t\t\t\t\t\t
  • Does the car have a warranty? If so, be sure to mention this and when it expires
  • \n\t\t\t\t\t\t
  • Advertise your car for sale on Carsales.com.au, and then also consider Drive.com.au, Autotrader and Carsguide, eBay and Facebook Marketplace
  • \n\t\t\t\t\t\t
  • If you are selling a prestige car, we recommend paying for a Premium Listing on Carsales.com.au - this has a big effect on the number of people who will see your car listing
  • \n\t\t\t\t\t\t
  • Also consider listing your car on car enthusiast sites, for example if you are selling a Porsche you could list it on the PFA (porscheforum.com.au) - you need to be a paid member to do this
  • \n\t\t\t\t\t\t
  • Also look into car club Web sites, for example Porsche Club Victoria members can list cars (for free) on the Marketplace on the PCV Web site
  • When you start receiving enquiries, be careful to avoid scams and frauds, these are common on the various car marketplaces
  • You will also likely receive messages and calls from people wanting to grab a bargain and make low-ball offers. This is frustrating but part of the game, be patient and respectful, and firm with the price you want
  • \n\t\t\t\t\t
\n\n\t\t\t\t\t
\n\n\t\t\t\t\tInspections and Test drives\n\t\t\t\t\t\n\t\t\t\t\t\tOnce you have a serious buyer interested in the car, they will want to see (and probably) drive the car before making an offer. This is a good time to be overly paranoid, as although it’s uncommon that people steal cars while arranging a ‘test-drive’ it does happen (it happened to a friend of mine in fact).\n\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
  • Check the car’s tyre pressures, and also tread levels
  • \n\t\t\t\t\t\t
  • Start by getting the buyers name and phone number before arranging the test-drive, and check the number is real. When the buyer arrives for the test-drive, ask for a copy of their drivers licence and take a photo of it.
  • \n\t\t\t\t\t\t
  • Check with your insurance policy that it will cover another driver (sometimes this is limited to a certain age, so you might need to ask how old the buyer is)
  • \n\t\t\t\t\t\t
  • Give the car a good clean inside and out before meeting the buyer
  • \n\t\t\t\t\t\t
  • Never ask to meet at your house, meet somewhere nearby that you know and would be comfortable meeting a stranger at. Ideally somewhere that other people will be around. Consider having a friend or family member come along with you
  • \n\t\t\t\t\t\t
  • Don’t let the prospective buyer drive the car by themselves, you need to go with them. And don’t be tricked into getting out of the car during the drive, and giving them the opportunity to drive off without you
  • \n\t\t\t\t\t\t
  • If you meet a prospective buyer and don’t have a good vibe about them, don’t let them drive your car. Go with your gut.
  • \n\t\t\t\t\t
\n\n\t\t\t\t\t
\n\n\t\t\t\t\tNegotiation\n\t\t\t\t\t\n\t\t\t\t\t\tHopefully you now have a buyer interested to make an offer on your car. You should hopefully have priced the car to allow for some room for negotiation, but also decided on the lowest price you will accept for the car.\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tNegotiation is a science and an art-form, if you really want to geek out on negotiation skills you could read the excellent book; Never Split the Difference by Chris Voss. This $20 book could save you hundreds or even thousands of dollars.\n\t\t\t\t\t\n\n\t\t\t\t\t
\n\n\t\t\t\t\tFinalising the sale\n\t\t\t\t\t\n\t\t\t\t\t\tOnce you have agreed on a price, you need to finalise the sale by receiving payment and doing the necessary paperwork.\n\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
  • Be sure to receive cleared funds in your account before handing over the car keys. These days a fund transfer from bank to bank will take place either same day or next day (depending on which bank you and the buyer are with)
  • \n\t\t\t\t\t\t
  • Provide the buyer with a receipt for the payment, including details of the car such as the make, model, year and VIN. The receipt should state the car is being ‘sold as seen’, unless you have agreed to make any repairs (or replace tyres) before handover
  • \n\t\t\t\t\t\t
  • Check the requirements for Transfer of Ownership in your state, for example in Victoria you will have to get a Roadworthy for the car
  • \n\t\t\t\t\t\t
  • Before handing over the car, remove all of your personal items, and if you have a personalised number plate.
  • \n\t\t\t\t\t\t
  • Be nice and give the car a really great clean (or a detail) inside and out before handing it over to the new owner
  • \n\t\t\t\t\t\t
  • Let your insurance company know that you have sold the car
  • \n\t\t\t\t\t\t
  • Remove the e-Tag (if you have a physical tag) and also update your details online to make sure you don’t incur further charges
  • \n\t\t\t\t\t\t
  • When you are handing over the car, give the buyer the keys (including any spares), accessories, the manual and service booklet.
  • \n\t\t\t\t\t\t
  • Only remove the advertising listings after you have received payment and finished handover
  • \n\t\t\t\t\t
\n\n\t\t\t\t\t
\n\n\t\t\t\t\t\n\t\t\t\t\t\tNow, that wasn’t so hard… was it?!\n\t\t\t\t\t\n\n\t\t\t\t\t\n\t\t\t\t\t\tAlternatively, if you have a prestige car valued at over $50,000, you could simply ask Summon to sell the car on your behalf, and skip almost all of the steps above (except for seeing the money in your bank account!). Contact us today for more information.\n\t\t\t\t\t\n\n\t\t\t\t\t\n\t\t\t\t\t\tIf you liked this article, and are planning to buy a prestige used car soon, check out our Top 10 tips to buying a used prestige car.\n\t\t\t\t\t\n\n\t\t\t\t
\n\t\t\t
\n\n\t\t\t\n\n\t\t
\n\n);\n\n\n\nexport default GuidePage\n\nconst GuideStyle = styled.div`\n li {\n\t margin-left: -30px;\n padding: 5px;\n\tlist-style: none;\n\tmargin-bottom: 10px;\n\tline-height: 2rem;\n\tposition: relative;\n padding-left: 30px;\n\n\t&:before {\n\t\tcontent: '';\n\t\twidth: 15px;\n\t\theight: 15px;\n\t\tposition: absolute;\n\t\tbackground-image: url('${bullet}');\n\t\tbackground-size: cover;\n\t\tbackground-position: center;\n\t\tleft: 0;\n\t\ttop: 15px;\n\t\n\t}\n\n }\n`;\n\nconst HR = styled.hr`\n\tmargin-top: 80px;\n\tmargin-bottom: 40px;\n\tborder: 1px solid #3479ae;\n\twidth: 50%;\n`;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', {\n value: true,\n});\nexports['default'] = void 0;\n\nvar _jsonp = _interopRequireDefault(require('jsonp'));\n\nvar _emailValidator = require('email-validator');\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\n\n/**\n * Make a jsonp request to user's mailchimp list\n * `param` object avoids CORS issues\n * timeout to 3.5s so user isn't waiting forever\n * usually occurs w/ privacy plugins enabled\n * 3.5s is a bit longer than the time it would take on a Slow 3G connection\n *\n * @param {String} url - concatenated string of user's gatsby-config.js\n * options, along with any MC list fields as query params.\n *\n * @return {Promise} - a promise that resolves a data object\n * or rejects an error object\n */\nvar subscribeEmailToMailchimp = function subscribeEmailToMailchimp(_ref) {\n var url = _ref.url,\n timeout = _ref.timeout;\n return new Promise(function(resolve, reject) {\n return (0, _jsonp['default'])(\n url,\n {\n param: 'c',\n timeout: timeout,\n },\n function(err, data) {\n if (err) reject(err);\n if (data) resolve(data);\n },\n );\n });\n};\n/**\n * Build a query string of MC list fields\n *\n * @param {Object} fields - a list of mailchimp audience field labels\n * and their values. We uppercase because that's what MC requires.\n * NOTE: GROUPS stay as lowercase (ex: MC uses group field names as `group[21269]`)\n *\n * @return {String} - `&FIELD1=value1&FIELD2=value2&group[21265][2]=group1`\n */\n\nvar convertListFields = function convertListFields(fields) {\n var queryParams = '';\n\n for (var field in fields) {\n if (Object.prototype.hasOwnProperty.call(fields, field)) {\n // If this is a list group, not user field then keep lowercase, as per MC reqs\n // https://github.com/benjaminhoffman/gatsby-plugin-mailchimp/blob/master/README.md#groups\n var fieldTransformed = field.substring(0, 6) === 'group[' ? field : field.toUpperCase();\n queryParams = queryParams.concat(\n '&'.concat(fieldTransformed, '=').concat(fields[field]),\n );\n }\n }\n\n return queryParams;\n};\n/**\n * Subscribe an email address to a Mailchimp email list.\n * We use ES5 function syntax (instead of arrow) because we need `arguments.length`\n *\n * @param {String} email - required; the email address you want to subscribe\n * @param {Object} fields - optional; add'l info (columns) you want included w/ this subscriber\n * @param {String} endpointOverride - optional; if you want to override the default MC mailing list\n * that's listed in your gatsby-config, pass the list in here\n *\n * @return {Object} -\n * {\n * result: (`success` || `error`)\n * msg: (`Thank you for subscribing!` || `The email you entered is not valid.`),\n * }\n */\n\nvar addToMailchimp = function addToMailchimp(email, fields, endpointOverride) {\n var isEmailValid = (0, _emailValidator.validate)(email);\n var emailEncoded = encodeURIComponent(email);\n\n if (!isEmailValid) {\n return Promise.resolve({\n result: 'error',\n msg: 'The email you entered is not valid.',\n });\n }\n\n var endpoint = __GATSBY_PLUGIN_MAILCHIMP_ADDRESS__; // eslint-disable-line no-undef\n\n var timeout = __GATSBY_PLUGIN_MAILCHIMP_TIMEOUT__; // eslint-disable-line no-undef\n // The following tests for whether you passed in a `fields` object. If\n // there are only two params and the second is a string, then we can safely\n // assume the second param is a MC mailing list, and not a fields object.\n\n if (arguments.length < 3 && typeof fields === 'string') {\n endpoint = fields;\n } else if (typeof endpointOverride === 'string') {\n endpoint = endpointOverride;\n } // Generates MC endpoint for our jsonp request. We have to\n // change `/post` to `/post-json` otherwise, MC returns an error\n\n endpoint = endpoint.replace(/\\/post/g, '/post-json');\n var queryParams = '&EMAIL='.concat(emailEncoded).concat(convertListFields(fields));\n var url = ''.concat(endpoint).concat(queryParams);\n return subscribeEmailToMailchimp({\n url: url,\n timeout: timeout,\n });\n};\n\nvar _default = addToMailchimp;\nexports['default'] = _default;\n","/**\n * This is the web browser implementation of `debug()`.\n *\n * Expose `debug()` as the module.\n */\nexports = module.exports = require('./debug');\nexports.log = log;\nexports.formatArgs = formatArgs;\nexports.save = save;\nexports.load = load;\nexports.useColors = useColors;\nexports.storage = 'undefined' != typeof chrome && 'undefined' != typeof chrome.storage ? chrome.storage.local : localstorage();\n/**\n * Colors.\n */\n\nexports.colors = ['lightseagreen', 'forestgreen', 'goldenrod', 'dodgerblue', 'darkorchid', 'crimson'];\n/**\n * Currently only WebKit-based Web Inspectors, Firefox >= v31,\n * and the Firebug extension (any Firefox version) are known\n * to support \"%c\" CSS customizations.\n *\n * TODO: add a `localStorage` variable to explicitly enable/disable colors\n */\n\nfunction useColors() {\n // NB: In an Electron preload script, document will be defined but not fully\n // initialized. Since we know we're in Chrome, we'll just detect this case\n // explicitly\n if (typeof window !== 'undefined' && window.process && window.process.type === 'renderer') {\n return true;\n } // is webkit? http://stackoverflow.com/a/16459606/376773\n // document is undefined in react-native: https://github.com/facebook/react-native/pull/1632\n\n\n return typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || // is firebug? http://stackoverflow.com/a/398120/376773\n typeof window !== 'undefined' && window.console && (window.console.firebug || window.console.exception && window.console.table) || // is firefox >= v31?\n // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages\n typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\\/(\\d+)/) && parseInt(RegExp.$1, 10) >= 31 || // double check webkit in userAgent just in case we are in a worker\n typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\\/(\\d+)/);\n}\n/**\n * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.\n */\n\n\nexports.formatters.j = function (v) {\n try {\n return JSON.stringify(v);\n } catch (err) {\n return '[UnexpectedJSONParseError]: ' + err.message;\n }\n};\n/**\n * Colorize log arguments if enabled.\n *\n * @api public\n */\n\n\nfunction formatArgs(args) {\n var useColors = this.useColors;\n args[0] = (useColors ? '%c' : '') + this.namespace + (useColors ? ' %c' : ' ') + args[0] + (useColors ? '%c ' : ' ') + '+' + exports.humanize(this.diff);\n if (!useColors) return;\n var c = 'color: ' + this.color;\n args.splice(1, 0, c, 'color: inherit'); // the final \"%c\" is somewhat tricky, because there could be other\n // arguments passed either before or after the %c, so we need to\n // figure out the correct index to insert the CSS into\n\n var index = 0;\n var lastC = 0;\n args[0].replace(/%[a-zA-Z%]/g, function (match) {\n if ('%%' === match) return;\n index++;\n\n if ('%c' === match) {\n // we only are interested in the *last* %c\n // (the user may have provided their own)\n lastC = index;\n }\n });\n args.splice(lastC, 0, c);\n}\n/**\n * Invokes `console.log()` when available.\n * No-op when `console.log` is not a \"function\".\n *\n * @api public\n */\n\n\nfunction log() {\n // this hackery is required for IE8/9, where\n // the `console.log` function doesn't have 'apply'\n return 'object' === typeof console && console.log && Function.prototype.apply.call(console.log, console, arguments);\n}\n/**\n * Save `namespaces`.\n *\n * @param {String} namespaces\n * @api private\n */\n\n\nfunction save(namespaces) {\n try {\n if (null == namespaces) {\n exports.storage.removeItem('debug');\n } else {\n exports.storage.debug = namespaces;\n }\n } catch (e) {}\n}\n/**\n * Load `namespaces`.\n *\n * @return {String} returns the previously persisted debug modes\n * @api private\n */\n\n\nfunction load() {\n var r;\n\n try {\n r = exports.storage.debug;\n } catch (e) {} // If debug isn't set in LS, and we're in Electron, try to load $DEBUG\n\n\n if (!r && typeof process !== 'undefined' && 'env' in process) {\n r = process.env.DEBUG;\n }\n\n return r;\n}\n/**\n * Enable namespaces listed in `localStorage.debug` initially.\n */\n\n\nexports.enable(load());\n/**\n * Localstorage attempts to return the localstorage.\n *\n * This is necessary because safari throws\n * when a user disables cookies/localstorage\n * and you attempt to access it.\n *\n * @return {LocalStorage}\n * @api private\n */\n\nfunction localstorage() {\n try {\n return window.localStorage;\n } catch (e) {}\n}","\"use strict\";\n\nvar tester = /^[-!#$%&'*+\\/0-9=?A-Z^_a-z{|}~](\\.?[-!#$%&'*+\\/0-9=?A-Z^_a-z`{|}~])*@[a-zA-Z0-9](-*\\.?[a-zA-Z0-9])*\\.[a-zA-Z](-?[a-zA-Z0-9])+$/; // Thanks to:\n// http://fightingforalostcause.net/misc/2006/compare-email-regex.php\n// http://thedailywtf.com/Articles/Validating_Email_Addresses.aspx\n// http://stackoverflow.com/questions/201323/what-is-the-best-regular-expression-for-validating-email-addresses/201378#201378\n\nexports.validate = function (email) {\n if (!email) return false;\n if (email.length > 254) return false;\n var valid = tester.test(email);\n if (!valid) return false; // Further checking of some things regex can't handle\n\n var parts = email.split(\"@\");\n if (parts[0].length > 64) return false;\n var domainParts = parts[1].split(\".\");\n if (domainParts.some(function (part) {\n return part.length > 63;\n })) return false;\n return true;\n};","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.OutboundLink = OutboundLink;\nexports.trackCustomEvent = trackCustomEvent;\n\nvar _extends2 = _interopRequireDefault(require(\"@babel/runtime/helpers/extends\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/objectWithoutPropertiesLoose\"));\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar createFunctionWithTimeout = function createFunctionWithTimeout(callback, opt_timeout) {\n if (opt_timeout === void 0) {\n opt_timeout = 1000;\n }\n\n var called = false;\n\n var raceCallback = function raceCallback() {\n if (!called) {\n called = true;\n callback();\n }\n };\n\n setTimeout(raceCallback, opt_timeout);\n return raceCallback;\n};\n\nfunction OutboundLink(props) {\n var eventCategory = props.eventCategory,\n eventAction = props.eventAction,\n eventLabel = props.eventLabel,\n eventValue = props.eventValue,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"eventCategory\", \"eventAction\", \"eventLabel\", \"eventValue\"]);\n return /*#__PURE__*/_react.default.createElement(\"a\", (0, _extends2.default)({}, rest, {\n onClick: function onClick(e) {\n if (typeof props.onClick === \"function\") {\n props.onClick(e);\n }\n\n var redirect = true;\n\n if (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey || e.shiftKey || e.defaultPrevented) {\n redirect = false;\n }\n\n if (props.target && props.target.toLowerCase() !== \"_self\") {\n redirect = false;\n }\n\n if (window.ga) {\n window.ga(\"send\", \"event\", {\n eventCategory: eventCategory || \"Outbound Link\",\n eventAction: eventAction || \"click\",\n eventLabel: eventLabel || props.href,\n eventValue: eventValue,\n transport: redirect ? \"beacon\" : \"\",\n hitCallback: function hitCallback() {\n if (redirect) {\n document.location = props.href;\n }\n }\n });\n } else {\n if (redirect) {\n document.location = props.href;\n }\n }\n\n return false;\n }\n }));\n}\n\nOutboundLink.propTypes = {\n href: _propTypes.default.string,\n target: _propTypes.default.string,\n eventCategory: _propTypes.default.string,\n eventAction: _propTypes.default.string,\n eventLabel: _propTypes.default.string,\n eventValue: _propTypes.default.number,\n onClick: _propTypes.default.func\n};\n/**\n * This allows the user to create custom events within their Gatsby projects.\n *\n * @param {import('gatsby-plugin-google-analytics').CustomEventArgs} args\n * @see https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#events\n */\n\nfunction trackCustomEvent(_ref) {\n var category = _ref.category,\n action = _ref.action,\n label = _ref.label,\n value = _ref.value,\n _ref$nonInteraction = _ref.nonInteraction,\n nonInteraction = _ref$nonInteraction === void 0 ? false : _ref$nonInteraction,\n transport = _ref.transport,\n hitCallback = _ref.hitCallback,\n _ref$callbackTimeout = _ref.callbackTimeout,\n callbackTimeout = _ref$callbackTimeout === void 0 ? 1000 : _ref$callbackTimeout;\n\n if (typeof window !== \"undefined\" && window.ga) {\n var trackingEventOptions = {\n eventCategory: category,\n eventAction: action,\n eventLabel: label,\n eventValue: value,\n nonInteraction: nonInteraction,\n transport: transport\n };\n\n if (hitCallback && typeof hitCallback === \"function\") {\n trackingEventOptions.hitCallback = createFunctionWithTimeout(hitCallback, callbackTimeout);\n }\n\n window.ga(\"send\", \"event\", trackingEventOptions);\n }\n}","/**\n * Helpers.\n */\nvar s = 1000;\nvar m = s * 60;\nvar h = m * 60;\nvar d = h * 24;\nvar y = d * 365.25;\n/**\n * Parse or format the given `val`.\n *\n * Options:\n *\n * - `long` verbose formatting [false]\n *\n * @param {String|Number} val\n * @param {Object} [options]\n * @throws {Error} throw an error if val is not a non-empty string or a number\n * @return {String|Number}\n * @api public\n */\n\nmodule.exports = function (val, options) {\n options = options || {};\n var type = typeof val;\n\n if (type === 'string' && val.length > 0) {\n return parse(val);\n } else if (type === 'number' && isNaN(val) === false) {\n return options.long ? fmtLong(val) : fmtShort(val);\n }\n\n throw new Error('val is not a non-empty string or a valid number. val=' + JSON.stringify(val));\n};\n/**\n * Parse the given `str` and return milliseconds.\n *\n * @param {String} str\n * @return {Number}\n * @api private\n */\n\n\nfunction parse(str) {\n str = String(str);\n\n if (str.length > 100) {\n return;\n }\n\n var match = /^((?:\\d+)?\\.?\\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(str);\n\n if (!match) {\n return;\n }\n\n var n = parseFloat(match[1]);\n var type = (match[2] || 'ms').toLowerCase();\n\n switch (type) {\n case 'years':\n case 'year':\n case 'yrs':\n case 'yr':\n case 'y':\n return n * y;\n\n case 'days':\n case 'day':\n case 'd':\n return n * d;\n\n case 'hours':\n case 'hour':\n case 'hrs':\n case 'hr':\n case 'h':\n return n * h;\n\n case 'minutes':\n case 'minute':\n case 'mins':\n case 'min':\n case 'm':\n return n * m;\n\n case 'seconds':\n case 'second':\n case 'secs':\n case 'sec':\n case 's':\n return n * s;\n\n case 'milliseconds':\n case 'millisecond':\n case 'msecs':\n case 'msec':\n case 'ms':\n return n;\n\n default:\n return undefined;\n }\n}\n/**\n * Short format for `ms`.\n *\n * @param {Number} ms\n * @return {String}\n * @api private\n */\n\n\nfunction fmtShort(ms) {\n if (ms >= d) {\n return Math.round(ms / d) + 'd';\n }\n\n if (ms >= h) {\n return Math.round(ms / h) + 'h';\n }\n\n if (ms >= m) {\n return Math.round(ms / m) + 'm';\n }\n\n if (ms >= s) {\n return Math.round(ms / s) + 's';\n }\n\n return ms + 'ms';\n}\n/**\n * Long format for `ms`.\n *\n * @param {Number} ms\n * @return {String}\n * @api private\n */\n\n\nfunction fmtLong(ms) {\n return plural(ms, d, 'day') || plural(ms, h, 'hour') || plural(ms, m, 'minute') || plural(ms, s, 'second') || ms + ' ms';\n}\n/**\n * Pluralization helper.\n */\n\n\nfunction plural(ms, n, name) {\n if (ms < n) {\n return;\n }\n\n if (ms < n * 1.5) {\n return Math.floor(ms / n) + ' ' + name;\n }\n\n return Math.ceil(ms / n) + ' ' + name + 's';\n}","module.exports = \"data:image/gif;base64,R0lGODlhIQAhAMQAAAAAAP///8DV5szd6+bu9TR5rkCBs0GBs02JuE2KuFmSvVqSvWaawmebwnOjx3Sjx4CrzIyz0Zq815m81qfF3KbE27PN4b/V5tnm8PL3+v///wAAAAAAAAAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQFAAAaACwAAAAAIQAhAAAF6mAgjmSQCRLUrBJFlHA8Dk9h3/giZbI8NLhg8GDplSjCZHDBM0KU0FsC03tGr4dmqXLtFpilgVdpUNwiJeA4aMBkzLaXSLzGtUUZhO0xctRvdyIWOC8ZfzaBAYM4RReHiYs4DgETf5BKAVY3EBgGZFSCUAEMOBAinUKXUASkN0WnnoCgilcDra4jqAWqUZRCrwGdvL1cv7mzkVEKAQRKwCPJUWgBcMbQa6CVzqFjCCMZsUkW0VfP5Ic2yyXV6Iiz33rtNs8kuuj0JW+P+DAZEXUK3hlh5ucKAn4DmVkoiANBBIEJexAYEHFECAA7\"","/**\n * This is the common logic for both the Node.js and web browser\n * implementations of `debug()`.\n *\n * Expose `debug()` as the module.\n */\nexports = module.exports = createDebug.debug = createDebug['default'] = createDebug;\nexports.coerce = coerce;\nexports.disable = disable;\nexports.enable = enable;\nexports.enabled = enabled;\nexports.humanize = require('ms');\n/**\n * The currently active debug mode names, and names to skip.\n */\n\nexports.names = [];\nexports.skips = [];\n/**\n * Map of special \"%n\" handling functions, for the debug \"format\" argument.\n *\n * Valid key names are a single, lower or upper-case letter, i.e. \"n\" and \"N\".\n */\n\nexports.formatters = {};\n/**\n * Previous log timestamp.\n */\n\nvar prevTime;\n/**\n * Select a color.\n * @param {String} namespace\n * @return {Number}\n * @api private\n */\n\nfunction selectColor(namespace) {\n var hash = 0,\n i;\n\n for (i in namespace) {\n hash = (hash << 5) - hash + namespace.charCodeAt(i);\n hash |= 0; // Convert to 32bit integer\n }\n\n return exports.colors[Math.abs(hash) % exports.colors.length];\n}\n/**\n * Create a debugger with the given `namespace`.\n *\n * @param {String} namespace\n * @return {Function}\n * @api public\n */\n\n\nfunction createDebug(namespace) {\n function debug() {\n // disabled?\n if (!debug.enabled) return;\n var self = debug; // set `diff` timestamp\n\n var curr = +new Date();\n var ms = curr - (prevTime || curr);\n self.diff = ms;\n self.prev = prevTime;\n self.curr = curr;\n prevTime = curr; // turn the `arguments` into a proper Array\n\n var args = new Array(arguments.length);\n\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i];\n }\n\n args[0] = exports.coerce(args[0]);\n\n if ('string' !== typeof args[0]) {\n // anything else let's inspect with %O\n args.unshift('%O');\n } // apply any `formatters` transformations\n\n\n var index = 0;\n args[0] = args[0].replace(/%([a-zA-Z%])/g, function (match, format) {\n // if we encounter an escaped % then don't increase the array index\n if (match === '%%') return match;\n index++;\n var formatter = exports.formatters[format];\n\n if ('function' === typeof formatter) {\n var val = args[index];\n match = formatter.call(self, val); // now we need to remove `args[index]` since it's inlined in the `format`\n\n args.splice(index, 1);\n index--;\n }\n\n return match;\n }); // apply env-specific formatting (colors, etc.)\n\n exports.formatArgs.call(self, args);\n var logFn = debug.log || exports.log || console.log.bind(console);\n logFn.apply(self, args);\n }\n\n debug.namespace = namespace;\n debug.enabled = exports.enabled(namespace);\n debug.useColors = exports.useColors();\n debug.color = selectColor(namespace); // env-specific initialization logic for debug instances\n\n if ('function' === typeof exports.init) {\n exports.init(debug);\n }\n\n return debug;\n}\n/**\n * Enables a debug mode by namespaces. This can include modes\n * separated by a colon and wildcards.\n *\n * @param {String} namespaces\n * @api public\n */\n\n\nfunction enable(namespaces) {\n exports.save(namespaces);\n exports.names = [];\n exports.skips = [];\n var split = (typeof namespaces === 'string' ? namespaces : '').split(/[\\s,]+/);\n var len = split.length;\n\n for (var i = 0; i < len; i++) {\n if (!split[i]) continue; // ignore empty strings\n\n namespaces = split[i].replace(/\\*/g, '.*?');\n\n if (namespaces[0] === '-') {\n exports.skips.push(new RegExp('^' + namespaces.substr(1) + '$'));\n } else {\n exports.names.push(new RegExp('^' + namespaces + '$'));\n }\n }\n}\n/**\n * Disable debug output.\n *\n * @api public\n */\n\n\nfunction disable() {\n exports.enable('');\n}\n/**\n * Returns true if the given mode name is enabled, false otherwise.\n *\n * @param {String} name\n * @return {Boolean}\n * @api public\n */\n\n\nfunction enabled(name) {\n var i, len;\n\n for (i = 0, len = exports.skips.length; i < len; i++) {\n if (exports.skips[i].test(name)) {\n return false;\n }\n }\n\n for (i = 0, len = exports.names.length; i < len; i++) {\n if (exports.names[i].test(name)) {\n return true;\n }\n }\n\n return false;\n}\n/**\n * Coerce `val`.\n *\n * @param {Mixed} val\n * @return {Mixed}\n * @api private\n */\n\n\nfunction coerce(val) {\n if (val instanceof Error) return val.stack || val.message;\n return val;\n}","import styled from 'styled-components';\n\nconst Button = styled.button.attrs(props => ({\n type: props.type || 'button',\n bgColor: props.bgColor || '#3479ae'\n}))`\nbackground-color: ${props => props.bgColor};\nborder: none;\ncolor: white;\npadding: 10px;\ntext-align: center;\ntext-decoration: none;\ndisplay: inline-block;\nfont-size: 0.9rem;\nfont-weight: normal;\nmargin: 2px 2px 2px 2px;\npadding-left: 20px;\npadding-right: 20px;\nborder-radius: 5px;\ncursor: pointer;\n &:hover {\n opacity: 0.9;\n }\n`\nexport default Button;"],"sourceRoot":""}