The Way To Write A Five

Obviously, international locations are totally different from each other in location, size, language, government, local weather, and way of life. Some international locations, nonetheless, share some shocking similarities. In this case, Brazil and the United States come to mind. Need to login or create account for share this matter. Hence it is clear that when an individual is selecting their profession their primary consideration is the compensation level.” The Guardian has a brief guide to getting your students debating.

They couldn’t wrap their thoughts around the truth that I was giving them choice in what their essay would look like. Other academics, like Chicago educator Ray Salazar, suggest that should you should teach a form and give college students a device, then train not the 5-paragraph essay however the classical Aristotelian argument structure. At least this can be a construction thatdoeslive in the true world. Now, you could be pondering, that’s properly and good for starting students, but what about superior students or professionals?

Instead, use scholarly reviews, articles, academic journals, books and web sites to support your arguments. As you have finished brainstorming topic ideas for comparing and contrasting, manage your points in accordance with the subject and highlight essential traits from both the matters. Look for motives, think about main themes and select factors which would possibly be central to the identification of both the matters.

In the absence of motion figures, a picture of the action figure or an image from the related property will suffice. The instruments involve a writing device like pen, a paper, and a cease watch off course. After getting all these instruments in your entry specify a peaceable place, the place you can sit and set yourself for writing. Stopwatch is a essential component, because it’ll allow you to in attaining your objective, and ultimately you will get trained to it. Related Readings articles, then share what they discovered with each other. These tools let a person discover typical mistakes fast and proper them using hints.

A tent is only waterproof if the perimeters are not touched. Totally disillusioned with the “vacation,” the pissed off family packs up immediately and drives home. Equipment failures may not appear very serious, however after campers encounter dangerous weather and annoying pests or wild animals, https://okawards.org/winners-2016/ these failures can finish any remaining hope for a peaceful trip. Nothing can dampen the excited anticipation of camping more than a darkish, rainy day. Even the most adventurous campers can lose some of their enthusiasm on the drive to the campsite if the skies are dreary and damp. After reaching their destination, campers must then “set up camp” within the downpour.

What they wished to argue—however complicated, authentic, or attention-grabbing it might need been—didn’t match the form. There might be instances in our students’ lives (e.g., standardized tests) once they might need to write formulaic essays that ask them to make a declare and show it over the course of a few well-structured paragraphs. However, if we’re going to organize students for these sorts of duties, then it’s important to show them how to essayer, or attempt, to grow new concepts and understandings in their writing. We should push past the five-paragraph method so youngsters aren’t doing formulaic writing.

College writing classes usually concentrate on showing college students how to create a relationship with their readers and think about their viewers’s wants. As a end result, the introduction’s job in a college essay just isn’t solely to seize readers’ consideration and encourage them to keep reading, but reveal why they should care about your subject. Find a approach to introduce the topic that conjures up this response in your audience. If you’re writing a private essay about your experiences in high school drama club, for example, you might open with a description of taking a bow with the solid at the end of opening night.

Trust me, you will develop a quick essay-grading capacity. After the hook, I ask students to add a sentence or two of applicable commentary in regards to the hook or about the prompt normally. Please check with my five paragraph essay organizer below. Then give the final proof that you have got met your ‘burden of proof’. You will select your font, margin dimension, spacing, and different elements primarily based in your citation format.

Use the last day to proofread and polish your writing. Each of the three examples supplied within the thesis will turn into the subject of a body paragraph. For the example thesis, you’d have physique paragraphs about ripening berries, summer time blossoming, and the blushing colour of the fruit.

120 comments

  1. The point of view of your article has taught me a lot, and I already know how to improve the paper on gate.oi, thank you. https://www.gate.io/uk/signup/XwNAU

  2. The point of view of your article has taught me a lot, and I already know how to improve the paper on gate.oi, thank you. https://www.gate.io/tr/signup/XwNAU

  3. Thanks a lot for giving everyone remarkably splendid possiblity to read articles and blog posts from this blog. It’s always so pleasant and also packed with amusement for me personally and my office peers to search the blog at minimum thrice a week to find out the fresh tips you will have. And lastly, I am also always motivated concerning the striking hints served by you. Certain 4 tips in this post are really the most efficient I have ever had.

  4. I wish to show some appreciation to this writer for bailing me out of this particular situation. Just after surfing around through the internet and coming across tips which are not powerful, I figured my life was gone. Living without the strategies to the difficulties you’ve solved as a result of your entire guide is a serious case, and those that would have adversely affected my entire career if I had not discovered your web blog. Your natural talent and kindness in playing with all the details was helpful. I am not sure what I would have done if I hadn’t come upon such a point like this. I can at this point relish my future. Thanks a lot so much for this specialized and amazing guide. I won’t think twice to propose your blog to any individual who requires guide on this problem.

  5. I wish to point out my appreciation for your kind-heartedness for individuals who really need help with this concern. Your personal commitment to getting the solution all-around had been especially valuable and has really enabled workers much like me to get to their desired goals. Your amazing warm and friendly facts denotes so much a person like me and still more to my fellow workers. With thanks; from all of us.

  6. Thanks a lot for providing individuals with remarkably brilliant possiblity to check tips from this blog. It can be very kind and also jam-packed with a lot of fun for me and my office friends to search your site a minimum of 3 times weekly to learn the fresh issues you have. Not to mention, I am also at all times fascinated for the sensational secrets you serve. Certain two areas on this page are undoubtedly the most beneficial I have had.

  7. I抎 need to check with you here. Which isn’t something I usually do! I get pleasure from reading a put up that can make people think. Additionally, thanks for allowing me to comment!

  8. I happen to be commenting to let you be aware of what a really good encounter my daughter obtained going through yuor web blog. She picked up a lot of things, with the inclusion of how it is like to possess a marvelous helping mindset to let other individuals without problems fully understand chosen complex subject matter. You undoubtedly exceeded our own desires. Thank you for coming up with such insightful, healthy, edifying and as well as easy tips on that topic to Sandra.

  9. I as well as my guys were actually going through the great secrets and techniques located on your website and so before long developed a terrible suspicion I never thanked you for those techniques. Those men were for this reason glad to see them and now have simply been taking pleasure in them. Appreciation for truly being considerably considerate and also for considering variety of smart subject matter most people are really wanting to understand about. Our own sincere apologies for not expressing gratitude to you sooner.

  10. I must show some appreciation to this writer just for bailing me out of such a matter. Because of looking through the world-wide-web and coming across thoughts which are not helpful, I believed my life was done. Being alive devoid of the answers to the difficulties you’ve sorted out by means of your good short post is a critical case, and the kind which may have in a wrong way affected my entire career if I hadn’t discovered your blog. That knowledge and kindness in playing with everything was useful. I don’t know what I would have done if I had not come upon such a solution like this. I can at this point relish my future. Thank you very much for the expert and amazing help. I won’t hesitate to recommend your blog to anyone who desires recommendations about this subject matter.

  11. I enjoy you because of every one of your work on this web page. Kim delights in going through investigation and it is obvious why. We learn all relating to the lively method you provide powerful thoughts through your website and as well attract contribution from some other people on the concept plus my daughter has always been discovering a lot. Have fun with the remaining portion of the new year. You are always performing a useful job.

  12. I as well as my pals appeared to be following the best secrets found on the website then instantly developed a terrible suspicion I had not expressed respect to the blog owner for those techniques. All the guys are already totally stimulated to study all of them and have in effect in actuality been making the most of them. Appreciation for indeed being considerably kind and then for choosing certain outstanding things most people are really needing to be informed on. My honest regret for not expressing appreciation to sooner.

  13. I must express some appreciation to the writer just for rescuing me from this type of problem. After checking through the search engines and meeting opinions which are not productive, I thought my entire life was over. Being alive without the presence of solutions to the problems you have resolved all through your guideline is a critical case, and the kind that might have negatively damaged my career if I hadn’t discovered your web site. Your main understanding and kindness in playing with every aspect was helpful. I am not sure what I would’ve done if I hadn’t encountered such a point like this. I can also at this moment relish my future. Thanks for your time very much for the expert and result oriented help. I will not think twice to refer the sites to any individual who needs assistance about this problem.

  14. Excellent post. Keep posting such kind of info on your site.
    Im really impressed by your blog.
    Hi there, You have performed an incredible job. I’ll definitely digg it and in my opinion recommend to my friends.
    I’m confident they will be benefited from this web site.

  15. An fascinating discussion is value comment. I believe that you must write more on this topic, it might not be a taboo subject but usually people are not sufficient to speak on such topics. To the next. Cheers

  16. A powerful share, I just given this onto a colleague who was doing a little bit analysis on this. And he actually purchased me breakfast because I found it for him.. smile. So let me reword that: Thnx for the deal with! But yeah Thnkx for spending the time to discuss this, I really feel strongly about it and love reading extra on this topic. If doable, as you develop into experience, would you mind updating your weblog with more particulars? It is highly useful for me. Huge thumb up for this blog submit!

  17. I’m often to blogging and i really appreciate your content. The article has actually peaks my interest. I am going to bookmark your site and hold checking for brand spanking new information.

  18. I’m usually to running a blog and i actually respect your content. The article has actually peaks my interest. I’m going to bookmark your website and maintain checking for brand spanking new information.

  19. Can I simply say what a relief to seek out someone who actually is aware of what theyre talking about on the internet. You definitely know the right way to bring a difficulty to gentle and make it important. Extra people must learn this and understand this side of the story. I cant believe youre no more well-liked because you undoubtedly have the gift.

  20. WONDERFUL Post.thanks for share..more wait .. ?

  21. Youre so cool! I dont suppose Ive learn anything like this before. So nice to search out somebody with some unique ideas on this subject. realy thank you for starting this up. this website is one thing that is wanted on the web, someone with a little originality. useful job for bringing one thing new to the web!

  22. I抎 should check with you here. Which isn’t something I often do! I take pleasure in studying a put up that will make people think. Also, thanks for permitting me to comment!

  23. This post is worth everyone’s attention. When can I
    find out more?

  24. Somebody necessarily assist to make critically posts I’d state.

    That is the very first time I frequented your web page and so far?
    I amazed with the analysis you made to create this actual
    publish extraordinary. Excellent task!
    powered by GoToTop.ee
    https://ru.gototop.ee/

  25. An impressive share, I simply given this onto a colleague who was doing a little bit evaluation on this. And he in truth bought me breakfast as a result of I found it for him.. smile. So let me reword that: Thnx for the treat! But yeah Thnkx for spending the time to discuss this, I really feel strongly about it and love studying more on this topic. If potential, as you develop into experience, would you mind updating your blog with more particulars? It’s extremely helpful for me. Large thumb up for this weblog publish!

  26. There’s noticeably a bundle to find out about this. I assume you made certain good points in options also.

  27. An fascinating discussion is value comment. I think that you must write more on this subject, it won’t be a taboo subject however usually persons are not sufficient to talk on such topics. To the next. Cheers

  28. You made some respectable factors there. I looked on the internet for the issue and located most people will go along with along with your website.

  29. Oh my goodness! an amazing article dude. Thanks However I am experiencing challenge with ur rss . Don抰 know why Unable to subscribe to it. Is there anybody getting identical rss drawback? Anybody who knows kindly respond. Thnkx

  30. Very well written article. It will be valuable to anybody who employess it, including myself. Keep doing what you are doing – can’r wait to read more posts.

  31. Once I initially commented I clicked the -Notify me when new comments are added- checkbox and now every time a comment is added I get 4 emails with the identical comment. Is there any manner you may take away me from that service? Thanks!

  32. I’m just commenting to let you understand what a really good encounter my friend’s princess went through visiting the blog. She picked up such a lot of pieces, including how it is like to have an ideal teaching style to have a number of people quite simply learn specific complex things. You truly surpassed our expectations. Many thanks for coming up with such precious, healthy, informative and unique thoughts on that topic to Ethel.

  33. Would you be focused on exchanging hyperlinks?

  34. A powerful share, I simply given this onto a colleague who was doing a little bit analysis on this. And he in actual fact bought me breakfast because I found it for him.. smile. So let me reword that: Thnx for the deal with! However yeah Thnkx for spending the time to debate this, I feel strongly about it and love studying extra on this topic. If doable, as you grow to be experience, would you mind updating your blog with extra particulars? It is highly helpful for me. Massive thumb up for this blog publish!

  35. Fabulous, what a weblog it is! This blog presents helpful data to
    us, keep it up.
    powered by GoToTop.ee
    https://ru.gototop.ee/

  36. WONDERFUL Post.thanks for share..extra wait .. ?

  37. Aw, this was a really nice post. In idea I would like to put in writing like this additionally ?taking time and precise effort to make an excellent article?however what can I say?I procrastinate alot and not at all seem to get one thing done.

  38. very good publish, i certainly love this website, carry on it

  39. It抯 arduous to seek out knowledgeable people on this matter, but you sound like you understand what you抮e talking about! Thanks

  40. Would you be focused on exchanging links?

  41. very nice put up, i actually love this website, carry on it

  42. Hello! I simply wish to give an enormous thumbs up for the great information you could have here on this post. I will be coming again to your weblog for more soon.

  43. It抯 hard to seek out knowledgeable folks on this subject, but you sound like you know what you抮e talking about! Thanks

  44. There’s noticeably a bundle to find out about this. I assume you made sure good points in features also.

  45. This actually answered my drawback, thank you!

  46. Hey! I just want to give an enormous thumbs up for the great info you’ve got right here on this post. I will probably be coming again to your weblog for extra soon.

  47. There are certainly a number of particulars like that to take into consideration. That is a nice point to deliver up. I provide the thoughts above as general inspiration however clearly there are questions just like the one you bring up the place crucial factor will likely be working in honest good faith. I don?t know if greatest practices have emerged around issues like that, however I’m certain that your job is clearly recognized as a good game. Both girls and boys feel the influence of just a second抯 pleasure, for the remainder of their lives.

  48. After research a number of of the blog posts on your website now, and I actually like your method of blogging. I bookmarked it to my bookmark web site checklist and can be checking again soon. Pls try my website as nicely and let me know what you think.

  49. I抎 should check with you here. Which isn’t something I often do! I get pleasure from studying a post that will make folks think. Also, thanks for allowing me to comment!

  50. Nice post. I be taught one thing more challenging on different blogs everyday. It can at all times be stimulating to learn content from different writers and apply a little something from their store. I抎 want to make use of some with the content on my weblog whether you don抰 mind. Natually I抣l offer you a link on your web blog. Thanks for sharing.

  51. I precisely wanted to appreciate you again. I’m not certain the things I could possibly have taken care of without the actual smart ideas shared by you on my concern. Certainly was a intimidating setting for me, however , looking at a new expert strategy you dealt with it made me to weep over contentment. Extremely thankful for this support and have high hopes you really know what a great job you have been putting in educating others via your website. Probably you haven’t met any of us.

  52. Youre so cool! I dont suppose Ive learn something like this before. So good to seek out any individual with some original thoughts on this subject. realy thanks for starting this up. this web site is one thing that is wanted on the net, someone with a bit originality. useful job for bringing something new to the internet!

  53. Spot on with this write-up, I really assume this web site wants much more consideration. I抣l in all probability be again to learn way more, thanks for that info.

  54. You made some first rate points there. I seemed on the web for the difficulty and found most people will associate with together with your website.

  55. Spot on with this write-up, I truly assume this website wants much more consideration. I抣l in all probability be once more to learn rather more, thanks for that info.

  56. I found your weblog website on google and verify a number of of your early posts. Continue to maintain up the very good operate. I simply extra up your RSS feed to my MSN Information Reader. Searching for ahead to studying more from you later on!?

  57. Hi, just required you to know I he added your site to my Google bookmarks due to your layout. But seriously, I believe your internet site has 1 in the freshest theme I??ve came across. It extremely helps make reading your blog significantly easier.

  58. After research a few of the blog posts on your web site now, and I really like your approach of blogging. I bookmarked it to my bookmark web site record and will likely be checking again soon. Pls check out my site as well and let me know what you think.

  59. Can I simply say what a reduction to seek out someone who really is aware of what theyre speaking about on the internet. You positively know how one can convey a difficulty to gentle and make it important. Extra folks need to read this and perceive this facet of the story. I cant believe youre not more well-liked since you undoubtedly have the gift.

  60. There’s noticeably a bundle to know about this. I assume you made sure nice points in features also.

  61. WONDERFUL Post.thanks for share..more wait .. ?

  62. Howdy! I simply want to give a huge thumbs up for the great info you have here on this post. I will likely be coming again to your blog for extra soon.

  63. Nice post. I study one thing more difficult on different blogs everyday. It is going to all the time be stimulating to learn content material from different writers and observe a little something from their store. I抎 want to use some with the content material on my weblog whether or not you don抰 mind. Natually I抣l give you a hyperlink in your web blog. Thanks for sharing.

  64. Would you be inquisitive about exchanging hyperlinks?

  65. I抎 have to examine with you here. Which isn’t something I normally do! I get pleasure from reading a post that will make people think. Also, thanks for allowing me to remark!

  66. It抯 laborious to seek out knowledgeable folks on this matter, but you sound like you know what you抮e talking about! Thanks

  67. I would like to show my love for your kindness for folks who have the need for help on that area. Your personal dedication to getting the solution along came to be extremely informative and has always empowered guys and women much like me to reach their aims. Your amazing warm and helpful recommendations means a great deal to me and substantially more to my peers. Many thanks; from each one of us.

  68. An interesting dialogue is worth comment. I believe that you need to write extra on this topic, it may not be a taboo subject but typically individuals are not enough to talk on such topics. To the next. Cheers

  69. Heya i am for the first time here. I came across this board and I to find It really useful & it helped me out much. I hope to give something again and help others like you aided me.

  70. I am in fact glad to glance at this website posts which contains tons of valuable
    information, thanks for providing such information.

  71. Very nice post. I just stumbled upon your blog and wanted to say that I have truly enjoyed browsing your blog posts. After all I’ll be subscribing to your rss feed and I hope you write again soon!

  72. You got a very great website, Gladiola I found it through yahoo.

  73. This really answered my problem, thank you!

  74. This is the right blog for anyone who wants to find out about this topic. You realize so much its almost hard to argue with you (not that I actually would want…HaHa). You definitely put a new spin on a topic thats been written about for years. Great stuff, just great!

  75. I think you have mentioned some very interesting points, regards for the post.

  76. You have brought up a very great details, thanks for the post.

  77. I am glad to be a visitor of this pure website! , appreciate it for this rare information! .

  78. SightCare supports overall eye health, enhances vision, and protects against oxidative stress. Take control of your eye health and enjoy the benefits of clear and vibrant eyesight with Sight Care. https://sightcarebuynow.us/

  79. Abdomax is a nutritional supplement using an 8-second Nordic cleanse to eliminate gut issues, support gut health, and optimize pepsinogen levels. https://abdomaxbuynow.us/

  80. EyeFortin is an all-natural eye-health supplement that helps to keep your eyes healthy even as you age. It prevents infections and detoxifies your eyes while also being stimulant-free. This makes it a great choice for those who are looking for a natural way to improve their eye health. https://eyefortinbuynow.us/

  81. GlucoBerry is one of the biggest all-natural dietary and biggest scientific breakthrough formulas ever in the health industry today. This is all because of its amazing high-quality cutting-edge formula that helps treat high blood sugar levels very naturally and effectively. https://glucoberrybuynow.us/

  82. Endopeak is a natural energy-boosting formula designed to improve men’s stamina, energy levels, and overall health. The supplement is made up of eight high-quality ingredients that address the underlying cause of declining energy and vitality. https://endopeakbuynow.us/

  83. EndoPump is a dietary supplement for men’s health. This supplement is said to improve the strength and stamina required by your body to perform various physical tasks. Because the supplement addresses issues associated with aging, it also provides support for a variety of other age-related issues that may affect the body. https://endopumpbuynow.us/

  84. Gut Vita™ is a daily supplement that helps consumers to improve the balance in their gut microbiome, which supports the health of their immune system. It supports healthy digestion, even for consumers who have maintained an unhealthy diet for a long time. https://gutvitabuynow.us/

  85. Sugar Defender is the #1 rated blood sugar formula with an advanced blend of 24 proven ingredients that support healthy glucose levels and natural weight loss. https://sugardefenderbuynow.us/

  86. Gorilla Flow prostate is an all-natural dietary supplement for men which aims to decrease inflammation in the prostate to decrease common urinary tract issues such as frequent and night-time urination, leakage, or blocked urine stream. https://gorillaflowbuynow.us/

  87. Herpagreens is a dietary supplement formulated to combat symptoms of herpes by providing the body with high levels of super antioxidants, vitamins

  88. LeanFlux is a revolutionary dietary formula specially crafted for individuals dealing with obesity and those on a weight loss journey. https://leanfluxbuynow.us/

  89. Excellent read, I just passed this onto a friend who was doing a little research on that. And he actually bought me lunch as I found it for him smile Therefore let me rephrase that: Thanks for lunch!

  90. What makes Sumatra Slim Belly Tonic even more unique is its inspiration from the beautiful Indonesian island of Sumatra. This supplement incorporates ingredients that are indigenous to this stunning island, including the exotic blue spirulina. How amazing is that? By harnessing the power of these rare and natural ingredients, Sumatra Slim Belly Tonic provides you with a weight loss solution that is both effective and enchanting.

  91. What makes Sumatra Slim Belly Tonic even more unique is its inspiration from the beautiful Indonesian island of Sumatra. This supplement incorporates ingredients that are indigenous to this stunning island, including the exotic blue spirulina. How amazing is that? By harnessing the power of these rare and natural ingredients, Sumatra Slim Belly Tonic provides you with a weight loss solution that is both effective and enchanting.

  92. SeroLean also boosts serotonin levels which can help keep hunger and emotional overeating at bay all day long. This product is a safe and effective way to enhance weight loss efforts and support overall health and wellness.

  93. Hi , I do believe this is an excellent blog. I stumbled upon it on Yahoo , i will come back once again. Money and freedom is the best way to change, may you be rich and help other people.

  94. Very interesting info !Perfect just what I was searching for! “If you could choose one characteristic that would get you through life, choose a sense of humor.” by Jennifer Jones.

  95. I am not positive where you are getting your info, however good topic. I must spend some time learning much more or working out more. Thanks for excellent info I was looking for this info for my mission.

  96. Pretty section of content. I just stumbled upon your site and in accession capital to assert that I acquire actually enjoyed account your blog posts. Any way I will be subscribing to your feeds and even I achievement you access consistently fast.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).version={})}(this,(function(exports){"use strict";function __awaiter(e,t,n,i){return new(n||(n=Promise))((function(s,a){function o(e){try{d(i.next(e))}catch(e){a(e)}}function r(e){try{d(i.throw(e))}catch(e){a(e)}}function d(e){var t;e.done?s(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(o,r)}d((i=i.apply(e,t||[])).next())}))}var Blocking;"function"==typeof SuppressedError&&SuppressedError,function(e){e.PENDING="pending",e.NONE="none",e.BLOCKED="blocked",e.ALLOWED="allowed"}(Blocking||(Blocking={}));class Adblock{constructor(e){this.state=Blocking.PENDING,this._mocked=!1,e?(this.state=e,this._mocked=!0):this.state=Blocking.ALLOWED}inject(){return __awaiter(this,void 0,void 0,(function*(){}))}get isBlocked(){return this.state===Blocking.BLOCKED}get isAllowed(){return this.state===Blocking.ALLOWED}toContext(){return{user_has_ad_blocker:null,is_ad_blocked:null}}}const OBFUSCATING_BASE_64_PREFIX="UxFdVMwNFNwN0wzODEybV",encode=e=>OBFUSCATING_BASE_64_PREFIX+btoa(unescape(encodeURIComponent(JSON.stringify(e))));function decode$1(e){return JSON.parse(decodeURIComponent(escape(atob(e.replace(OBFUSCATING_BASE_64_PREFIX,"")))))}var version="0.2.7";const APP_ENV="production",TRACKING_DOMAIN="https://click-euw1.bodis.com/",SALES_JS_URL="https://parking.bodiscdn.com/js/inquiry.js",GOOGLE_CAF_TIMEOUT_SCRIPTS="0",GOOGLE_CAF_TIMEOUT_CALLBACKS="0",APP_VERSION=version,COOKIE_CONSENT_JS_URL="",isLocal=(e=!0)=>"production"!==APP_ENV;function log(...e){}const FIND_DOMAIN_URL="_fd",getFindDomain=()=>{const e=`/${FIND_DOMAIN_URL}${window.location.search}`;return fetch(e,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"}}).then((e=>e.text())).then(decode$1)};var ZeroClickReasons;!function(e){e.CAF_TIMEDOUT="caf_timedout",e.CAF_ADLOAD_FAIL_RS="caf_adloadfail_rs",e.CAF_ADLOAD_FAIL_ADS="caf_adloadfail_ads",e.DISABLED_GB="disabled_gb",e.DISABLED_AB="disabled_ab",e.DISABLED_DS="disabled_ds",e.AD_BLOCKED="ad_blocked",e.PREFERRED="preferred"}(ZeroClickReasons||(ZeroClickReasons={}));const getZeroClick=e=>__awaiter(void 0,void 0,void 0,(function*(){const t=Object.assign(Object.assign({},e),{type:"zc_fetch"});return fetch("/_zc",{method:"POST",body:JSON.stringify({signature:encode(t)}),headers:{Accept:"application/json","Content-Type":"application/json"}}).then((e=>__awaiter(void 0,void 0,void 0,(function*(){try{return decode$1(yield e.text())}catch(e){return{}}}))))})),waiter=(e,t)=>new Promise((n=>{t(e),e<=0&&n();let i=e;const s=()=>{i>0?(i-=1,t(i),setTimeout(s,1e3)):n()};s()})),decode=()=>JSON.parse(atob(window.park||""));var PAGE_STYLES='* {\n font-smoothing: antialiased;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\nhtml, body {\n width: 100%;\n margin: 0;\n}\n\nhtml {\n background-color: #2B2B2B;\n height: 100%;\n}\n\nbody {\n min-height: 90%;\n font-family: Arial, sans-serif;\n letter-spacing: 1.2px;\n color: #ccc;\n text-align: center;\n}\n\n/* App Target - This starts hidden until we apply a class to "activate" it */\n\n#target {\n opacity: 0;\n visibility: hidden;\n}\n\n/* Status Messages - These are displayed when we are not rendering ad blocks or Related Search */\n\n#pk-status-message {\n height: 100vh;\n width: 100%;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n}\n\n/* Sales Box - Default State */\n\n#sales-box {\n display: block;\n width: 100%;\n padding: 3px;\n text-align: center;\n text-decoration: none;\n color: #8EABC0;\n}\n\n#sales-box a {\n display: block;\n width: 100%;\n text-decoration: inherit;\n color: #8EABC0;\n cursor: pointer;\n}\n\n/* Sales Box - Highlighted State */\n\n#sales-box.is-highlighted {\n position: relative;\n z-index: 1;\n background: #032438 linear-gradient(to top, #044368 0%, #000 100%);\n box-shadow: 0 0 15px 0 #000;\n border-bottom: 3px solid #262626;\n}\n\n#sales-box.is-highlighted a {\n line-height: 1.3;\n display: inline-block;\n font-size: 18px;\n color: #fff;\n text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.5);\n background: none;\n}\n\n/* Ellipsis Loader */\n\n.pk-loader {\n display: inline-block;\n position: relative;\n width: 80px;\n height: 80px;\n}\n\n.pk-loader div {\n position: absolute;\n top: 33px;\n width: 13px;\n height: 13px;\n border-radius: 50%;\n background: #ccc;\n animation-timing-function: cubic-bezier(0, 1, 1, 0);\n}\n\n.pk-loader div:nth-child(1) {\n left: 8px;\n animation: pk-anim-1 0.6s infinite;\n}\n\n.pk-loader div:nth-child(2) {\n left: 8px;\n animation: pk-anim-2 0.6s infinite;\n}\n\n.pk-loader div:nth-child(3) {\n left: 32px;\n animation: pk-anim-2 0.6s infinite;\n}\n\n.pk-loader div:nth-child(4) {\n left: 56px;\n animation: pk-anim-1 0.6s infinite;\n animation-direction: reverse;\n}\n\n.pk-loader-text {\n position: fixed;\n font-size: 12px;\n right: 20px;\n bottom: 20px;\n font-weight: lighter;\n}\n\n/* Utilities */\n\n.pk-message-title {\n font-size: 2em;\n font-weight: bold;\n}\n\n.pk-page-ready {\n opacity: 1 !important;\n visibility: visible !important;\n}\n\n@media only screen and (max-width: 600px) {\n .hidden-xs {\n opacity: 0;\n visibility: hidden;\n }\n}\n\n/* Animation */\n\n@keyframes pk-anim-1 {\n 0% {\n transform: scale(0);\n }\n 100% {\n transform: scale(1);\n }\n}\n\n@keyframes pk-anim-2 {\n 0% {\n transform: translate(0, 0);\n }\n 100% {\n transform: translate(24px, 0);\n }\n}\n';const APP_TARGET="#target",MESSAGE_SELECTOR="#pk-status-message",PAGE_READY_CLASS="pk-page-ready",MESSAGE_TEMPLATE='
';class Renderer{constructor(e){this._domIsReady=!1,this.revealPage=()=>{this.domNode&&this.domNode.classList.add(PAGE_READY_CLASS)},this.injectMetaDescription=e=>{if(!e||0===e.length)return;window.document.title=e;const t=document.createElement("meta");t.setAttribute("name","description"),t.setAttribute("content",`See relevant content for ${e}`),document.getElementsByTagName("head")[0].appendChild(t)},this.domNode=document.querySelector(e)}get domIsReady(){return this._domIsReady}set domIsReady(e){this._domIsReady=e,e&&this.injectStyles(PAGE_STYLES)}message(e,t=""){if(this.injectHTML(MESSAGE_TEMPLATE),this.domNode){const t=this.domNode.querySelector(MESSAGE_SELECTOR);t&&(t.innerHTML=e)}t&&this.injectMetaDescription(t)}salesBanner(e){if(!e)return;const{href:t,position:n,message:i,theme:s}=e,a=document.createElement("div"),o=n||"",r="HIGHLIGHT"===s?"is-highlighted":"";a.innerHTML=t?`\n
\n ${i}\n
\n `:`\n
\n ${i}\n
\n `,"BOTTOM"===n?(a.style.marginTop="30px",document.body.appendChild(a)):document.body.prepend(a)}loading(e){let t="a few";e>0&&(t=`${e}`),this.message(`\n
\n
\n
\n
\n
\n
\n \n `)}adBlockMessage(){this.message("\n

Ad block detected

\n Please disable your ad blocker and reload the page.\n ")}errorParkingUnavailable(){this.message("\n

An Error Occurred

\n

Parking is currently unavailable. We'll be right back.

\n ")}errorParkingServicesDisabled(){this.message("\n

An Error Occurred

\n

Services for this domain name have been disabled.

\n ")}errorParkingNoSponsors(e){this.message(`\n
\n No sponsors\n
\n \n ${window.location.hostname} currently does not have any sponsors for you.\n \n `,e)}imprint(e){if(!e)return;const t=document.querySelector("#imprint-text");t&&(t.innerHTML=e.replace(/(?:\r\n|\r|\n)/g,"
"))}injectStyles(e){if(!e)return;const t=document.createElement("style");t.innerHTML=e.toString(),document.head.appendChild(t)}injectScript(e){if(!e)return;const t=document.createElement("script");t.type="text/javascript",t.src=e,document.body.appendChild(t)}injectJS(js){js&&0!==js.length&&eval(js)}injectHTML(e){this.domNode?(e&&(this.domNode.innerHTML=e),this.domIsReady=!0):(this.domIsReady=!1,console.error("An error occurred when trying to render this page. DOM node not found."))}prerender(e){this.injectMetaDescription(e.domain),this.injectHTML(e.html)}template(e){var t;this.domIsReady||this.prerender(e),this.injectStyles(e.stylesheet),this.imprint(e.imprint),this.salesBanner(e.salesBanner),this.injectJS(e.javascript),null===(t=e.scripts)||void 0===t||t.forEach((e=>{this.injectScript(e)}))}}const Render=new Renderer(APP_TARGET);var Type;!function(e){e[e.Failed=0]="Failed",e[e.Disabled=1]="Disabled",e[e.Redirect=2]="Redirect",e[e.Parking=3]="Parking",e[e.Sales=4]="Sales"}(Type||(Type={}));let State$2=class{get trackingType(){return this._trackingType}set trackingType(e){this._trackingType=e}get track(){return!!this.trackingType}};class Disabled extends State$2{constructor(){super(...arguments),this.type=Type.Disabled}static build(e,t){let n;switch(t===Blocking.BLOCKED&&(n="adblocker"),e.cannotPark){case"disabled_mr":case"disabled_rc":n=e.cannotPark}if(n){const t=new Disabled;return t.reason=n,t.domain=e.domainName,t}}get message(){switch(this.reason){case"adblocker":return"

Ad block detected

Please disable your ad blocker and reload the page.";case"disabled_mr":return`

Invalid URL

Referral traffic for ${this.domain} does not meet requirements.`;default:return`

No sponsors

${this.domain} currently does not have any sponsors for you.`}}get trackingType(){switch(this.reason){case"adblocker":return"ad_blocked_message";case"disabled_mr":return"invalid_referral";case"disabled_rc":return"revenue_cap_reached";default:return"no_sponsors_message"}}toContext(){return{cannotPark:this.reason}}}class Failed extends State$2{constructor(){super(...arguments),this.type=Type.Failed}static cannotPark({cannotPark:e}){switch(e){case"disabled_b":case"prohibited_ua":case"disabled_fr":case"revenue_cap_reached":case"disabled_mr":case"disabled_rc":case"disabled_cp":case"invalid_domain":{const t=new Failed;return t.reason=e,t}}}static noSponsors({cannotLoadAds:e}){if(e){const e=new Failed;return e.reason="no_sponsors",e}}static fromError(e){const t=new Failed;return t.reason="js_error",t.error=e,t}get track(){return!!this.trackingType}get message(){switch(this.reason){case"disabled_fr":case"disabled_rc":case"no_sponsors":return`\n

No Sponsors

\n

${this.domain} currently does not have any sponsors for you.

`;case"disabled_mr":return`\n

Invalid URL

\n

Referral traffic for ${this.domain} does not meet requirements.

`;case"js_error":return"\n

An Error Occurred

\n

Parking is currently unavailable. We'll be right back.

\n ";default:return"\n

An Error Occurred

\n

Services for this domain name have been disabled.

\n "}}get trackingType(){switch(this.reason){case"disabled_rc":return"revenue_cap_reached";case"disabled_mr":return"invalid_referral";case"adblock":return"ad_blocked_message";case"no_sponsors":return"no_sponsors_message"}}get domain(){return window.location.hostname}toContext(){return{cannotPark:this.reason}}}function unpackPHPArrayObject(e,t){const n=e[t];if(n&&!Array.isArray(n))return n}class Parking extends State$2{constructor(){super(...arguments),this.type=Type.Parking}static build(e,t){const n=new Parking;n.domain=e.domainName,n.html=e.template,n.scripts=e.scripts||[],n.javascript=e.inlineJs,n.stylesheet=e.styles,n.imprint=e.imprintText;const i=unpackPHPArrayObject(e,"salesSettings"),s=(null==i?void 0:i.status)&&"NOT_FOR_SALE"!==(null==i?void 0:i.status);if(s){const{status:e,location:t,message:s,link:a,type:o}=i;n.salesBanner={message:s,href:a,position:t,theme:o}}return t.wantsToServeAds?n.trackingType="ctr":s&&window.location.pathname.startsWith("/listing")?n.trackingType="sales":n.trackingType="visit",n}toContext(){return{}}}class Sales extends State$2{constructor(){super(...arguments),this.type=Type.Sales}static build(e){const t=unpackPHPArrayObject(e,"salesSettings");if(!t)return;const{status:n}=t;return["NOT_FOR_SALE","EXTERNAL_MARKET","URL"].includes(n)?void 0:window.location.pathname.startsWith("/listing")?new Sales:void 0}toContext(){return{}}get trackingType(){return"sales"}init(e){window.context=e;const t=document.createElement("script");t.type="text/javascript",t.src=SALES_JS_URL,document.head.append(t)}}class Redirect extends State$2{constructor(){super(...arguments),this.type=Type.Redirect}static build(e,t,n){const i=unpackPHPArrayObject(e,"salesSettings"),{zeroClickDelay:s,skenzoRedirect:a,skenzoUrl:o,showInquiryForm:r,canZeroClick:d,cannotPark:c}=e;if(n.cannotLoadAds&&n.wantsToServeAds)return Redirect.toState(n.noAdsRedirectUrl,"no_ads_redirect");if(d&&(null==t?void 0:t.reason)){if(null==t?void 0:t.redirect)return Redirect.toState(t.redirect,"zc_redirect",s);if(a&&o)return Redirect.toState(o,"skenzo_redirect")}if(window.location.pathname.startsWith("/listing")){if("EXTERNAL_MARKET"===(null==i?void 0:i.status)&&(null==i?void 0:i.external))return Redirect.toState(i.external,"sales");if("URL"===(null==i?void 0:i.status)&&(null==i?void 0:i.link))return Redirect.toState(i.link,"sales")}return(null==i?void 0:i.status)&&"NOT_FOR_SALE"!==(null==i?void 0:i.status)&&(n.cannotLoadAds||n.cannotLoadAds&&!d||r)?Redirect.toState(`${window.location.origin}/listing`):void 0}static toState(e,t,n=0){const i=new Redirect;return i.url=e,i.delay=n,i.trackingType=t,i}toContext(){return{}}}const browserState=()=>{var e,t,n,i,s;const{screen:{width:a,height:o},self:r,top:d,matchMedia:c,opener:l}=window,{documentElement:{clientWidth:h,clientHeight:u}}=document;let p;try{p=(new Date).getTimezoneOffset()/60*-1}catch(e){p=null}return{popup:!(!l||l===window),timezone_offset:p,user_preference:null===(e=null===Intl||void 0===Intl?void 0:Intl.DateTimeFormat())||void 0===e?void 0:e.resolvedOptions(),user_using_darkmode:Boolean(c&&c("(prefers-color-scheme: dark)").matches),user_supports_darkmode:Boolean(c),window_resolution:{width:null!=h?h:0,height:null!=u?u:0},screen_resolution:{width:null!=a?a:0,height:null!=o?o:0},frame:d===r?null:{innerWidth:null!==(t=null==r?void 0:r.innerWidth)&&void 0!==t?t:0,innerHeight:null!==(n=null==r?void 0:r.innerHeight)&&void 0!==n?n:0,outerWidth:null!==(i=null==r?void 0:r.outerWidth)&&void 0!==i?i:0,outerHeight:null!==(s=null==r?void 0:r.outerHeight)&&void 0!==s?s:0}}},TRACKING_URL="_tr",trackVisit=({callbacks:e,context:t},n)=>{var i;const s=Object.assign({ad_loaded_callback:null==e?void 0:e.adLoadedCallback,app_version:version,caf_timed_out:null==e?void 0:e.cafTimedOut,caf_loaded_ms:null==e?void 0:e.cafLoadedMs,channel:null===(i=null==t?void 0:t.pageOptions)||void 0===i?void 0:i.channel,fd_server_datetime:t.fd_server_datetime,fd_server:t.fd_server,flex_rule:t.flex_rule,host:t.host,ip:t.ip,js_error:t.js_error,no_ads_redirect:t.noAdsRedirect,page_headers:t.page_headers,page_loaded_callback:null==e?void 0:e.pageLoadedCallback,page_method:t.page_method,page_request:t.page_request,page_time:t.page_time,page_url:t.page_url,reportable_channel:t.reportableChannel,template_id:t.templateId,type:n,user_has_ad_blocker:t.user_has_ad_blocker,uuid:t.uuid,zeroclick:t.zeroClick},browserState());fetch(`/${TRACKING_URL}`,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},body:JSON.stringify({signature:encode(s)})})};var State$1;!function(){if(!window.CustomEvent){function e(e,t){t=t||{bubbles:!1,cancelable:!1,detail:void 0};const n=document.createEvent("CustomEvent");return n.initCustomEvent(e,t.bubbles,t.cancelable,t.detail),n}e.prototype=window.Event.prototype,window.CustomEvent=e}}(),function(e){e[e.Pending=0]="Pending",e[e.Loaded=1]="Loaded",e[e.Failed=2]="Failed"}(State$1||(State$1={}));class Provider{constructor(e){this.timeoutSeconds=5,this.handlePixelEvent=e=>{switch(this.state){case State$1.Failed:break;case State$1.Pending:setTimeout((()=>this.handlePixelEvent(e)),100);break;case State$1.Loaded:this.onPixelEvent(e)}},this.watch=()=>{switch(this.state){case State$1.Loaded:case State$1.Failed:break;case State$1.Pending:this.isLoaded()?this.state=State$1.Loaded:this.isTimedOut()?this.state=State$1.Failed:setTimeout(this.watch,50)}},this.config=e,this.identifier&&this.identifier.length>0?(this.state=State$1.Pending,this.timeoutAt=new Date,this.timeoutAt.setSeconds(this.timeoutAt.getSeconds()+this.timeoutAfter()),this.injectPixel()):this.state=State$1.Failed}get identifier(){var e;return null===(e=this.config)||void 0===e?void 0:e.key}get pixelEvents(){var e;return null===(e=this.config)||void 0===e?void 0:e.pixel_events}injectPixel(){this.injectedAt||(this.injectedAt=new Date,this.inject(),this.watch())}inject(){const e=document.createElement("script");e.text=this.script,document.head.appendChild(e)}isTimedOut(){return+new Date>=+this.timeoutAt}timeoutAfter(){return this.timeoutSeconds}selectPixelEvent(e){if(Array.isArray(this.pixelEvents))return this.pixelEvents.find((t=>"term-view"===t.trigger&&"visit"===e||(!(!["term-click","ad-view"].includes(t.trigger)||"ctr"!==e)||"ad-click"===t.trigger&&"click"===e)))}}class Facebook extends Provider{get script(){return`!function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window, document,'script','https://connect.facebook.net/en_US/fbevents.js');fbq('init', '${this.identifier}');`}onPixelEvent(e){const t=this.selectPixelEvent(e);t&&(t.custom?window.fbq("trackCustom",t.event):window.fbq("track",t.event))}isLoaded(){return!!window.fbq}}class Outbrain extends Provider{get script(){return`!function(_window, _document) {var OB_ADV_ID = '${this.identifier}';if (_window.obApi) {var toArray = function(object) {return Object.prototype.toString.call(object) === '[object Array]' ? object : [object];};_window.obApi.marketerId = toArray(_window.obApi.marketerId).concat(toArray(OB_ADV_ID));return;}var api = _window.obApi = function() {api.dispatch ? api.dispatch.apply(api, arguments) : api.queue.push(arguments);};api.version = '1.1';api.loaded = true;api.marketerId = OB_ADV_ID;api.queue = [];var tag = _document.createElement('script');tag.async = true;tag.src = '//amplify.outbrain.com/cp/obtp.js';tag.type = 'text/javascript';var script = _document.getElementsByTagName('script')[0];script.parentNode.insertBefore(tag, script);}(window, document);`}onPixelEvent(e){const t=this.selectPixelEvent(e);t&&window.obApi("track",t.event)}isLoaded(){return!!window.obApi}}class Revcontent extends Provider{get script(){return""}inject(){const e=document.createElement("script");e.src="https://assets.revcontent.com/master/rev.js",document.head.appendChild(e)}onPixelEvent(e){const t=this.selectPixelEvent(e);t&&window.rev("event",t.event)}isLoaded(){return!!window.rev}}class Taboola extends Provider{get script(){return"window._tfa = window._tfa || [];!function (t, f, a, x) {if (!document.getElementById(x)) {t.async = 1;t.src = a;t.id=x;f.parentNode.insertBefore(t, f);}}(document.createElement('script'),document.getElementsByTagName('script')[0],'//cdn.taboola.com/libtrc/unip/1451879/tfa.js','tb_tfa_script');"}onPixelEvent(e){const t=this.selectPixelEvent(e);t&&window._tfa.push({notify:"event",name:t.event,id:t.pixel_id})}isLoaded(){return Array.isArray(window._tfa)}}class Tiktok extends Provider{constructor(e,t){super(e),this.useAltTikTokEventsForAdsPlatformUser=t}get script(){return`!function (w, d, t) {w.TiktokAnalyticsObject=t;var ttq=w[t]=w[t]||[];ttq.methods=["page","track","identify","instances","debug","on","off","once","ready","alias","group","enableCookie","disableCookie"],ttq.setAndDefer=function(t,e){t[e]=function(){t.push([e].concat(Array.prototype.slice.call(arguments,0)))}};for(var i=0;i{const{detail:{type:t}}=e;switch(t){case"visit":case"ctr":case"click":this.providers.forEach((e=>e.handlePixelEvent(t)))}},this.providers=[new Facebook(e.facebook),new Tiktok(e.tiktok,e.useAltTikTokEventsForAdsPlatformUser),new Taboola(e.taboola),new Revcontent(e.revcontent),new Outbrain(e.outbrain)]}listenForEvents(){document.addEventListener("pixel",(e=>{this.onPixelEvent(e)}));window.onmessage=e=>{const{origin:t,data:n}=e;ALLOWED_ORIGINS.includes(t)&&(null==n?void 0:n.startsWith(MESSAGE_PREFIX))&&window.location.search.startsWith(ADS_PARAM$1)&&document.dispatchEvent(new CustomEvent("pixel",{detail:{type:"click"}}))}}dispatchEvent(e){document.dispatchEvent(new CustomEvent("pixel",{detail:e}))}}class URLSearchParamsPolyfill{constructor(e){this.params={},e&&e.slice(1).split("&").forEach((e=>{const[t,n]=e.split("=").map(decodeURIComponent);this.params[t]=n}))}has(e){return Object.keys(this.params).includes(e)}append(e,t){this.params[e]=t}toString(){return Object.keys(this.params).map((e=>`${encodeURIComponent(e)}=${encodeURIComponent(this.params[e])}`)).join("&")}}const parse=()=>"function"==typeof window.URLSearchParams?new URLSearchParams(window.location.search):new URLSearchParamsPolyfill(window.location.search);var State;!function(e){e[e.Pending=0]="Pending",e[e.Loaded=1]="Loaded",e[e.Failure=2]="Failure",e[e.TimedOut=3]="TimedOut",e[e.Errored=4]="Errored"}(State||(State={}));const CAF_SCRIPT_SRC="https://www.google.com/adsense/domains/caf.js",TIMEOUT_SCRIPTS=Number(GOOGLE_CAF_TIMEOUT_SCRIPTS),TIMEOUT_CALLBACKS=Number(GOOGLE_CAF_TIMEOUT_CALLBACKS);class StateMachine{constructor(){this.state=State.Pending}transitionTo(e){this.state=e}transitionFromPendingTo(e){this.done||(this.state=e)}get loaded(){return this.state===State.Loaded}get timedOut(){return this.state===State.TimedOut}get done(){return this.state!==State.Pending}}class Ads{constructor(e,t){this.state={script:new StateMachine,blocks:new StateMachine},this.blocksLoaded=[],this.injectScriptTags=()=>__awaiter(this,void 0,void 0,(function*(){return new Promise((e=>{const t=document.createElement("script");t.type="text/javascript",t.src=CAF_SCRIPT_SRC,t.addEventListener("load",(()=>e(!0))),t.addEventListener("error",(()=>e(!1))),document.body.appendChild(t),TIMEOUT_SCRIPTS>0&&setTimeout((()=>e(!1)),TIMEOUT_SCRIPTS)}))})),this.onPageLoaded=(e,t)=>{if(this.pageLoaded={requestAccepted:e,status:t},this.state.script.done)return;const n=null==t?void 0:t.error_code;n?(this.state.script.transitionTo(State.Failure),this.failureReason=`caf_pageloaderror_${n}`):this.state.script.transitionTo(State.Loaded)},this.onBlockLoaded=(e,t,n,i)=>{this.blocksLoaded.push({containerName:e,adsLoaded:t,isExperimentVariant:n,callbackOptions:i}),this.state.blocks.done||(t?this.state.blocks.transitionTo(State.Loaded):this.blocksLoaded.length>=this.blocks.length&&(this.state.blocks.transitionTo(State.Failure),this.failureReason=`caf_adloadfail_${e}`))},this.onTimeout=()=>{this.state.script.transitionFromPendingTo(State.TimedOut),this.state.blocks.transitionFromPendingTo(State.TimedOut)},this.blocks=e,this.options=t}get loaded(){return this.state.script.loaded&&!this.blocksLoaded.map((e=>e.adsLoaded)).includes(!1)}waitForBlocks(){return __awaiter(this,void 0,void 0,(function*(){return new Promise((e=>{const t=()=>{const n=performance.now();if(this.state.blocks.done)return this.cafLoadTime=Math.round(n-this.cafStartTime),void e();const i=this.blocksLoaded.map((e=>e.adsLoaded));i.includes(!1)||i.length>=this.blocks.length?e():setTimeout(t,50)};t()}))}))}inject(){return __awaiter(this,void 0,void 0,(function*(){try{const e=yield this.injectScriptTags();return this.cafStartTime=performance.now(),e&&void 0!==window.google?(new window.google.ads.domains.Caf(Object.assign(Object.assign({},this.options),{pageLoadedCallback:this.onPageLoaded,adLoadedCallback:this.onBlockLoaded}),...this.blocks),TIMEOUT_CALLBACKS>0&&setTimeout(this.onTimeout,TIMEOUT_CALLBACKS),yield new Promise((e=>{const t=()=>{this.state.script.done?e():setTimeout(t,10)};t()}))):void this.state.script.transitionTo(State.Failure)}catch(e){return void(this.error=e.toString())}}))}toCallbacks(){return{adLoadedCallback:this.blocksLoaded.slice(-1)[0],pageLoadedCallback:this.pageLoaded,cafTimedOut:this.state.script.timedOut||this.state.blocks.timedOut,cafLoadedMs:this.cafLoadTime,googleAdsFailure:!!this.failureReason}}toContext(){const e={cafScriptWasLoaded:this.state.script.loaded,cafScriptLoadTime:this.cafLoadTime,callbacks:this.toCallbacks};return this.error&&(e.js_error={message:this.error}),this.state.script.loaded||(e.zeroclick={reason:"googleAdsFailure"}),e}mockFailedState(){this.state.blocks.transitionTo(State.Failure),this.state.script.transitionTo(State.Failure)}}class TagManager{constructor(e){this.injected=!1,this.identifier=e}inject(){if(this.injected)return;if(!this.identifier)return;if("TEST"===this.identifier)return;const e=document.createElement("script");e.setAttribute("src",`https://www.googletagmanager.com/gtag/js?id=${this.identifier}`),document.head.appendChild(e),this.track(),this.injected=!0}track(){this.push("js",new Date),this.push("config",this.identifier)}push(e,t){window.dataLayer||(window.dataLayer=[]),window.dataLayer.push(arguments)}}const ADS_PARAM="?caf",ADS_TRACKING_URL="_tr",BLOCKS_TYPE="ads",BLOCKS_CONTAINER="rs",KNOWN_CAF_PARAMS=["caf","query","afdToken","pcsa","nb","nm","nx","ny","is","clkt"];class Google{static build({pageOptions:e,preferredLanguage:t,blocks:n,googleAnalytics:i,reportableChannel:s},a,o){let r={};e&&(r=Object.assign({},e),r.hl||(r.hl=t),s&&(r.channel=r.channel.concat(`,pid-bodis-gcontrol${s}`)));let d=null==e?void 0:e.resultsPageBaseUrl;return new Google(a.uuid,n,r,i,d)}constructor(e,t,n,i,s){this._blocks=t,this._pageOptions=n,this.uuid=e,this.baseURL=s,this.ads=new Ads(this.blocks,this.pageOptions),this.tagManager=new TagManager(i)}injectTagManager(){this.tagManager.inject()}injectAds(){return __awaiter(this,void 0,void 0,(function*(){yield this.ads.inject()}))}waitForBlocks(){return __awaiter(this,void 0,void 0,(function*(){return this.ads.waitForBlocks()}))}get blocks(){return(this._blocks||[]).filter((e=>this.wantsToServeAds?e.type===BLOCKS_TYPE:e.container===BLOCKS_CONTAINER)).map((e=>{const t=parse(),n=Object.assign({},e);return n.resultsPageBaseUrl=`${this.baseURL}${ADS_PARAM}&${t.toString()}`,this.wantsToServeAds&&(t.append("click","true"),t.append("session",this.uuid),n.clicktrackUrl=`${TRACKING_DOMAIN}${ADS_TRACKING_URL}/?${t.toString()}`),n}))}get pageOptions(){const e=Object.assign({},this._pageOptions);return Object.keys(this._pageOptions).forEach((t=>{t.startsWith("bodis")&&delete e[t]})),e}get cannotLoadAds(){return!this.ads.loaded}get wantsToServeAds(){return window.location.search.startsWith(ADS_PARAM)}get adsMode(){return this.ads.loaded&&this.wantsToServeAds}get adsReady(){return this.wantsToServeAds&&!this.cannotLoadAds}get noAdsRedirectUrl(){const e=new URLSearchParams(window.location.search);return KNOWN_CAF_PARAMS.forEach((t=>e.delete(t))),`${window.location.origin}?${e.toString()}`}get callbacks(){return this.ads.toCallbacks()}toContext(){return Object.assign({blocks:this.blocks,pageOptions:this.pageOptions},this.ads.toContext())}}class CookieConsentManager{constructor(){this.injectScriptTag=()=>__awaiter(this,void 0,void 0,(function*(){return new Promise((e=>{const t=document.createElement("script");t.setAttribute("src",COOKIE_CONSENT_JS_URL),t.addEventListener("load",(()=>this.awaitConsent(e))),t.addEventListener("error",(()=>e(!1))),document.head.appendChild(t)}))}))}inject(){return __awaiter(this,void 0,void 0,(function*(){this.injected||!COOKIE_CONSENT_JS_URL||isLocal()||(this.injected=yield this.injectScriptTag())}))}awaitConsent(e){let t=0;const n=setInterval((()=>{t+=1,20===t&&(clearInterval(n),e(!0)),void 0!==window.__tcfapi&&(window.addEventListener("ConsentActivity",(t=>{const{detail:{status:n}}=t;n&&e(!0)})),clearInterval(n))}),50)}}class App{main(){var e;return __awaiter(this,void 0,void 0,(function*(){if(this.parkResponse=decode(),this.findDomainResponse=yield getFindDomain(),!this.findDomainResponse)throw new Error("Domain failed to load.");this.pixels=Pixels.build(this.findDomainResponse),null===(e=this.pixels)||void 0===e||e.listenForEvents(),this.adblock=new Adblock,yield this.adblock.inject(),this.google=Google.build(this.findDomainResponse,this.parkResponse,this.adblock),this.google.injectTagManager();const t=Parking.build(this.findDomainResponse,this.google);Render.prerender(t),this.cookieConsentManager=new CookieConsentManager,yield this.cookieConsentManager.inject();let n=Failed.cannotPark(this.findDomainResponse);if(n)return void(yield this.transitionToFailed(n));yield this.google.injectAds();const i=Disabled.build(this.findDomainResponse,this.adblock.state);if(i)return void(yield this.transitionToDisabled(i));const s=Sales.build(this.findDomainResponse);if(s)return void(yield this.transitionToSales(s));this.eligibleForZeroClick&&(this.zeroClickResponse=yield getZeroClick(this.context));const a=Redirect.build(this.findDomainResponse,this.zeroClickResponse,this.google);a?yield this.transitionToRedirect(a):(n=Failed.noSponsors(this.google),n?yield this.transitionToFailed(n):yield this.transitionToParking(t))}))}transitionToParking(e){return __awaiter(this,void 0,void 0,(function*(){this.state=e,Render.template(e),Render.revealPage(),yield this.google.waitForBlocks(),yield this.track()}))}transitionToRedirect(e){return __awaiter(this,void 0,void 0,(function*(){this.state=e;const t=this.track();Render.revealPage(),yield waiter(e.delay,(e=>Render.loading(e))),yield t,window.location.href=e.url,log(`➡ Redirecting [${e.url}]`)}))}transitionToFailed(e){return __awaiter(this,void 0,void 0,(function*(){this.state=e,Render.message(e.message),Render.revealPage(),yield this.track()}))}transitionToSales(e){return __awaiter(this,void 0,void 0,(function*(){this.state=e,e.init(this.context),yield this.track()}))}transitionToDisabled(e){return __awaiter(this,void 0,void 0,(function*(){this.state=e,Render.message(e.message),Render.revealPage(),yield this.track()}))}track(){var e;return __awaiter(this,void 0,void 0,(function*(){if(!this.state.track)return Promise.resolve();try{const t=this.state.trackingType;return null===(e=this.pixels)||void 0===e||e.dispatchEvent({type:t}),trackVisit({context:this.context,callbacks:this.google.callbacks},t)}catch(e){return}}))}get eligibleForZeroClick(){const{cannotPark:e,canZeroClick:t,zeroClick:n}=this.findDomainResponse,{cannotLoadAds:i,wantsToServeAds:s}=this.google;return!!t&&(!!e||(!(!i||s)||!!(null==n?void 0:n.reason)))}get context(){var e,t,n,i;const s=this.findDomainResponse,a=this.parkResponse,o=null===(e=this.state)||void 0===e?void 0:e.toContext(),r=null===(t=this.adblock)||void 0===t?void 0:t.toContext(),d=null===(n=this.google)||void 0===n?void 0:n.toContext(),c=browserState(),l=Object.assign(Object.assign({},null===(i=this.findDomainResponse)||void 0===i?void 0:i.zeroClick),this.zeroClickResponse);return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({app_version:APP_VERSION,zeroClick:l},s),a),r),d),o),c)}init(){return __awaiter(this,void 0,void 0,(function*(){try{window.__parkour=this,yield this.main()}catch(e){console.error("app",e);const t=Failed.fromError(e);this.state=t,Render.message(t.message),Render.revealPage()}}))}}(new App).init(),exports.App=App}));