;(function() {'use strict';
var _dd = {"targ":{"v":{"geo/cy":"AT","geo/ct":"EU","geo/dm":"i"}}};  var _d =  'A|a-7O9vfz8E4q|a|s|running|c|a:sd-ttl|fs|cust/customertype-api|ua/br|geo/dm|ua/mo|ua/os|dt/wp|cust/inter|cust/entitle|w|B|md|id|90000|90005|dc|drts|T|aa|cc|sr|aac|a-CKNGRh9vb8|cust/role|70313|70315|a-UDaMDnInZA|cust/cli|48004|48005|a-5HAA2FeR4zKZ|C|D|E|F|H|J|K|M|N|O|P|S|U|V|W|X|11771|11765|11975|11767|12047|12374|12380|12384|11770|12720|12722|12721|13242|13244|13245|13346|8413719|8413652|ts|f|*|v|n|rank|overAll|var|mean|exp|sum|sqsum|perOption|q|left|#f1681|#f1680|#f1339|right|depth|importance|tabu|cust/inter:lapset|nodeCount|cust/cli:ruutu-ios-capi|cust/cli:ruutu-android-capi|a-kOgjazhWJf|4800016|4800017|a-JG8NRN7y2x|G|I|L|Q|Y|Z|A1|12209|12210|11769|11768|12667|13303|8413459|#f1588|#f1323|#f1314|cust/inter:draama|cust/inter:jannitys|cust/cli:ruutu-smarttv|a-top-news|a-is-video-autoplay-in-view|a-2LoE5UeDYTcV|cust/rtu-paywall|cust/rtu-p2p|R|addon|prod_H0jxKQFDDqFsXX|addon_checked|0|premium_checked|1|prod_Q97T4fBZU2AyAA|prod_DyKtSkvqUePeMn|prod_Fn3GYvU7KF90X5|prod_I08HbZHruobdsd|prod_C55trrvMJfskBK|prod_DvFSDBCTN6Pxo8|prod_HUKtqD3GkO2HrV|prod_LnS3en7fk2hv04|a-zo6M4M4TRF|cust/nm-cancelr|40001|40003|a-z96iCF2TRx|84160105|84160103|84160104|a-reel-grid-playback|oneVideo|allVideos|a-ink-marketing-element|a-profile-menu-cancellations|a-ia2JPNHiACaE|a-1U4ux1T5QRUu|a-D4ZV8DTG86|cust/hs-cdp-segment|cust/p2p|cust/p2p_lightgbm|cust/isLoggedIn|cust/subscriberDetail|cust/hs-p2p-grouped|a-hzYzlUnhDH|a-CuvFeWKeoT|cust/nf-osasto|a-ZlXJtDXr5t|cust/isSubscriber|cust/nf-subscribers|a-DmWe1dbaXQ|a-qNupbv0Ox4|a-Ulz1JxwtkU|a-zJNbvwU9pX|a-JkfFeSEDP1|a-b9wxsufztb|a-NfUtoffAFV|cust/ref|a-pQfpsI0F6c|a-300FZBNs8J|a-tHMFd6zgKA|a-JJetqsaXHjuv|g-Q0fi9Otgz0|sec|gpr|ewe|ext|video_start|g-Wv4QvxMJOg|g-7xnTILu6zO|g-5GG9m8TkMT|g-21dVyDoUdK|g-VMLqlgNRP5|g-XKWs0CTuhB|g-nyDtGkL4ev|g-ARdeDhOiX7|g-xDGDk1bJn6|g-XzkLAitHOz|g-eWFHvbsMAe|g-jj8CvVIYKE|g-xOAMfn9hFV|g-NlpJvM1zge|g-LPUHbdIEyS|g-SkPARSXQ97|g-TcE7x6qtw9|g-yhqeL1t1NA|g-94lEDwCoN5|g-hMrhdvIrOy|g-LokO16l6kb|g-mi5nbyuHEC|g-5pwCElrcQC|g-gTvxTgW0bR|g-tTvNRZG0DA|g-EP5bJS2zLI|g-8GXgqUo5xR|podcast_start_content|g-FAds3Pr8aH|podcast_add_favorite|podcast_save_episode|video_start_max3|c-q-sel-a-1U4ux1T5QRUu|c-q-sub-a-1U4ux1T5QRUu|view_item|seriepage_recommendation_click|g-rtu-contentpage-grid-click-any|rtu_video_start|rtu_purchase|login_done|my_list_add|g-MlZhiSSTvG|g-0mmeFFFQUG|g-rtu-frontpage-series-recom-click|g-rtu-frontpage-movies-recom-click|g-rtu-frontpage-promo-click|video_start_promoclick|rtu_purchase_sst|g-L7Ann8LEyt|Reels-video-start|g-DcP5Ryv5iX|g-7FDUJ7Lf9W|starts_snowflake|smf_video_content|rtu_purchase_pluskaikki|rtu_purchase_yogaia|rtu_purchase_qello|rtu_purchase_viasat|rtu_purchase_ul|g-gSqyGMJXbB|rtu_purchase_ruutuplus|rtu_purchase_urheilu|c-q-sel-a-qNupbv0Ox4|c-q-sub-a-qNupbv0Ox4|g-LUNFeP8P2H|g-EZVMtdANpx|g-b3iGMY1S5x|g-6k62acAEYR|nm_exit_cancellation|rtu_purchase_aa|rtu_purchase_ruutupremium|c-q-sel-a-DmWe1dbaXQ|c-q-sub-a-DmWe1dbaXQ|rtu_purchase_hs|rtu_purchase_supla|me|l|al|conf|sqs:use-ddid|dl:names|dl:ev-style|cdl|dl:cdl|dl:px|dl:slx|dl:ev-cust|dl:key-sl|conductrics_selection|x-ga:wgi|wa:gpa-att|data-c-a|dl:sr|dl:key-sr|conductrics_survey_response|bots:cust|a:session-ttl-secs|js:cook-dom|.hs.fi|js:ps-q|rt:tr-ids|cust/ruutu-purchase:true|#f26|cust/role:Subscribed_User|#f51|cust/role:Non_Logged_In_User|#f52|cust/role:Logged_In_User|#f53|cust/role:Subscribed_Avod_User|#f54|cust/p2p:1|#f58|cust/p2p:10|#f59|cust/p2p:2|#f60|cust/c-q-aa-a-jDvoaTnFlaDU:A|#f69|cust/c-q-aa-a-jDvoaTnFlaDU:B|#f70|cust/p2p_lightgbm:1|#f83|cust/p2p_lightgbm:10|#f84|cust/p2p_lightgbm:2|#f85|cust/p2p_lightgbm:3|#f86|cust/p2p_lightgbm:4|#f87|cust/p2p_lightgbm:5|#f88|cust/p2p_lightgbm:6|#f89|cust/p2p_lightgbm:7|#f90|cust/p2p_lightgbm:8|#f91|cust/p2p_lightgbm:9|#f92|cust/p2p:3|#f94|cust/p2p:4|#f95|cust/p2p:5|#f96|cust/p2p:6|#f97|cust/p2p:7|#f98|cust/p2p:8|#f99|cust/p2p:9|#f100|cust/c-q-aa-a-4DrHkPSiVmfu:A|#f107|cust/c-q-aa-a-4DrHkPSiVmfu:B|#f108|cust/ruutu-supla-cdp-segment:7590cfd8-f028-4d38-91bc-9a7d8209c9a8|#f119|cust/ruutu-supla-cdp-segment:440d6c51-9026-4fb3-a341-cf0d0516e3b1|#f121|cust/c-q-aa-a-A2GAhV5WCl:A|#f125|cust/c-q-aa-a-A2GAhV5WCl:B|#f126|cust/isSubscriber:Subscriber|#f167|cust/isSubscriber:Non-Subscriber|#f168|cust/subscriberDetail:Sample_Subscriber|#f176|cust/subscriberDetail:Combo_Subscriber|#f177|cust/subscriberDetail:Premium_Subscriber|#f178|cust/subscriberDetail:Organization_Subscriber|#f179|cust/subscriberDetail:Reading_Rights_User|#f180|cust/subscriberDetail:Non-Subscriber|#f181|cust/subscriberDetail:Non-Premium_Subscriber|#f182|cust/isLoggedIn:Not_LoggedIn|#f183|cust/isLoggedIn:LoggedIn|#f184|cust/ref:ticker_nayte|#f200|cust/ref:softwall_2n|#f201|cust/ref:etusivu|#f202|cust/ref:maksumuuri_arkisto|#f203|cust/ref:tilaa_topbar|#f204|cust/ref:maksumuuri_dynamic|#f205|cust/ref:vainomuuri|#f206|cust/ref:hs_profilemenu|#f207|cust/ref:nav|#f208|cust/ref:myyntitikkeri|#f209|cust/ref:kiitossivu|#f210|cust/ref:maksumuuri_kova_saannot|#f211|cust/ref:maksumuuri_kova_ot|#f212|cust/ref:tilausvalitsin|#f213|cust/ref:tilaa_topmenu|#f214|cust/ref:shop_sanomalehdet|#f215|cust/ref:nayte_jatko|#f216|cust/ref:digi_karenssiputki|#f217|cust/ref:hs_peruutusputki_winback|#f218|cust/ref:maksumuuri_kova|#f219|cust/c-q-aa-a-t0Hinex95g:A|#f282|cust/c-q-aa-a-t0Hinex95g:B|#f283|cust/c-q-aa-a-721R1gyUpb:A|#f295|cust/c-q-aa-a-721R1gyUpb:B|#f296|cust/al_p2p_lightgbm:1|#f301|cust/al_p2p_lightgbm:2|#f302|cust/al_p2p_lightgbm:3|#f303|cust/al_p2p_lightgbm:4|#f304|cust/al_p2p_lightgbm:5|#f305|cust/al_p2p_lightgbm:6|#f306|cust/al_p2p_lightgbm:7|#f307|cust/al_p2p_lightgbm:8|#f308|cust/al_p2p_lightgbm:9|#f309|cust/al_p2p_lightgbm:10|#f310|cust/ruutu-supla-cdp-segment:ff3651ae-be6b-4b64-bc93-36ed70f7d370|#f329|cust/ruutu-supla-cdp-segment:4c9ab752-8cc3-4980-86f3-fb35f9de6a13|#f330|cust/ruutu-supla-cdp-segment:e8b0b6d3-1dfe-44f8-85c4-ca945fe44d1c|#f331|cust/ruutu-supla-cdp-segment:7c0c24d8-f3e3-45bb-9baf-d7d2862bb28d|#f332|cust/ruutu-supla-cdp-segment:88ece6b8-a96a-4ca9-8bc1-c9c8da339d17|#f333|cust/ruutu-supla-cdp-segment:30104595-0dd1-48d6-bfc1-5d35f92a1bf5|#f334|cust/ruutu-supla-cdp-segment:9d19fc1b-2348-41ef-a47d-b022b8969705|#f335|cust/ruutu-supla-cdp-segment:e116e8e3-2491-4f12-967d-d671dfd41ef8|#f336|cust/ruutu-supla-cdp-segment:0ef8cb17-8e49-456c-8bc7-c2ac50de9c6b|#f337|cust/ruutu-supla-cdp-segment:b41f7b46-e13e-469f-8ee4-4e24db13b926|#f338|cust/c-q-aa-a-XWwb67LBi1:A|#f347|cust/c-q-aa-a-XWwb67LBi1:B|#f348|cust/c-q-aa-a-Q2h5sAFADd:A|#f435|cust/c-q-aa-a-Q2h5sAFADd:B|#f436|cust/hs-cdp-segment:d35801d6-baf2-463c-9416-e98e55069db4|#f437|cust/hs-cdp-segment:9bc95fd4-594f-4d08-945c-3083c76fd87c|#f438|cust/hs-cdp-segment:1a49662f-009f-4f2c-930e-867d6eaf0094|#f439|cust/hs-cdp-segment:7e92adbe-2ba7-4801-81b7-032aeab0b689|#f440|cust/hs-cdp-segment:0244864d-18f3-4bb4-ab4b-44a6c4c29a8e|#f441|cust/hs-cdp-segment:ddca1557-b54a-410c-bbca-db04abaf1fe4|#f442|cust/hs-cdp-segment:d4a41b75-fc9e-4687-9898-25ed3ddefc7b|#f443|cust/hs-cdp-segment:963ae6cd-5151-4c93-b451-ce5e7ef3ed42|#f459|cust/hs-cdp-segment:28bbd4de-d56b-4e75-b5b2-ecdbbe8f1375|#f461|cust/hs-cdp-segment:9d19fc1b-2348-41ef-a47d-b022b8969705|#f462|cust/hs-cdp-segment:7590cfd8-f028-4d38-91bc-9a7d8209c9a8|#f465|cust/hs-cdp-segment:1a8fe497-e176-45bd-ac18-f445d96d8935|#f466|cust/hs-cdp-segment:2520c64d-9ead-4d32-8fe7-82450a62911c|#f467|cust/hs-cdp-segment:3a68379d-74ce-4c4d-bab1-0fbe2e3efd37|#f468|cust/hs-cdp-segment:c28f96cb-2211-4684-8b60-945646268f15|#f469|cust/hs-cdp-segment:858d6f98-4ca0-4514-a2cf-b01e4eef68d8|#f475|cust/hs-cdp-segment:06f6f593-5c53-475a-84f2-88bc49c3cd4b|#f476|cust/hs-cdp-segment:6c562fea-0481-4a13-a619-efedadb18ce3|#f477|cust/hs-cdp-segment:01f80f1a-6f2c-4cc3-a545-6583f6c6829a|#f478|cust/hs-cdp-segment:81c9e1fd-0020-4ec8-8cfa-dc17004ad95b|#f479|cust/hs-p2p-grouped:top1-2|#f566|cust/hs-p2p-grouped:top3-4|#f567|cust/hs-p2p-grouped:bottom5-10|#f568|cust/c-q-aa-a-h84TW6ngiW:A|#f928|cust/c-q-aa-a-h84TW6ngiW:B|#f929|cust/c-q-aa-a-h84TW6ngiW:C|#f935|cust/c-q-aa-a-5huhy2Mouj:A|#f999|cust/c-q-aa-a-5huhy2Mouj:B|#f1000|cust/c-q-aa-a-5huhy2Mouj:C|#f1001|cust/nf-subscribers:a6bba706-9563-4265-96e9-821dc26c2b3d|#f1008|cust/customertype-api:Subscribed_User|#f1050|cust/customertype-api:Non_Logged_In_User|#f1051|cust/customertype-api:Logged_In_User|#f1052|cust/customertype-api:Subscribed_Avod_User|#f1053|cust/entitle:3339550|#f1244|cust/entitle:3062072|#f1245|cust/entitle:3472592|#f1246|cust/entitle:3678391|#f1247|cust/entitle:3700438|#f1248|cust/entitle:4086504|#f1249|cust/entitle:744162|#f1250|cust/entitle:4507721|#f1291|cust/inter:rikos|#f1315|cust/inter:reality_ja_tositapahtumat|#f1318|cust/inter:ruoka|#f1320|cust/inter:romantiikka_ja_parisuhde|#f1324|cust/inter:hauskat|#f1325|cust/inter:dokkari|#f1326|cust/inter:elamantyyli|#f1327|cust/inter:musiikki|#f1328|cust/inter:matkailu|#f1329|cust/inter:bisnes|#f1330|cust/inter:mokki_ja_sisustus|#f1331|cust/inter:koti|#f1332|cust/inter:puutarha|#f1333|cust/inter:perhe_ja_vanhemmuus|#f1334|cust/inter:urheilu|#f1335|cust/c-q-aa-a-4b7Xd6Pj5u:A|#f1358|cust/c-q-aa-a-4b7Xd6Pj5u:B|#f1359|cust/c-q-aa-a-qQMZ8UIs5y:A|#f1360|cust/c-q-aa-a-qQMZ8UIs5y:B|#f1361|cust/inter:superstarat|#f1368|cust/inter:ammattilaiset|#f1369|cust/inter:toiminta|#f1370|cust/inter:tubettajat|#f1371|cust/inter:seikkailureality|#f1372|cust/inter:kauhu|#f1373|cust/inter:rikkaus_ratkaisee|#f1381|cust/inter:scifi|#f1382|cust/inter:fantasia|#f1383|cust/inter:autot|#f1387|cust/inter:villi_lansi|#f1389|cust/inter:toinen_maailmansota|#f1392|cust/inter:konsertit|#f1394|cust/inter:hyvinvointi|#f1399|cust/inter:luonto_ja_lemmikit|#f1400|cust/inter:hyvan_mielen_ohjelmat|#f1406|cust/inter:sairaala_ja_palokunta|#f1408|cust/inter:draamakomedia|#f1409|cust/inter:aarteet|#f1410|cust/inter:keskustelu|#f1411|cust/inter:animaatio|#f1412|cust/inter:uutiset|#f1414|cust/inter:lakitupa_ja_toimisto|#f1415|cust/inter:klassikot|#f1416|cust/inter:pehmodekkarit|#f1417|cust/inter:historialliset_draamat|#f1418|cust/inter:romanttinen_draama|#f1419|cust/inter:pesapallo|#f1441|cust/inter:nuoret|#f1442|cust/c-q-aa-a-2bKWLrt1YR:A|#f1456|cust/c-q-aa-a-2bKWLrt1YR:B|#f1457|cust/c-q-aa-a-mxFDIbpPCN:A|#f1460|cust/c-q-aa-a-mxFDIbpPCN:B|#f1461|cust/c-q-aa-a-4BDMOOyc0k:A|#f1470|cust/c-q-aa-a-4BDMOOyc0k:B|#f1471|cust/c-q-aa-a-repXWfXlx5:A|#f1472|cust/c-q-aa-a-repXWfXlx5:B|#f1473|cust/c-q-aa-a-QP4FryfZMt:A|#f1474|cust/c-q-aa-a-QP4FryfZMt:B|#f1475|cust/c-q-aa-a-jYh1B6WngH:A|#f1478|cust/c-q-aa-a-jYh1B6WngH:B|#f1479|cust/inter:jalkapallo|#f1480|cust/c-q-aa-a-5BRbAH4tco:A|#f1489|cust/c-q-aa-a-5BRbAH4tco:B|#f1490|cust/c-q-aa-a-hR8Ds6aIIE:A|#f1491|cust/c-q-aa-a-hR8Ds6aIIE:B|#f1492|cust/c-q-aa-a-kubdAF4QN9:A|#f1527|cust/c-q-aa-a-kubdAF4QN9:B|#f1528|cust/c-q-aa-a-kubdAF4QN9:C|#f1529|cust/c-q-aa-a-GBkmTvkaPR:A|#f1557|cust/c-q-aa-a-GBkmTvkaPR:B|#f1558|cust/c-q-aa-a-uGOtGz8XfI:A|#f1562|cust/c-q-aa-a-uGOtGz8XfI:B|#f1563|cust/c-q-aa-a-sfOQVVU7U5:A|#f1566|cust/c-q-aa-a-sfOQVVU7U5:B|#f1567|cust/c-q-aa-a-LcyQeO1moi0J:A|#f1597|cust/c-q-aa-a-LcyQeO1moi0J:B|#f1598|cust/c-q-aa-a-LcyQeO1moi0J:C|#f1599|cust/inter:salibandy|#f1603|cust/inter:koripallo|#f1604|cust/cli:ruutu-next|#f1673|cust/entitle:3584430|#f1790|cust/c-q-aa-a-G7ehWOMbZ5sE:A|#f1830|cust/c-q-aa-a-G7ehWOMbZ5sE:B|#f1831|cust/nf-osasto:alueet|#f1849|cust/nf-osasto:elama|#f1850|cust/nf-osasto:feature|#f1851|cust/nf-osasto:helsinki|#f1852|cust/nf-osasto:visio|#f1853|cust/nf-osasto:kirjeenvaihtajat|#f1854|cust/nf-osasto:kulttuuri|#f1855|cust/nf-osasto:kuukausiliite|#f1856|cust/nf-osasto:lifestyle|#f1857|cust/nf-osasto:maailma|#f1858|cust/nf-osasto:pk-seutu|#f1859|cust/nf-osasto:politiikka|#f1860|cust/nf-osasto:suomi|#f1861|cust/nf-osasto:taide|#f1862|cust/nf-osasto:talous|#f1863|cust/nf-osasto:tiede|#f1864|cust/nf-osasto:tutkiva|#f1865|cust/nf-osasto:urheilu|#f1866|cust/rtu-paywall:3339550|#f1880|cust/rtu-paywall:3062072|#f1881|cust/rtu-paywall:3472592|#f1882|cust/rtu-paywall:3678391|#f1883|cust/rtu-paywall:4086504|#f1884|cust/rtu-paywall:744162|#f1885|cust/rtu-paywall:4507721|#f1886|cust/rtu-paywall:3584430|#f1887|cust/rtu-p2p:noads_high|#f1911|cust/rtu-p2p:noads_low|#f1912|cust/rtu-p2p:sports_high|#f1913|cust/rtu-p2p:sports_low|#f1914|cust/rtu-p2p:sst_high|#f1915|cust/rtu-p2p:sst_low|#f1916|cust/rtu-p2p:ruutu_high|#f1917|cust/cli:ruutu-smarttv-low|#f1980|cust/nm-cancelr:no_international_content|#f1992|cust/nm-cancelr:content_finished|#f1993|cust/nm-cancelr:too_expensive_svod|#f1994|cust/nm-cancelr:too_expensive_savod|#f1995|cust/nm-cancelr:no_ROI|#f1996|cust/nm-cancelr:no_answer|#f1997|rt:a_codes|a-Y9hwvSKRu3|a-fIQyn7hkig|a-pDe8YxTB4Y7H|a-3pRMO7d1PZ7J|a-CbH136spDK|a-Lg4KSPdSR8|a-RSUp155RUf|a-538y9Qv7VZXz|a-cwgjoA0Dg7tx|a-DGPSO2gzXvii|a-xyhCwHwgwPTJ|a-ov8HGqSzbG|a-Jag2K3XgzZ|a-f6weVibCuwCE|a-bBWFGnZX8GG2|a-hoIAcHci6FhW|a-DXCCIk6yL5|a-NpdhrGiUhW|a-uIRf5zfGH5Y6|a-OzK7iUOTnh|a-naCzKGbtln|a-WTf7h3M0al5s|a-xKxJMu7no0qt|a-V6eqhl3SA2sf|a-KH1ooOQ4fH|a-pmtNBFVnF1|a-iRAVAxlYNy|a-AH4zJCPwd9|a-KmcxE8WSj6|a-91NOLntVaq|a-qbMgxlREMd|a-Rc2WuaWZP8|a-acUZxP9Ev0|a-JzPszSOtzB|a-JtrmxXaSGw|a-WQ57Svzh28ts|a-lWpoTY0owcoy|a-Xzn1gzhlgY91|a-WJaJ1pE4TrZg|a-40UiTIT151C7|a-qTBftMGP4eOB|a-limwR91k6eK9|a-UNnPQGDepj|a-a0cjZcCKPw|a-mj3K80OOS1Xs|a-bDJSNP7vbp|a-HFb9feoQcn|a-FLeEJFudGx|a-WnXB1j0gO4|a-9ZYlUu8QLH|a-Nv37vnmL7L|a-CVDqkd0iQ6|a-rXRy4l4YJd|a-u7TMQRnGsS|a-j8Czifj2z1|a-TPE1Caqgy2GQ|a-4WnUzHLlEOSM|a-kRVRUbt3fD|a-gnvGUXl9Z0Cd|a-6LTKbUJRd2hp|a-u9Di7OtFBeJ3|a-ROMWtQb6Gt|a-zsrGwyVtIHZy|wa:ready|rt:spa-states|#init|vs-qNL8ohkVSg|pv|cancellation_done|plus_purchase|vs-ChFTBMnT6e|interaction|loginStatus|vs-YmOfUZcSYJ|vs-WTeBd3Sgnf|vs-ZgFe5QpPgj|vs-qymqOW9gZs|vs-q0jp91M0Jz|vs-vKBX9mZkiU|video_visit|vs-ARaCDZ9664|vs-l6eQvLRhDP|vs-DSExoQX3jx|vs-T0iv8I3Pa4|vs-DHiZkUjVvI|vs-UAAfGWAf1V|vs-l9wlklJQ4h|vs-ruFUjLk3Vn|vs-uPKyHjKebM|vs-0GMlbyansW|vs-VS5Foal7Lp|vs-zjwMpr5s3t|vs-gQCP1duGZz|vs-W1iI4w8qs4|vs-Ej1LXWmAI0|vs-bEia1NWEYx|vs-BIfbt1Igjl|vs-CS5nPHkSB9|vs-6ThAfyUHtL|vs-CjUeuXp0Y0|vs-A49lPYS1Do|vs-xkQrpAwVlj|vs-fIZxt8w4A1|vs-LPlW799RaM|vs-PYC8htcA2P|vs-iTa2zyEZqE|vs-Y3p37JH3Hj|vs-ayoFznPjUE|vs-IhwEi1zx3Z|vs-OQAKNk5Q7d|vs-dlkLeJsssc|vs-qWJkRaJ46l|vs-v2165r7ewK|vs-zNCdbKPPsf|vs-Vx0SgmUCTh|vs-Wzg3LQcdcr|vs-G81khg0Jk9|vs-CdqulcKISW|vs-MiW2fL3u8l|vs-6bkpcdOYMY|vs-lkQCjgZKbl|vs-9aMZGRhWS5|vs-KVNYoRYgPj|rt:spa-states-m|js:preboot-eps|wax|rt:spa-states-pb|dl:key-tr|conductrics_traits|rt:av-sels|event-queue:sqs-url|https://sanoma.cdn-v3.conductrics.com/661082963978/conductrics-30-sanoma-queue|rt:spa-states-ms|x-ga:gtm|x-ga:gat|x-ga:gao|qa:v-qa|js:debug-all|dl:cdl-key|c_conductrics_data_layer|qa:env|acc:env|p|acc:code|ac-HxAwTabhao|pass:ua|pass:ip|pass:loc|pass:vid|pass:sid|pass:sess|pass:qa|pass:qax|rt:spa-states-pv|targ:traits-agent-max|a:vis-ttl|rt:sl-rate|targ:lookup-url|https://sanoma-data.conductrics.com|targ:ext-tms|acc:c-dom|FI|dl:key-vs|conductrics_vstate|dl:key-ex|conductrics_commands|dl:past-events|targ:vid|_ga|qa:st-key|c-conductrics-qa|rt:g_codes|g-ODhojhYFTl|c-q-f-sf_S2QibRUtOd|c-q-f-sf_S2QibRUtOd_de|c-q-f-sf_S2QibRUtOd_pa|c-q-f-sf_S2QibRUtOd_pr|c-q-sel-a-Y9hwvSKRu3|c-q-sub-a-Y9hwvSKRu3|c-q-f-sf_Xw4s0npaOj|c-q-f-sf_Xw4s0npaOj_de|c-q-f-sf_Xw4s0npaOj_pa|c-q-f-sf_Xw4s0npaOj_pr|c-q-sel-a-fIQyn7hkig|c-q-sub-a-fIQyn7hkig|c-q-f-sf_Va7mY35ggU|c-q-f-sf_Va7mY35ggU_de|c-q-f-sf_Va7mY35ggU_pa|c-q-f-sf_Va7mY35ggU_pr|g-zLadmJg2Aw|g-BKv1j4oXqj|g-dqQmbPVker|g-8EUBTmAuUI|g-ReoJredT3O|g-1yDrMv3b6X|g-iBdWzUyDl8|g-N8fuAxN3ke|g-Y2Ef5phuJ2|g-sFw2pHSKDm|g-HLPUNlWUIY|g-u6w306clFU|g-g6ZdkswYGq|g-Va9Tineirh|g-zMNnkjIE4n|g-ZrJznlaSiM|c-q-sel-a-cwgjoA0Dg7tx|c-q-sub-a-cwgjoA0Dg7tx|c-q-sel-a-DGPSO2gzXvii|c-q-sub-a-DGPSO2gzXvii|c-q-sel-a-ov8HGqSzbG|c-q-sub-a-ov8HGqSzbG|c-q-sel-a-Jag2K3XgzZ|c-q-sub-a-Jag2K3XgzZ|c-q-sel-a-f6weVibCuwCE|c-q-sub-a-f6weVibCuwCE|c-q-sel-a-bBWFGnZX8GG2|c-q-sub-a-bBWFGnZX8GG2|g-GRXOuhKVGf|g-SlNPyCCn6C|g-OkbJJo7fyt|g-qXYQBG4k0D|g-S13RpqHxQG|g-6BUl6UwZZl|c-q-sel-a-uIRf5zfGH5Y6|c-q-sub-a-uIRf5zfGH5Y6|g-tJrcbFvXIL|g-ovxcVVoVQj|g-CxBbt6FQdJ|g-d2J6BCiKjx|g-5l3ugQf6dh|c-q-sel-a-V6eqhl3SA2sf|c-q-sub-a-V6eqhl3SA2sf|g-ObT6JgaQfr|g-LE0OHkR0xI|g-XcTYTs8viu|g-W0NdHck24Z|g-VSE69MkVgs|g-IVaGUptyti|g-wX7MXqctVW|g-VMGo77XINV|diag|module|root|items|entry|wax-pre|vstate-apply|vstate|trigs|mode|dl-ev|ms|ev_conds|${st::=cookieConsent:spcx}|is|${dl::page.paywallStatus}|in|paid|paid-no-indicator|all|dl_ev|eventInfo|dl_crit|k|eventCategory|paywall|eventAction|show+kovamuuri|qa|conds|${st::=userAdParams:user_is_logged_in}|false|metered|present|sel|.ab-test-metered-softwall-title|num|container|#__next|consent|consentStatus|accepted|sw|archived|show+arkistomuuri|show+kovamuuri|.ab-test-hard-paywall|api|api-steps|group|pre|features-profile|types|trait-read|ns|cust|type|nf-osasto|expr|${dl::page.category}|nf-subscribers|${st::=sa-segments:webCdpSegments}|hs-cdp-segment|ref|${v.loc.qs::ref}|p2p_lightgbm|${targ.x-gcp-bq/hs_p2p_lightgbm}|p2p|${targ.x-gcp-bq/hs_p2p}|feature-set|feature|${targ.cust/p2p}|2|${targ.cust/p2p_lightgbm}|any|3|4|nin|sets|10|5|6|7|8|9|diags|decision|agent|${targ.rand/r100}|lte|${v.loc.qx}|https://www.hs.fi/|select|choices|policy|r|${v.loc}|sub|dev.hs.fi/|reward|goal|countMax|valueMin|valueMax|valueDef|rw|ps_ok|t-VtnCdOx82cT0LEM|api-task|task|condition|${gh::g-rtu-frontpage-promo-click}|true|${gh::rtu_purchase}|${gh::rtu_video_start}|${gse::g-rtu-frontpage-promo-click}|lt|60|video_start_flowlet|300|rtu_purchase_any|1800|wa-entry|wa-start|wa-decision|wa-await|selectors|[data-ab="hard-paywall"]|one|wa-script|selector|prehide|watch|js-zZOSgG9d3RLHr3QEwRC5-1741066838|ok|ra-max|${v.sels::a-ia2JPNHiACaE::c}|js-wsJkc7hvBngB1gvt2O42-1741344829|confirm|https://www.hs.fi/pelit/art-2000011063563.html?test|https://dev.hs.fi/urheilu/art-2000011073453.html|condsName|one+art+%2B+one+dev+art|vstates|options|await|wa-pre-un|exists|${v.sels::a-1U4ux1T5QRUu::c}|body|wa-survey|survey_code|su-1cEok1WqEMLM|submit_vstate|wa-survey-show|modal|focus_first|adjacency|beforeend|theme|st-iuMzbHF0lPetzE0|survey|code|fields|stars-5|sf_rkxuIoBSh0|active|title|Kuinka+helppoa+ostaminen+oli?|subtitle|Auta+meitä+kehittämään+palvelua|required|cssClass|text|sf_eC32io3q8M|Mikä+tilaamisessa+tuntui+hankalalta?|placeholder|Vastauksesi|${qfv::sf_rkxuIoBSh0}|hidden|sf_fcQpMznG7D|readFrom|dl::page.pageInfo.pageName|show_submit|send_on_close|offer_max|farewell|keepUrl|labels|submit|Lähetä|langs|dom_id|_c_q_su_1cEok1WqEMLM|markup|<style+class=\'c-q-theme-style\'+data-survey=\'su-1cEok1WqEMLM\'+media=\'not+all\'+data-c-q-style-nonce>/*+CSS+Variables+used+by+Basic+Survey+Theme+*/\n.c-q-vars+{\n\n++/*+general+colors+for+the+survey+UI+"chrome"+*/\n++--bgcolor:+#fff;+/*+white+background+by+default+*/\n++--text-color:+#444;+/*+dark+grey+text+*/\n++--gray-1:+#333;\n++--gray-2:+#777;\n++--gray-3:+#aaa;\n++--gray-4:+#c0c0c0;\n++--gray-5:+#ddd;\n\n++/*+these+colors+affect+most+buttons+in+the+survey+*/\n++--btn-primary-bgcolor:+#010080;+/*+submit+buttons,+etc+(navy+by+default)+*/\n++--btn-primary-fgcolor:+#fff;+/*+white+*/\n++--btn-secondary-bgcolor:+#010080;+/*+most+other+buttons+(navy+by+default)+*/\n++--btn-secondary-fgcolor:+#fff;+/*+white+*/\n\n++/*+color+of+focus+outlines+for+numeric+rating+and+\'blocky+buttons\'+radios+*/\n++--input-focus-color:+#bf90ff;\n\n++/*+should+most+survey+content+be+centered+or+left-aligned?+*/\n++--align-horiz:+left;+/*+\'center\'+likely+better+if+multiple+questions+*/\n\n++/*+control+over+the+animation+used+to+show/hide+the+survey+*/\n++--anim-enter-duration:+0.5s;+/*+how+fast+should+the+survey+fade/slide+in?+*/\n++--anim-exit-duration:+0.5s;+/*+how+fast+should+the+survey+fade/slide+out?+*/\n++--anim-enter-delay:+0s;+/*+don\'t+use+this+to+delay+when+the+survey+appears+*/\n++--anim-exit-delay:+0.5s;+/*+a+small+delay+here+feels+more+natural+*/\n\n++/*+colors+for+the+"smiley/frowny"+question+type+*/\n++--btn-rating-icon-color-1:+#f51120;+/*+red++*/\n++--btn-rating-icon-color-2:+#fd870d;+/*+orange+*/\n++--btn-rating-icon-color-3:+#ffca3d;+/*+neutral+yellow+*/\n++--btn-rating-icon-color-4:+#77d62f;+/*+light+green+*/\n++--btn-rating-icon-color-5:+#37b647;+/*+dark+green+*/\n++--btn-rating-icon-color-n:+cadetblue;+/*+neutral+color+*/\n}\n\n/*+\n++show+survey+"inline"+(as+opposed+to+in+a+"modal"+overlay)+\n++(this+is+the+"small+screen"+version,+see+@media+block+below+for+larger)\n*/\n.c-q-survey.c-q-inline+{\n++++/*+position+-+"docked"+10px+from+bottom+of+page+*/\n++++position:+fixed;\n++++bottom:+10px;\n++++margin-left:+10px;\n++++margin-right:+10px;\n++++z-index:+2147483647;\n++++/*+size+*/\n++++min-width:+250px;\n++++width:+calc(100%25+-+20px);\n++++height:+auto;\n++++box-sizing:+border-box;\n++++/*+styling+*/\n++++background-color:+var(--bgcolor);\n++++border:+2px+solid;\n++++border-color:+var(--gray-3);\n++++border-radius:+5px;\n++++padding:+15px+20px;\n++++filter:+drop-shadow(2px+2px+2px+var(--gray-4));\n}\n/*+show+survey+"inline"+-+overrides+for+non-small+screens+*/\n@media+screen+and+(min-width:+600px)+{\n++.c-q-survey.c-q-inline+{\n++++bottom:+20px;\n++++left:+0;\n++++right:+0;\n++++margin:+auto;\n++++width:+50%25;\n++++min-width:+550px;\n++++max-width:+850px;\n++}\n}\n/*+entrance+animation+*/\n.c-q-survey.c-q-inline.c-q-animate-in:not(.c-q-submitted)+{\n++++animation:+c-q-fadeIn+var(--anim-enter-duration)+ease+backwards;\n++++animation-delay:+var(--anim-enter-delay);\n}\n/*+exit/hide+animation+*/+\n.c-q-survey.c-q-inline.c-q-animate-out.c-q-submitted+{\n++++animation:+c-q-fadeOut+var(--anim-exit-duration)+ease+forwards;\n++++animation-delay:+var(--anim-exit-delay);\n}\n\n@keyframes+c-q-fadeIn+{\n++from+{opacity:0;+transform:+translateY(80px)+translateX(0);}\n++to+{opacity:1;+transform:+translateY(0)+translateX(0)}\n}\n@keyframes+c-q-fadeOut+{\n++from+{opacity:1;+visibility:+visible;+transform:+translateY(0)+translateX(0);++}\n++to+{opacity:0;+visibility:+hidden;+transform:+translate3d(0,+100%25,+0);+}\n}\n\n@keyframes+c-q-appear+{\n++from+{opacity:0;+visibility:+hidden;+}\n++to+{opacity:1;+visibility:+visible;+}\n}\n\n.c-q-appear-anim+{\n++animation:+c-q-appear+var(--anim-enter-duration)+ease+backwards;\n}\n\n.c-q-heading+{\n++background-repeat:+no-repeat;\n++background-position:+center;\n++background-size:+contain;\n++margin-bottom:+10px;\n++color:+var(--text-color);\n}\n\n.c-q-farewell+{\n++text-align:+center;\n++font-size:+15px;\n++padding:+15px+10px;\n}\n\n/*+Basic+survey+theme+*/\n.c-q-field+{\n++display:+block;\n++margin-bottom:+10px;\n}\n.c-q-survey+.c-q-field-label+{\n++font-size:+14px;\n++display:+block;\n++color:+var(--text-color);\n++margin-bottom:+5px;\n++text-align:+var(--align-horiz);\n++border:+none;\n++font-weight:+500;\n}\n\n.c-q-field-subtitle+{\n++display:+block;\n++color:+var(--gray-2);\n}\n\n\n/*+for+randomizing+the+order+of+field+options/answers,+CSS+\'order\'+property+*/\n/*+NOTE:+possibly+these+should+apply+to+all+radio+buttons,+as+opposed+to+just+randomly-ordered+ones+*/\n.c-q-has-random-items+{\n++display:+flex;+/*+so+CSS+\'order\'+property+(set+at+runtime)+will+have+an+effect+*/\n++flex-wrap:+wrap;\n}\n.c-q-has-random-items+.c-q-field-option+{\n++display:+flex;\n++width:+100%25;+/*+so+each+option+takes+up+a+whole+line+*/\n}\n.c-q-has-random-items+.c-q-field-option.c-q-radio-group-item+{\n++align-items:+start;+/*+for+alignment+of+radio+button+to+its+label+*/\n}\n\n\n/*+normal+text+inputs/textareas+*/\n.c-q-input-text+{\n++width:+100%25;\n++padding:+2px+5px;\n++border-color:+var(--gray-2);\n++border-radius:+4px;\n}\n.c-q-input-text:focus+{\n++outline:+none;\n}\n/*+normal+checks/radios+*/\n.c-q-radio-group,+.c-q-check-group+{\n++margin-bottom:+10px;\n}\n.c-q-radio-label,+.c-q-check-label+{\n++padding-left:+4px;\n++margin-bottom:+0;\n}\n\n.c-q-html-check+{\n++opacity:+0;\n++position:+fixed;\n++width:+0;\n}\n.c-q-html-label+{\n++margin-bottom:+10px;\n}\n.c-q-html-group+{\n}\n\n/*+submit+button+*/\n.c-q-steps+{\n++display:+inline-block;\n}\n.c-q-submit+{\n++margin-top:+5px;\n++text-align:+var(--align-horiz);\n}\n.c-q-submit+button+{\n++background-color:+var(--btn-primary-bgcolor);\n++color:+var(--btn-primary-fgcolor);\n++border-radius:+4px;\n++border-color:+var(--btn-primary-bgcolor);\n++border-style:+solid;\n++padding:+5px+10px;\n++box-sizing:+border-box;\n++border-width:+1px;\n++cursor:+pointer;\n++margin:+0;\n++text-align:+center;\n++text-decoration:+none;\n++font-size:+16px;\n++padding:+8px+20px;\n}\n.c-q-submit+button:disabled+{\n++opacity:+0.6;\n++cursor:+not-allowed;\n}\n.c-q-submit+button.c-q-btn-secondary+{\n++background-color:+var(--btn-primary-fgcolor);\n++color:+var(--btn-primary-bgcolor);\n}\nbutton.c-q-btn-prev:before+{\n++content:+\'‹\';\n++padding-right:+5px;\n}\nbutton.c-q-btn-next:after+{\n++content:+\'›\';\n++padding-left:+5px;\n}\n\n/*+dismiss+button,+styled+as+an+"X"+at+top+right+*/\n.c-q-close-x+{\n++position:+absolute;\n++top:+0;\n++right:+0;\n++color:+var(--gray-2);\n++font-size:+20px;\n++font-family:+sans-serif;\n++padding:+10px;\n++background-color:+var(--bgcolor);\n++border:+none;\n++cursor:+pointer;\n}\n.c-q-close-x:before+{\n++content:++"⨂";\n}\n\n/*+SPECIAL+INPUT+STYLE:+Radio+buttons,+styled+as+\'blocky+buttons\',+styled+via+a+similar+approach+as+.custom-control+radios+in+bootstrap+*/\n.c-q-radio-group.c-q-radio-group-buttons+input[type=\'radio\']+{\n++opacity:+0;\n++position:+fixed;\n++width:+0;\n}\n.c-q-radio-group.c-q-radio-group-buttons+label+{\n++++display:+inline-block;\n++++background-color:+var(--bgcolor);\n++++padding:+3px+9px;\n++++border:+2px+solid;\n++++border-color:+var(--gray-3);\n++++border-radius:+5px;\n++++margin:+2px;\n++++cursor:+pointer;\n++++color:+var(--gray-1);\n++++width:+100%25;\n}\n.c-q-radio-group.c-q-radio-group-buttons+input[type="radio"]:checked+%2B+label+{\n++color:+var(--btn-primary-fgcolor);\n++background-color:+var(--btn-secondary-bgcolor);\n++border-color:+var(--btn-secondary-bgcolor);\n}\n.c-q-radio-group.c-q-radio-group-buttons+input[type="radio"]:focus+%2B+label+{\n++border-color:+var(--input-focus-color);\n}\n.c-q-radio-group.c-q-radio-group-buttons+>+.c-q-radio-group-item+{\n++text-align:+var(--align-horiz);\n}\n.c-q-btn,.c-q-close-x,+.c-q-submit+button+{\n++outline-color:+var(--input-focus-color);\n}\n\n\n/*+SPECIAL+INPUT+STYLE:+Checkbox+buttons,+styled+as+\'blocky+buttons\',+styled+via+a+similar+approach+as+.custom-control+radios+in+bootstrap+*/\n.c-q-check-group.c-q-check-group-buttons+input[type=\'checkbox\']+{\n++opacity:+0;\n++position:+fixed;\n++width:+0;\n}\n.c-q-check-group.c-q-check-group-buttons+label+{\n++++display:+inline-block;\n++++background-color:+var(--bgcolor);\n++++padding:+3px+9px;\n++++border:+1px+solid;\n++++border-color:+var(--gray-3);\n++++border-radius:+5px;\n++++margin:+2px;\n++++cursor:+pointer;\n++++color:+var(--gray-1);\n++++width:+100%25;\n++++font-size:+16px;\n}\n.c-q-check-group.c-q-check-group-buttons+input[type="checkbox"]:checked+%2B+label+{\n++color:+var(--btn-primary-fgcolor);\n++background-color:+var(--btn-secondary-bgcolor);\n++border-color:+var(--btn-secondary-bgcolor);\n}\n.c-q-check-group.c-q-check-group-buttons+>+.c-q-check-group-item+{\n++text-align:+var(--align-horiz);\n}\n\n\n.c-q-rating-label-before,+.c-q-rating-label-after+{\n++++padding:+5px;\n}\n\n.c-q-survey+fieldset.c-q-options-fieldset+{\n++display:+block;+/*+TODO+-+was+display:contents+but+resulted+in+uncentered+text+*/\n}\n\n/*+SPECIAL+INPUT+TYPE:+"rating+dots"+(radio+buttons,+styled+via+a+similar+approach+as+.custom-control+radios+in+bootstrap)+*/\n.c-q-rating-radios+{\n++white-space:+nowrap;\n++display:+flex;\n++align-items:+center;\n}\n.c-q-rating-radios+input[type=\'radio\']+{\n++opacity:+0;\n++position:+fixed;\n++width:+0;\n}\n.c-q-rating-radios+label+{\n++display:+inline-block;\n++background-color:+var(--bgcolor);\n++font-size:+16px;\n++border:+2px+solid+var(--gray-3);\n++border-radius:+50px;\n++margin:+2px;\n++cursor:+pointer;\n++color:+var(--gray-1);\n++flex-grow:+1;\n++text-align:+center;\n++padding-bottom:+4px;\n++padding-top:+4px;\n}\n@media+screen+and+(min-width:+600px)+{\n++.c-q-rating-radios+label+{\n++++padding-top:+8px;\n++++padding-bottom:+8px;\n++}\n}\n.c-q-rating-radios+input[type="radio"]:checked+%2B+label+{\n++background-color:+var(--gray-1);\n++color:+var(--bgcolor);\n}\n.c-q-rating-radios+input[type="radio"]:focus+%2B+label+{\n++border-color:+var(--input-focus-color);\n}\n\n/*+SPECIAL+INPUT+TYPE:+"smileys"+/+emoticons+(radio+buttons,+styled+via+a+similar+approach+as+.custom-control+radios+in+bootstrap)+*/\n.c-q-rating-icons+{\n++text-align:+var(--align-horiz);\n}\n.c-q-rating-icons+input[type=\'radio\']+{\n++opacity:+0;\n++position:+fixed;\n++width:+0;\n}\n.c-q-rating-icons+label+{\n++display:+inline-block;\n++background-color:+var(--bgcolor);\n++cursor:+pointer;\n++color:+var(--gray-1);\n++border:+2px+solid;\n++border-color:+var(--bgcolor);\n++font-size:+40px;\n++border-radius:+50px;\n++line-height:+55px;\n++padding:+0+8px;\n}\n/*+colors+for+each+radio+*/\n.c-q-rating-icons.c-q-rating-icons-colors+label.c-q-rating-icons-label-1+{\n++color:+var(--btn-rating-icon-color-1);\n}\n.c-q-rating-icons.c-q-rating-icons-colors+label.c-q-rating-icons-label-2+{\n++color:+var(--btn-rating-icon-color-2);\n}\n.c-q-rating-icons.c-q-rating-icons-colors+label.c-q-rating-icons-label-3+{\n++color:+var(--btn-rating-icon-color-3);\n}\n.c-q-rating-icons.c-q-rating-icons-colors+label.c-q-rating-icons-label-4+{\n++color:+var(--btn-rating-icon-color-4);\n}\n.c-q-rating-icons.c-q-rating-icons-colors+label.c-q-rating-icons-label-5+{\n++color:+var(--btn-rating-icon-color-5);\n}\n.c-q-rating-icons.c-q-rating-icons-neutral+label+{\n++color:+var(--btn-rating-icon-color-n);\n}\n\n/*+show+the+border+for+the+selected+radio+*/\n.c-q-rating-icons+input[type="radio"]:checked+%2B+label+{\n++border-color:+unset;\n}\n/*+use+a+dim+color+for+the+other+radios+(after+one+is+selected)+*/\n.c-q-field-filled+.c-q-rating-icons+input[type="radio"]:not(:checked)+%2B+label+{\n++color:+#33333363;\n}\n/*+the+emoticon+itself+*/\n.c-q-emoticon+{\n++overflow:+visible;\n++width:+1em;\n++height:+1em;\n++display:+inline-block;\n++vertical-align:+-0.125em;\n}\n\n\n/*+SPECIAL+INPUT+TYPE:+"1-5+Stars"+styled+rating+widgets+*/\n.c-q-rating-stars-container+{\n++display:+flex;\n++justify-content:+var(--align-horiz);\n}\n.c-q-rating-stars+{+\n++font-size:+38px;\n++border:+none;\n++float:+left;\n}\n.c-q-rating-stars+>+label+>+svg+{\n++overflow:+visible;\n}\n.c-q-rating-stars+>+input+{+\n++display:+none;+/*+hide+"normal"+radio+ui+*/\n}\n.c-q-rating-stars+>+label+{+\n++color:+var(--gray-5);+\n++float:+right;+\n++padding-right:+10px;\n++background-color:+unset+!important;+/*+in+case+host+page+defines+a+background+color+for+radio+labels+*/\n}\n.c-q-rating-stars+>+input:checked+~+label,+/*+show+gold+star+when+clicked+*/\n.c-q-rating-stars:not(:checked)+>+label:hover,+/*+hover+current+star+*/\n.c-q-rating-stars:not(:checked)+>+label:hover+~+label+{+color:+#FFD700;++}+/*+hover+previous+stars+in+list+*/\n\n.c-q-rating-stars+>+input:checked+%2B+label:hover,+/*+hover+current+star+when+changing+rating+*/\n.c-q-rating-stars+>+input:checked+~+label:hover,\n.c-q-rating-stars+>+label:hover+~+input:checked+~+label,+/*+lighten+current+selection+*/\n.c-q-rating-stars+>+input:checked+~+label:hover+~+label+{+color:+#FFED85;++}+\n\n\n/*+when+the+survey+is+displayed+in+a+"modal"+overlay/dialog+*/\n.c-q-modal+{\n++display:+none;\n++position:+relative;\n++font-family:+-apple-system,BlinkMacSystemFont,avenir+next,avenir,helvetica+neue,helvetica,ubuntu,roboto,noto,segoe+ui,arial,sans-serif;\n}\n.c-q-modal.is-open+{\n++display:+block;\n++z-index:+9999;\n}\n.c-q-modal-overlay+{\n++position:+fixed;\n++top:+0;\n++left:+0;\n++right:+0;\n++bottom:+0;\n++background:+rgba(0,0,0,0.2);\n++display:+flex;\n++justify-content:+center;\n++align-items:+center;\n}\n.c-q-modal-container+{\n++background-color:+var(--bgcolor);\n++padding:+30px;\n++max-width:+700px;\n++max-height:+100vh;\n++border-radius:+6px;\n++overflow-y:+auto;\n++box-sizing:+border-box;\n++border:+1px+solid+rgba(0,0,0,0.5);\n++box-shadow:+0+3px+7px+rgb(0+0+0+/+30%25);\n++opacity:+1;\n++position:+relative;\n}\n\n.c-q-survey+.c-q-a-sr-only,+.c-q-survey+.c-q-radio-group-focus+{\n++border:+0;\n++clip:+rect(0+0+0+0);\n++height:+1px;\n++margin:+-1px;\n++overflow:+hidden;\n++padding:+0;\n++position:+absolute;\n++width:+1px;\n}\n\n/*+give+"custom+radio+buttons"+a+different+appearance+when+none+of+the+radios+in+the+"radiogroup"+have+been+checked,+as+an+extra+"affordance"+for+accessibility+(see+#904)+*/\n.c-q-survey+[role=\'radiogroup\'].c-q-radio-group-unfilled+[role=\'radio\']+{\n++border:+2px+solid;\n++border-color:+var(--input-focus-color);\n}\n\n.c-q-input.c-q-input-text:focus-visible,+.c-q-input.c-q-input-select:focus-visible+{\n++outline-color:+var(--input-focus-color);\n++outline-width:+2px;\n++outline-style:+solid;\n}\n\n.c-q-survey+.c-q-a-sr-only-focusable+{\n++position:+static;\n++width:+auto;\n++height:+auto;\n++overflow:+visible;\n++clip:+auto;\n++white-space:+normal;\n}\n\n.c-q-survey+fieldset+{\n++min-width:+0;\n++padding:+0;\n++margin:+0;\n++border:+0;++\n}\n\n@keyframes+cqFadeIn+{\n++++from+{+opacity:+0;+}\n++++++to+{+opacity:+1;+}\n}\n@keyframes+cqFadeOut+{\n++++from+{+opacity:+1;+}\n++++++to+{+opacity:+0;+}\n}\n@keyframes+cqSlideIn+{\n++from+{+transform:+translateY(15%25);+}\n++++to+{+transform:+translateY(0);+}\n}\n@keyframes+cqSlideOut+{\n++++from+{+transform:+translateY(0);+}\n++++to+{+transform:+translateY(-10%25);+}\n}\n\n.c-q-modal-slide+{\n++display:+none;\n}\n\n.c-q-modal-slide.is-open+{\n++display:+block;\n}\n\n.c-q-modal-slide[aria-hidden="false"]+.c-q-modal-overlay+{\n++animation:+cqFadeIn+.35s+cubic-bezier(0.0,+0.0,+0.2,+1);\n}\n\n.c-q-modal-slide[aria-hidden="false"]+.c-q-modal-container+{\n++animation:+cqSlideIn+.35s+cubic-bezier(0,+0,+0.2,+1);\n}\n\n.c-q-modal-slide[aria-hidden="true"]+.c-q-modal-overlay+{\n++animation:+cqFadeOut+.35s+cubic-bezier(0.0,+0.0,+0.2,+1);\n}\n\n.c-q-modal-slide[aria-hidden="true"]+.c-q-modal-container+{\n++animation:+cqSlideOut+.35s+cubic-bezier(0,+0,+0.2,+1);\n}\n\n.c-q-modal-slide+.c-q-modal-container,\n.c-q-modal-slide+.c-q-modal-overlay+{\n++will-change:+transform;\n}</style><style+class=\'c-q-theme-style\'+data-survey=\'su-1cEok1WqEMLM\'+media=\'not+all\'+data-c-q-style-nonce>/*+CSS+Variables+used+by+Basic+Survey+Theme+*/\n.c-q-survey+{\n\n++++/*+general+colors+for+the+survey+UI+"chrome"+*/\n++++--bgcolor:+#fff;+/*+white+background+by+default+*/\n++++--text-color:+#444;+/*+dark+grey+text+*/\n++++--gray-1:+#333;\n++++--gray-2:+#777;\n++++--gray-3:+#aaa;\n++++--gray-4:+#c0c0c0;\n++++--gray-5:+#ddd;\n++\n++++/*+these+colors+affect+most+buttons+in+the+survey+*/\n++++--btn-primary-bgcolor:+#000000;+/*+submit+buttons,+etc+(navy+by+default)+*/\n++++--btn-primary-fgcolor:+#fff;+/*+white+*/\n++++--btn-secondary-bgcolor:+#010080;+/*+most+other+buttons+(navy+by+default)+*/\n++++--btn-secondary-fgcolor:+#fff;+/*+white+*/\n++\n++++/*+color+of+focus+outlines+for+numeric+rating+and+\'blocky+buttons\'+radios+*/\n++++--input-focus-color:+#219ebc;\n}\n\n.c-q-survey+.c-q-close-x+{\n++++color:+#000000;\n\n}\n.c-q-survey+.c-q-submit+button:disabled+{\n++++opacity:+0.9;\n}\n.c-q-radio-group+.c-q-field-option.c-q-radio-group-item+{\n++++align-items:+baseline+!important;\n}\n</style><aside+class="c-q-vars+c-q-survey+c-q-inline+c-q-animate-in+c-q-animate-out"+role="dialog"+aria-labelledby="c-q-field-id-sf_rkxuIoBSh0-label"+aria-modal="false"+id="_c_q_su_1cEok1WqEMLM">\n<div+class=\'c-q-container+c-q-survey-su-1cEok1WqEMLM+c-q-theme-st-iuMzbHF0lPetzE0\'><div+class=\'c-q-heading\'></div><form+class=\'c-q-survey+c-q-su-1cEok1WqEMLM\'>+<div+class=\'c-q-field+c-q-appear-anim\'+data-field="sf_rkxuIoBSh0"+class="{\'c-q-field-filled\':+values.sf_rkxuIoBSh0}"+rv-show="visible.sf_rkxuIoBSh0"><fieldset+class=\'c-q-options-fieldset\'>\n	<legend+id=\'c-q-field-id-sf_rkxuIoBSh0-label\'+class=\'c-q-field-label+c-q-field-title\'><span+data-lang-text=\'sf_rkxuIoBSh0.title\'>Kuinka+helppoa+ostaminen+oli?</span>+<span+class=\'c-q-field-subtitle\'+data-lang-text=\'sf_rkxuIoBSh0.subtitle\'>Auta+meitä+kehittämään+palvelua</span></legend>\n	<div+class=\'c-q-rating-stars-container\'>\n	<div+class=\'c-q-rating-stars+\'+>\n		<input+rv-checked=\'values.sf_rkxuIoBSh0+%7C+integer\'+data-field=\'sf_rkxuIoBSh0\'+rv-on-change=\'onFieldValue\'+type=\'radio\'+id=\'sf_rkxuIoBSh0_5\'+name=\'sf_rkxuIoBSh0\'+value=\'5\'/>\n<label+for=\'sf_rkxuIoBSh0_5\'+aria-label=\'5+Stars\'><span+class=\'c-q-a-sr-only\'+data-lang-text=\'a11y.emoticons-5-5\'+data-lang-label=\'a11y.emoticons-5-5\'>5+Stars</span>+<svg+aria-hidden="true"+focusable="false"+data-prefix="fas"+data-icon="smile"+role="img"+xmlns="http://www.w3.org/2000/svg"+viewBox="0+0+496+512"+class="c-q-emoticon"><path+fill="currentColor"+d="M259.3+17.8L194+150.2+47.9+171.5c-26.2+3.8-36.7+36.1-17.7+54.6l105.7+103-25+145.5c-4.5+26.3+23.2+46+46.4+33.7L288+439.6l130.7+68.7c23.2+12.2+50.9-7.4+46.4-33.7l-25-145.5+105.7-103c19-18.5+8.5-50.8-17.7-54.6L382+150.2+316.7+17.8c-11.7-23.6-45.6-23.9-57.4+0z"+class=""></path></svg>+</label><input+rv-checked=\'values.sf_rkxuIoBSh0+%7C+integer\'+data-field=\'sf_rkxuIoBSh0\'+rv-on-change=\'onFieldValue\'+type=\'radio\'+id=\'sf_rkxuIoBSh0_4\'+name=\'sf_rkxuIoBSh0\'+value=\'4\'/>\n<label+for=\'sf_rkxuIoBSh0_4\'+aria-label=\'4+Stars\'><span+class=\'c-q-a-sr-only\'+data-lang-text=\'a11y.emoticons-5-4\'+data-lang-label=\'a11y.emoticons-5-4\'>4+Stars</span>+<svg+aria-hidden="true"+focusable="false"+data-prefix="fas"+data-icon="smile"+role="img"+xmlns="http://www.w3.org/2000/svg"+viewBox="0+0+496+512"+class="c-q-emoticon"><path+fill="currentColor"+d="M259.3+17.8L194+150.2+47.9+171.5c-26.2+3.8-36.7+36.1-17.7+54.6l105.7+103-25+145.5c-4.5+26.3+23.2+46+46.4+33.7L288+439.6l130.7+68.7c23.2+12.2+50.9-7.4+46.4-33.7l-25-145.5+105.7-103c19-18.5+8.5-50.8-17.7-54.6L382+150.2+316.7+17.8c-11.7-23.6-45.6-23.9-57.4+0z"+class=""></path></svg>+</label><input+rv-checked=\'values.sf_rkxuIoBSh0+%7C+integer\'+data-field=\'sf_rkxuIoBSh0\'+rv-on-change=\'onFieldValue\'+type=\'radio\'+id=\'sf_rkxuIoBSh0_3\'+name=\'sf_rkxuIoBSh0\'+value=\'3\'/>\n<label+for=\'sf_rkxuIoBSh0_3\'+aria-label=\'3+Stars\'><span+class=\'c-q-a-sr-only\'+data-lang-text=\'a11y.emoticons-5-3\'+data-lang-label=\'a11y.emoticons-5-3\'>3+Stars</span>+<svg+aria-hidden="true"+focusable="false"+data-prefix="fas"+data-icon="smile"+role="img"+xmlns="http://www.w3.org/2000/svg"+viewBox="0+0+496+512"+class="c-q-emoticon"><path+fill="currentColor"+d="M259.3+17.8L194+150.2+47.9+171.5c-26.2+3.8-36.7+36.1-17.7+54.6l105.7+103-25+145.5c-4.5+26.3+23.2+46+46.4+33.7L288+439.6l130.7+68.7c23.2+12.2+50.9-7.4+46.4-33.7l-25-145.5+105.7-103c19-18.5+8.5-50.8-17.7-54.6L382+150.2+316.7+17.8c-11.7-23.6-45.6-23.9-57.4+0z"+class=""></path></svg>+</label><input+rv-checked=\'values.sf_rkxuIoBSh0+%7C+integer\'+data-field=\'sf_rkxuIoBSh0\'+rv-on-change=\'onFieldValue\'+type=\'radio\'+id=\'sf_rkxuIoBSh0_2\'+name=\'sf_rkxuIoBSh0\'+value=\'2\'/>\n<label+for=\'sf_rkxuIoBSh0_2\'+aria-label=\'2+Stars\'><span+class=\'c-q-a-sr-only\'+data-lang-text=\'a11y.emoticons-5-2\'+data-lang-label=\'a11y.emoticons-5-2\'>2+Stars</span>+<svg+aria-hidden="true"+focusable="false"+data-prefix="fas"+data-icon="smile"+role="img"+xmlns="http://www.w3.org/2000/svg"+viewBox="0+0+496+512"+class="c-q-emoticon"><path+fill="currentColor"+d="M259.3+17.8L194+150.2+47.9+171.5c-26.2+3.8-36.7+36.1-17.7+54.6l105.7+103-25+145.5c-4.5+26.3+23.2+46+46.4+33.7L288+439.6l130.7+68.7c23.2+12.2+50.9-7.4+46.4-33.7l-25-145.5+105.7-103c19-18.5+8.5-50.8-17.7-54.6L382+150.2+316.7+17.8c-11.7-23.6-45.6-23.9-57.4+0z"+class=""></path></svg>+</label><input+rv-checked=\'values.sf_rkxuIoBSh0+%7C+integer\'+data-field=\'sf_rkxuIoBSh0\'+rv-on-change=\'onFieldValue\'+type=\'radio\'+id=\'sf_rkxuIoBSh0_1\'+name=\'sf_rkxuIoBSh0\'+value=\'1\'/>\n<label+for=\'sf_rkxuIoBSh0_1\'+aria-label=\'1+Star\'><span+class=\'c-q-a-sr-only\'+data-lang-text=\'a11y.emoticons-5-1\'+data-lang-label=\'a11y.emoticons-5-1\'>1+Star</span>+<svg+aria-hidden="true"+focusable="false"+data-prefix="fas"+data-icon="smile"+role="img"+xmlns="http://www.w3.org/2000/svg"+viewBox="0+0+496+512"+class="c-q-emoticon"><path+fill="currentColor"+d="M259.3+17.8L194+150.2+47.9+171.5c-26.2+3.8-36.7+36.1-17.7+54.6l105.7+103-25+145.5c-4.5+26.3+23.2+46+46.4+33.7L288+439.6l130.7+68.7c23.2+12.2+50.9-7.4+46.4-33.7l-25-145.5+105.7-103c19-18.5+8.5-50.8-17.7-54.6L382+150.2+316.7+17.8c-11.7-23.6-45.6-23.9-57.4+0z"+class=""></path></svg>+</label>\n	</div>\n	<div+style=\'clear:both\'></div>\n</div>\n</fieldset></div>++<div+class=\'c-q-field+c-q-appear-anim\'+data-field="sf_eC32io3q8M"+class="{\'c-q-field-filled\':+values.sf_eC32io3q8M}"+rv-show="visible.sf_eC32io3q8M"><label+id=\'c-q-field-id-sf_eC32io3q8M-label\'+for=\'c-q-field-id-sf_eC32io3q8M\'+class=\'c-q-field-label+c-q-field-title\'><span+data-lang-text=\'sf_eC32io3q8M.title\'>Mikä+tilaamisessa+tuntui+hankalalta?</span>+<span+class=\'c-q-field-subtitle\'+data-lang-text=\'sf_eC32io3q8M.subtitle\'></span></label>\n<textarea+id=\'c-q-field-id-sf_eC32io3q8M\'+rv-value=\'values.sf_eC32io3q8M\'+rv-on-input=\'onFieldValue\'+data-field=\'sf_eC32io3q8M\'+type=\'text\'+class=\'c-q-input+c-q-input-text+\'++placeholder=\'Vastauksesi\'+rows=\'2\'></textarea></div>++<div+class=\'c-q-field+c-q-appear-anim\'+data-field="sf_fcQpMznG7D"+class="{\'c-q-field-filled\':+values.sf_fcQpMznG7D}"+rv-show="visible.sf_fcQpMznG7D"><label+id=\'c-q-field-id-sf_fcQpMznG7D-label\'+for=\'c-q-field-id-sf_fcQpMznG7D\'+class=\'c-q-field-label+c-q-field-title\'><span+data-lang-text=\'sf_fcQpMznG7D.title\'></span>+<span+class=\'c-q-field-subtitle\'+data-lang-text=\'sf_fcQpMznG7D.subtitle\'></span></label>\n<input+id=\'c-q-field-id-sf_fcQpMznG7D\'+type=\'hidden\'+x-model=\'values.sf_fcQpMznG7D\'></div>+++<div+class=\'c-q-submit\'+rv-show=\'buttonsVisible\'><div+class=\'c-q-steps\'><button+type=\'button\'+class=\'c-q-btn-prev+c-q-btn-secondary\'+rv-on-click=\'stepPrev\'+rv-enabled=\'stepPrevEnabled\'+rv-tabindex=\'stepPrevEnabled\'+rv-show=\'stepPrevVisible\'+data-lang-text=\'label.prev\'>Back</button>+<button+type=\'button\'+class=\'c-q-btn-next\'+rv-on-click=\'stepNext\'+rv-enabled=\'stepNextEnabled\'+rv-tabindex=\'stepNextEnabled\'+rv-show=\'stepNextVisible\'+data-lang-text=\'label.next\'>Next</button></div>+<button+type=\'button\'+class=\'c-q-submit-btn\'+rv-on-click=\'surveySubmit\'+rv-enabled=\'submitEnabled\'+rv-tabindex=\'submitEnabled\'+rv-show=\'submitVisible\'+data-lang-text=\'label.submit\'>Lähetä</button></div></form><button+type=\'button\'+class=\'c-q-close-x\'+rv-on-click=\'surveyClose\'+aria-label=\'Close+Survey\'+data-lang-label=\'a11y.survey-close\'></button></div>\n</aside>|values|auto_submit|steps|numeric|${dl::page.pageInfo.pageName}|wa-survey-submit|value_trait_map|assoc|q_names|q_vals|sel_g|https://www.hs.fi/u/oma/tilaa/kiitos/hs-|sw-not|https://www.hs.fi/u/oma/tilaa/kiitos/hs-digi-nayte|.ticker.ticker--promo-10|js-HyjG44fKq0PwABQSsP9u-1726217370|${targ.cust/isSubscriber}|isnt|Subscriber|${v.sels::a-D4ZV8DTG86::c}|wa-macro|macro|cm-baMuJpVcDqrZoFeioEgT|oldTickerText|HS+Digi+maksutta+kuukaudeksi.+Voit+irtisanoa+tilauksen+koska+tahansa.|aid|ABC|pagePath|/asdf|days|30|cycloneDays|180|newText|Lue+maksutta+p.k.+asti.+Voit+jatkaa+-50+%25+hinnalla+d.m.+asti.|debugging|.ab-test-nav-profile-button|js-XIocLrJLNX94jLuSenSQ-1727874134|${targ.cust/isLoggedIn}|LoggedIn|31|${v.sels::a-hzYzlUnhDH::c}|js-WzEdgyKyh8OFgTnwCfE0-1730893819|${dl::page.themetags}|sub-not|Ukrainan|${v.sels::a-CuvFeWKeoT::c}|js-n7tENWaxEdGhjkJiS4Dc-1727767963|cust/al_p2p_lightgbm|cust/sk_p2p_satakunnankansa_lightgbm|cust/hs-pe-front|cust/dont-show-ads|js-a2py3iSlPvPprKhZEwAc-1727768866|js-qv7B6CyVUSQ3aA4sqRCd-1732264930|www.hs.fi+all|js_id|js-clyBGosbOwjWekUJtlnL|js-H0IG0pjG57SZDdRWgK2X-1732277208|${v.sels::a-ZlXJtDXr5t::c}|js-xxxdldtcM437KDOxUyLG-1724140755|hs.fi|${v.sels::a-DmWe1dbaXQ::c}|su-6SWS7m7zpPOZ|sf_mj077oKM7K|Kuinka+helppoa+ostaminen+oli?|Auta+meitä+kehittämään+palvelua|sf_YMBPLKvQNJ|Mikä+tilaamisessa+tuntui+hankalalta?|${qfv::sf_mj077oKM7K}|sf_uJufJhpNaF|_c_q_su_6SWS7m7zpPOZ|<style+class=\'c-q-theme-style\'+data-survey=\'su-6SWS7m7zpPOZ\'+media=\'not+all\'+data-c-q-style-nonce>/*+CSS+Variables+used+by+Basic+Survey+Theme+*/\n.c-q-vars+{\n\n++/*+general+colors+for+the+survey+UI+"chrome"+*/\n++--bgcolor:+#fff;+/*+white+background+by+default+*/\n++--text-color:+#444;+/*+dark+grey+text+*/\n++--gray-1:+#333;\n++--gray-2:+#777;\n++--gray-3:+#aaa;\n++--gray-4:+#c0c0c0;\n++--gray-5:+#ddd;\n\n++/*+these+colors+affect+most+buttons+in+the+survey+*/\n++--btn-primary-bgcolor:+#010080;+/*+submit+buttons,+etc+(navy+by+default)+*/\n++--btn-primary-fgcolor:+#fff;+/*+white+*/\n++--btn-secondary-bgcolor:+#010080;+/*+most+other+buttons+(navy+by+default)+*/\n++--btn-secondary-fgcolor:+#fff;+/*+white+*/\n\n++/*+color+of+focus+outlines+for+numeric+rating+and+\'blocky+buttons\'+radios+*/\n++--input-focus-color:+#bf90ff;\n\n++/*+should+most+survey+content+be+centered+or+left-aligned?+*/\n++--align-horiz:+left;+/*+\'center\'+likely+better+if+multiple+questions+*/\n\n++/*+control+over+the+animation+used+to+show/hide+the+survey+*/\n++--anim-enter-duration:+0.5s;+/*+how+fast+should+the+survey+fade/slide+in?+*/\n++--anim-exit-duration:+0.5s;+/*+how+fast+should+the+survey+fade/slide+out?+*/\n++--anim-enter-delay:+0s;+/*+don\'t+use+this+to+delay+when+the+survey+appears+*/\n++--anim-exit-delay:+0.5s;+/*+a+small+delay+here+feels+more+natural+*/\n\n++/*+colors+for+the+"smiley/frowny"+question+type+*/\n++--btn-rating-icon-color-1:+#f51120;+/*+red++*/\n++--btn-rating-icon-color-2:+#fd870d;+/*+orange+*/\n++--btn-rating-icon-color-3:+#ffca3d;+/*+neutral+yellow+*/\n++--btn-rating-icon-color-4:+#77d62f;+/*+light+green+*/\n++--btn-rating-icon-color-5:+#37b647;+/*+dark+green+*/\n++--btn-rating-icon-color-n:+cadetblue;+/*+neutral+color+*/\n}\n\n/*+\n++show+survey+"inline"+(as+opposed+to+in+a+"modal"+overlay)+\n++(this+is+the+"small+screen"+version,+see+@media+block+below+for+larger)\n*/\n.c-q-survey.c-q-inline+{\n++++/*+position+-+"docked"+10px+from+bottom+of+page+*/\n++++position:+fixed;\n++++bottom:+10px;\n++++margin-left:+10px;\n++++margin-right:+10px;\n++++z-index:+2147483647;\n++++/*+size+*/\n++++min-width:+250px;\n++++width:+calc(100%25+-+20px);\n++++height:+auto;\n++++box-sizing:+border-box;\n++++/*+styling+*/\n++++background-color:+var(--bgcolor);\n++++border:+2px+solid;\n++++border-color:+var(--gray-3);\n++++border-radius:+5px;\n++++padding:+15px+20px;\n++++filter:+drop-shadow(2px+2px+2px+var(--gray-4));\n}\n/*+show+survey+"inline"+-+overrides+for+non-small+screens+*/\n@media+screen+and+(min-width:+600px)+{\n++.c-q-survey.c-q-inline+{\n++++bottom:+20px;\n++++left:+0;\n++++right:+0;\n++++margin:+auto;\n++++width:+50%25;\n++++min-width:+550px;\n++++max-width:+850px;\n++}\n}\n/*+entrance+animation+*/\n.c-q-survey.c-q-inline.c-q-animate-in:not(.c-q-submitted)+{\n++++animation:+c-q-fadeIn+var(--anim-enter-duration)+ease+backwards;\n++++animation-delay:+var(--anim-enter-delay);\n}\n/*+exit/hide+animation+*/+\n.c-q-survey.c-q-inline.c-q-animate-out.c-q-submitted+{\n++++animation:+c-q-fadeOut+var(--anim-exit-duration)+ease+forwards;\n++++animation-delay:+var(--anim-exit-delay);\n}\n\n@keyframes+c-q-fadeIn+{\n++from+{opacity:0;+transform:+translateY(80px)+translateX(0);}\n++to+{opacity:1;+transform:+translateY(0)+translateX(0)}\n}\n@keyframes+c-q-fadeOut+{\n++from+{opacity:1;+visibility:+visible;+transform:+translateY(0)+translateX(0);++}\n++to+{opacity:0;+visibility:+hidden;+transform:+translate3d(0,+100%25,+0);+}\n}\n\n@keyframes+c-q-appear+{\n++from+{opacity:0;+visibility:+hidden;+}\n++to+{opacity:1;+visibility:+visible;+}\n}\n\n.c-q-appear-anim+{\n++animation:+c-q-appear+var(--anim-enter-duration)+ease+backwards;\n}\n\n.c-q-heading+{\n++background-repeat:+no-repeat;\n++background-position:+center;\n++background-size:+contain;\n++margin-bottom:+10px;\n++color:+var(--text-color);\n}\n\n.c-q-farewell+{\n++text-align:+center;\n++font-size:+15px;\n++padding:+15px+10px;\n}\n\n/*+Basic+survey+theme+*/\n.c-q-field+{\n++display:+block;\n++margin-bottom:+10px;\n}\n.c-q-survey+.c-q-field-label+{\n++font-size:+14px;\n++display:+block;\n++color:+var(--text-color);\n++margin-bottom:+5px;\n++text-align:+var(--align-horiz);\n++border:+none;\n++font-weight:+500;\n}\n\n.c-q-field-subtitle+{\n++display:+block;\n++color:+var(--gray-2);\n}\n\n\n/*+for+randomizing+the+order+of+field+options/answers,+CSS+\'order\'+property+*/\n/*+NOTE:+possibly+these+should+apply+to+all+radio+buttons,+as+opposed+to+just+randomly-ordered+ones+*/\n.c-q-has-random-items+{\n++display:+flex;+/*+so+CSS+\'order\'+property+(set+at+runtime)+will+have+an+effect+*/\n++flex-wrap:+wrap;\n}\n.c-q-has-random-items+.c-q-field-option+{\n++display:+flex;\n++width:+100%25;+/*+so+each+option+takes+up+a+whole+line+*/\n}\n.c-q-has-random-items+.c-q-field-option.c-q-radio-group-item+{\n++align-items:+start;+/*+for+alignment+of+radio+button+to+its+label+*/\n}\n\n\n/*+normal+text+inputs/textareas+*/\n.c-q-input-text+{\n++width:+100%25;\n++padding:+2px+5px;\n++border-color:+var(--gray-2);\n++border-radius:+4px;\n}\n.c-q-input-text:focus+{\n++outline:+none;\n}\n/*+normal+checks/radios+*/\n.c-q-radio-group,+.c-q-check-group+{\n++margin-bottom:+10px;\n}\n.c-q-radio-label,+.c-q-check-label+{\n++padding-left:+4px;\n++margin-bottom:+0;\n}\n\n.c-q-html-check+{\n++opacity:+0;\n++position:+fixed;\n++width:+0;\n}\n.c-q-html-label+{\n++margin-bottom:+10px;\n}\n.c-q-html-group+{\n}\n\n/*+submit+button+*/\n.c-q-steps+{\n++display:+inline-block;\n}\n.c-q-submit+{\n++margin-top:+5px;\n++text-align:+var(--align-horiz);\n}\n.c-q-submit+button+{\n++background-color:+var(--btn-primary-bgcolor);\n++color:+var(--btn-primary-fgcolor);\n++border-radius:+4px;\n++border-color:+var(--btn-primary-bgcolor);\n++border-style:+solid;\n++padding:+5px+10px;\n++box-sizing:+border-box;\n++border-width:+1px;\n++cursor:+pointer;\n++margin:+0;\n++text-align:+center;\n++text-decoration:+none;\n++font-size:+16px;\n++padding:+8px+20px;\n}\n.c-q-submit+button:disabled+{\n++opacity:+0.6;\n++cursor:+not-allowed;\n}\n.c-q-submit+button.c-q-btn-secondary+{\n++background-color:+var(--btn-primary-fgcolor);\n++color:+var(--btn-primary-bgcolor);\n}\nbutton.c-q-btn-prev:before+{\n++content:+\'‹\';\n++padding-right:+5px;\n}\nbutton.c-q-btn-next:after+{\n++content:+\'›\';\n++padding-left:+5px;\n}\n\n/*+dismiss+button,+styled+as+an+"X"+at+top+right+*/\n.c-q-close-x+{\n++position:+absolute;\n++top:+0;\n++right:+0;\n++color:+var(--gray-2);\n++font-size:+20px;\n++font-family:+sans-serif;\n++padding:+10px;\n++background-color:+var(--bgcolor);\n++border:+none;\n++cursor:+pointer;\n}\n.c-q-close-x:before+{\n++content:++"⨂";\n}\n\n/*+SPECIAL+INPUT+STYLE:+Radio+buttons,+styled+as+\'blocky+buttons\',+styled+via+a+similar+approach+as+.custom-control+radios+in+bootstrap+*/\n.c-q-radio-group.c-q-radio-group-buttons+input[type=\'radio\']+{\n++opacity:+0;\n++position:+fixed;\n++width:+0;\n}\n.c-q-radio-group.c-q-radio-group-buttons+label+{\n++++display:+inline-block;\n++++background-color:+var(--bgcolor);\n++++padding:+3px+9px;\n++++border:+2px+solid;\n++++border-color:+var(--gray-3);\n++++border-radius:+5px;\n++++margin:+2px;\n++++cursor:+pointer;\n++++color:+var(--gray-1);\n++++width:+100%25;\n}\n.c-q-radio-group.c-q-radio-group-buttons+input[type="radio"]:checked+%2B+label+{\n++color:+var(--btn-primary-fgcolor);\n++background-color:+var(--btn-secondary-bgcolor);\n++border-color:+var(--btn-secondary-bgcolor);\n}\n.c-q-radio-group.c-q-radio-group-buttons+input[type="radio"]:focus+%2B+label+{\n++border-color:+var(--input-focus-color);\n}\n.c-q-radio-group.c-q-radio-group-buttons+>+.c-q-radio-group-item+{\n++text-align:+var(--align-horiz);\n}\n.c-q-btn,.c-q-close-x,+.c-q-submit+button+{\n++outline-color:+var(--input-focus-color);\n}\n\n\n/*+SPECIAL+INPUT+STYLE:+Checkbox+buttons,+styled+as+\'blocky+buttons\',+styled+via+a+similar+approach+as+.custom-control+radios+in+bootstrap+*/\n.c-q-check-group.c-q-check-group-buttons+input[type=\'checkbox\']+{\n++opacity:+0;\n++position:+fixed;\n++width:+0;\n}\n.c-q-check-group.c-q-check-group-buttons+label+{\n++++display:+inline-block;\n++++background-color:+var(--bgcolor);\n++++padding:+3px+9px;\n++++border:+1px+solid;\n++++border-color:+var(--gray-3);\n++++border-radius:+5px;\n++++margin:+2px;\n++++cursor:+pointer;\n++++color:+var(--gray-1);\n++++width:+100%25;\n++++font-size:+16px;\n}\n.c-q-check-group.c-q-check-group-buttons+input[type="checkbox"]:checked+%2B+label+{\n++color:+var(--btn-primary-fgcolor);\n++background-color:+var(--btn-secondary-bgcolor);\n++border-color:+var(--btn-secondary-bgcolor);\n}\n.c-q-check-group.c-q-check-group-buttons+>+.c-q-check-group-item+{\n++text-align:+var(--align-horiz);\n}\n\n\n.c-q-rating-label-before,+.c-q-rating-label-after+{\n++++padding:+5px;\n}\n\n.c-q-survey+fieldset.c-q-options-fieldset+{\n++display:+block;+/*+TODO+-+was+display:contents+but+resulted+in+uncentered+text+*/\n}\n\n/*+SPECIAL+INPUT+TYPE:+"rating+dots"+(radio+buttons,+styled+via+a+similar+approach+as+.custom-control+radios+in+bootstrap)+*/\n.c-q-rating-radios+{\n++white-space:+nowrap;\n++display:+flex;\n++align-items:+center;\n}\n.c-q-rating-radios+input[type=\'radio\']+{\n++opacity:+0;\n++position:+fixed;\n++width:+0;\n}\n.c-q-rating-radios+label+{\n++display:+inline-block;\n++background-color:+var(--bgcolor);\n++font-size:+16px;\n++border:+2px+solid+var(--gray-3);\n++border-radius:+50px;\n++margin:+2px;\n++cursor:+pointer;\n++color:+var(--gray-1);\n++flex-grow:+1;\n++text-align:+center;\n++padding-bottom:+4px;\n++padding-top:+4px;\n}\n@media+screen+and+(min-width:+600px)+{\n++.c-q-rating-radios+label+{\n++++padding-top:+8px;\n++++padding-bottom:+8px;\n++}\n}\n.c-q-rating-radios+input[type="radio"]:checked+%2B+label+{\n++background-color:+var(--gray-1);\n++color:+var(--bgcolor);\n}\n.c-q-rating-radios+input[type="radio"]:focus+%2B+label+{\n++border-color:+var(--input-focus-color);\n}\n\n/*+SPECIAL+INPUT+TYPE:+"smileys"+/+emoticons+(radio+buttons,+styled+via+a+similar+approach+as+.custom-control+radios+in+bootstrap)+*/\n.c-q-rating-icons+{\n++text-align:+var(--align-horiz);\n}\n.c-q-rating-icons+input[type=\'radio\']+{\n++opacity:+0;\n++position:+fixed;\n++width:+0;\n}\n.c-q-rating-icons+label+{\n++display:+inline-block;\n++background-color:+var(--bgcolor);\n++cursor:+pointer;\n++color:+var(--gray-1);\n++border:+2px+solid;\n++border-color:+var(--bgcolor);\n++font-size:+40px;\n++border-radius:+50px;\n++line-height:+55px;\n++padding:+0+8px;\n}\n/*+colors+for+each+radio+*/\n.c-q-rating-icons.c-q-rating-icons-colors+label.c-q-rating-icons-label-1+{\n++color:+var(--btn-rating-icon-color-1);\n}\n.c-q-rating-icons.c-q-rating-icons-colors+label.c-q-rating-icons-label-2+{\n++color:+var(--btn-rating-icon-color-2);\n}\n.c-q-rating-icons.c-q-rating-icons-colors+label.c-q-rating-icons-label-3+{\n++color:+var(--btn-rating-icon-color-3);\n}\n.c-q-rating-icons.c-q-rating-icons-colors+label.c-q-rating-icons-label-4+{\n++color:+var(--btn-rating-icon-color-4);\n}\n.c-q-rating-icons.c-q-rating-icons-colors+label.c-q-rating-icons-label-5+{\n++color:+var(--btn-rating-icon-color-5);\n}\n.c-q-rating-icons.c-q-rating-icons-neutral+label+{\n++color:+var(--btn-rating-icon-color-n);\n}\n\n/*+show+the+border+for+the+selected+radio+*/\n.c-q-rating-icons+input[type="radio"]:checked+%2B+label+{\n++border-color:+unset;\n}\n/*+use+a+dim+color+for+the+other+radios+(after+one+is+selected)+*/\n.c-q-field-filled+.c-q-rating-icons+input[type="radio"]:not(:checked)+%2B+label+{\n++color:+#33333363;\n}\n/*+the+emoticon+itself+*/\n.c-q-emoticon+{\n++overflow:+visible;\n++width:+1em;\n++height:+1em;\n++display:+inline-block;\n++vertical-align:+-0.125em;\n}\n\n\n/*+SPECIAL+INPUT+TYPE:+"1-5+Stars"+styled+rating+widgets+*/\n.c-q-rating-stars-container+{\n++display:+flex;\n++justify-content:+var(--align-horiz);\n}\n.c-q-rating-stars+{+\n++font-size:+38px;\n++border:+none;\n++float:+left;\n}\n.c-q-rating-stars+>+label+>+svg+{\n++overflow:+visible;\n}\n.c-q-rating-stars+>+input+{+\n++display:+none;+/*+hide+"normal"+radio+ui+*/\n}\n.c-q-rating-stars+>+label+{+\n++color:+var(--gray-5);+\n++float:+right;+\n++padding-right:+10px;\n++background-color:+unset+!important;+/*+in+case+host+page+defines+a+background+color+for+radio+labels+*/\n}\n.c-q-rating-stars+>+input:checked+~+label,+/*+show+gold+star+when+clicked+*/\n.c-q-rating-stars:not(:checked)+>+label:hover,+/*+hover+current+star+*/\n.c-q-rating-stars:not(:checked)+>+label:hover+~+label+{+color:+#FFD700;++}+/*+hover+previous+stars+in+list+*/\n\n.c-q-rating-stars+>+input:checked+%2B+label:hover,+/*+hover+current+star+when+changing+rating+*/\n.c-q-rating-stars+>+input:checked+~+label:hover,\n.c-q-rating-stars+>+label:hover+~+input:checked+~+label,+/*+lighten+current+selection+*/\n.c-q-rating-stars+>+input:checked+~+label:hover+~+label+{+color:+#FFED85;++}+\n\n\n/*+when+the+survey+is+displayed+in+a+"modal"+overlay/dialog+*/\n.c-q-modal+{\n++display:+none;\n++position:+relative;\n++font-family:+-apple-system,BlinkMacSystemFont,avenir+next,avenir,helvetica+neue,helvetica,ubuntu,roboto,noto,segoe+ui,arial,sans-serif;\n}\n.c-q-modal.is-open+{\n++display:+block;\n++z-index:+9999;\n}\n.c-q-modal-overlay+{\n++position:+fixed;\n++top:+0;\n++left:+0;\n++right:+0;\n++bottom:+0;\n++background:+rgba(0,0,0,0.2);\n++display:+flex;\n++justify-content:+center;\n++align-items:+center;\n}\n.c-q-modal-container+{\n++background-color:+var(--bgcolor);\n++padding:+30px;\n++max-width:+700px;\n++max-height:+100vh;\n++border-radius:+6px;\n++overflow-y:+auto;\n++box-sizing:+border-box;\n++border:+1px+solid+rgba(0,0,0,0.5);\n++box-shadow:+0+3px+7px+rgb(0+0+0+/+30%25);\n++opacity:+1;\n++position:+relative;\n}\n\n.c-q-survey+.c-q-a-sr-only,+.c-q-survey+.c-q-radio-group-focus+{\n++border:+0;\n++clip:+rect(0+0+0+0);\n++height:+1px;\n++margin:+-1px;\n++overflow:+hidden;\n++padding:+0;\n++position:+absolute;\n++width:+1px;\n}\n\n/*+give+"custom+radio+buttons"+a+different+appearance+when+none+of+the+radios+in+the+"radiogroup"+have+been+checked,+as+an+extra+"affordance"+for+accessibility+(see+#904)+*/\n.c-q-survey+[role=\'radiogroup\'].c-q-radio-group-unfilled+[role=\'radio\']+{\n++border:+2px+solid;\n++border-color:+var(--input-focus-color);\n}\n\n.c-q-input.c-q-input-text:focus-visible,+.c-q-input.c-q-input-select:focus-visible+{\n++outline-color:+var(--input-focus-color);\n++outline-width:+2px;\n++outline-style:+solid;\n}\n\n.c-q-survey+.c-q-a-sr-only-focusable+{\n++position:+static;\n++width:+auto;\n++height:+auto;\n++overflow:+visible;\n++clip:+auto;\n++white-space:+normal;\n}\n\n.c-q-survey+fieldset+{\n++min-width:+0;\n++padding:+0;\n++margin:+0;\n++border:+0;++\n}\n\n@keyframes+cqFadeIn+{\n++++from+{+opacity:+0;+}\n++++++to+{+opacity:+1;+}\n}\n@keyframes+cqFadeOut+{\n++++from+{+opacity:+1;+}\n++++++to+{+opacity:+0;+}\n}\n@keyframes+cqSlideIn+{\n++from+{+transform:+translateY(15%25);+}\n++++to+{+transform:+translateY(0);+}\n}\n@keyframes+cqSlideOut+{\n++++from+{+transform:+translateY(0);+}\n++++to+{+transform:+translateY(-10%25);+}\n}\n\n.c-q-modal-slide+{\n++display:+none;\n}\n\n.c-q-modal-slide.is-open+{\n++display:+block;\n}\n\n.c-q-modal-slide[aria-hidden="false"]+.c-q-modal-overlay+{\n++animation:+cqFadeIn+.35s+cubic-bezier(0.0,+0.0,+0.2,+1);\n}\n\n.c-q-modal-slide[aria-hidden="false"]+.c-q-modal-container+{\n++animation:+cqSlideIn+.35s+cubic-bezier(0,+0,+0.2,+1);\n}\n\n.c-q-modal-slide[aria-hidden="true"]+.c-q-modal-overlay+{\n++animation:+cqFadeOut+.35s+cubic-bezier(0.0,+0.0,+0.2,+1);\n}\n\n.c-q-modal-slide[aria-hidden="true"]+.c-q-modal-container+{\n++animation:+cqSlideOut+.35s+cubic-bezier(0,+0,+0.2,+1);\n}\n\n.c-q-modal-slide+.c-q-modal-container,\n.c-q-modal-slide+.c-q-modal-overlay+{\n++will-change:+transform;\n}</style><style+class=\'c-q-theme-style\'+data-survey=\'su-6SWS7m7zpPOZ\'+media=\'not+all\'+data-c-q-style-nonce>/*+CSS+Variables+used+by+Basic+Survey+Theme+*/\n.c-q-survey+{\n\n++++/*+general+colors+for+the+survey+UI+"chrome"+*/\n++++--bgcolor:+#fff;+/*+white+background+by+default+*/\n++++--text-color:+#444;+/*+dark+grey+text+*/\n++++--gray-1:+#333;\n++++--gray-2:+#777;\n++++--gray-3:+#aaa;\n++++--gray-4:+#c0c0c0;\n++++--gray-5:+#ddd;\n++\n++++/*+these+colors+affect+most+buttons+in+the+survey+*/\n++++--btn-primary-bgcolor:+#000000;+/*+submit+buttons,+etc+(navy+by+default)+*/\n++++--btn-primary-fgcolor:+#fff;+/*+white+*/\n++++--btn-secondary-bgcolor:+#010080;+/*+most+other+buttons+(navy+by+default)+*/\n++++--btn-secondary-fgcolor:+#fff;+/*+white+*/\n++\n++++/*+color+of+focus+outlines+for+numeric+rating+and+\'blocky+buttons\'+radios+*/\n++++--input-focus-color:+#219ebc;\n}\n\n.c-q-survey+.c-q-close-x+{\n++++color:+#000000;\n\n}\n.c-q-survey+.c-q-submit+button:disabled+{\n++++opacity:+0.9;\n}\n.c-q-radio-group+.c-q-field-option.c-q-radio-group-item+{\n++++align-items:+baseline+!important;\n}\n</style><aside+class="c-q-vars+c-q-survey+c-q-inline+c-q-animate-in+c-q-animate-out"+role="dialog"+aria-labelledby="c-q-field-id-sf_mj077oKM7K-label"+aria-modal="false"+id="_c_q_su_6SWS7m7zpPOZ">\n<div+class=\'c-q-container+c-q-survey-su-6SWS7m7zpPOZ+c-q-theme-st-iuMzbHF0lPetzE0\'><div+class=\'c-q-heading\'></div><form+class=\'c-q-survey+c-q-su-6SWS7m7zpPOZ\'>+<div+class=\'c-q-field+c-q-appear-anim\'+data-field="sf_mj077oKM7K"+class="{\'c-q-field-filled\':+values.sf_mj077oKM7K}"+rv-show="visible.sf_mj077oKM7K"><fieldset+class=\'c-q-options-fieldset\'>\n	<legend+id=\'c-q-field-id-sf_mj077oKM7K-label\'+class=\'c-q-field-label+c-q-field-title\'><span+data-lang-text=\'sf_mj077oKM7K.title\'>Kuinka+helppoa+ostaminen+oli?</span>+<span+class=\'c-q-field-subtitle\'+data-lang-text=\'sf_mj077oKM7K.subtitle\'>Auta+meitä+kehittämään+palvelua</span></legend>\n	<div+class=\'c-q-rating-stars-container\'>\n	<div+class=\'c-q-rating-stars+\'+>\n		<input+rv-checked=\'values.sf_mj077oKM7K+%7C+integer\'+data-field=\'sf_mj077oKM7K\'+rv-on-change=\'onFieldValue\'+type=\'radio\'+id=\'sf_mj077oKM7K_5\'+name=\'sf_mj077oKM7K\'+value=\'5\'/>\n<label+for=\'sf_mj077oKM7K_5\'+aria-label=\'5+Stars\'><span+class=\'c-q-a-sr-only\'+data-lang-text=\'a11y.emoticons-5-5\'+data-lang-label=\'a11y.emoticons-5-5\'>5+Stars</span>+<svg+aria-hidden="true"+focusable="false"+data-prefix="fas"+data-icon="smile"+role="img"+xmlns="http://www.w3.org/2000/svg"+viewBox="0+0+496+512"+class="c-q-emoticon"><path+fill="currentColor"+d="M259.3+17.8L194+150.2+47.9+171.5c-26.2+3.8-36.7+36.1-17.7+54.6l105.7+103-25+145.5c-4.5+26.3+23.2+46+46.4+33.7L288+439.6l130.7+68.7c23.2+12.2+50.9-7.4+46.4-33.7l-25-145.5+105.7-103c19-18.5+8.5-50.8-17.7-54.6L382+150.2+316.7+17.8c-11.7-23.6-45.6-23.9-57.4+0z"+class=""></path></svg>+</label><input+rv-checked=\'values.sf_mj077oKM7K+%7C+integer\'+data-field=\'sf_mj077oKM7K\'+rv-on-change=\'onFieldValue\'+type=\'radio\'+id=\'sf_mj077oKM7K_4\'+name=\'sf_mj077oKM7K\'+value=\'4\'/>\n<label+for=\'sf_mj077oKM7K_4\'+aria-label=\'4+Stars\'><span+class=\'c-q-a-sr-only\'+data-lang-text=\'a11y.emoticons-5-4\'+data-lang-label=\'a11y.emoticons-5-4\'>4+Stars</span>+<svg+aria-hidden="true"+focusable="false"+data-prefix="fas"+data-icon="smile"+role="img"+xmlns="http://www.w3.org/2000/svg"+viewBox="0+0+496+512"+class="c-q-emoticon"><path+fill="currentColor"+d="M259.3+17.8L194+150.2+47.9+171.5c-26.2+3.8-36.7+36.1-17.7+54.6l105.7+103-25+145.5c-4.5+26.3+23.2+46+46.4+33.7L288+439.6l130.7+68.7c23.2+12.2+50.9-7.4+46.4-33.7l-25-145.5+105.7-103c19-18.5+8.5-50.8-17.7-54.6L382+150.2+316.7+17.8c-11.7-23.6-45.6-23.9-57.4+0z"+class=""></path></svg>+</label><input+rv-checked=\'values.sf_mj077oKM7K+%7C+integer\'+data-field=\'sf_mj077oKM7K\'+rv-on-change=\'onFieldValue\'+type=\'radio\'+id=\'sf_mj077oKM7K_3\'+name=\'sf_mj077oKM7K\'+value=\'3\'/>\n<label+for=\'sf_mj077oKM7K_3\'+aria-label=\'3+Stars\'><span+class=\'c-q-a-sr-only\'+data-lang-text=\'a11y.emoticons-5-3\'+data-lang-label=\'a11y.emoticons-5-3\'>3+Stars</span>+<svg+aria-hidden="true"+focusable="false"+data-prefix="fas"+data-icon="smile"+role="img"+xmlns="http://www.w3.org/2000/svg"+viewBox="0+0+496+512"+class="c-q-emoticon"><path+fill="currentColor"+d="M259.3+17.8L194+150.2+47.9+171.5c-26.2+3.8-36.7+36.1-17.7+54.6l105.7+103-25+145.5c-4.5+26.3+23.2+46+46.4+33.7L288+439.6l130.7+68.7c23.2+12.2+50.9-7.4+46.4-33.7l-25-145.5+105.7-103c19-18.5+8.5-50.8-17.7-54.6L382+150.2+316.7+17.8c-11.7-23.6-45.6-23.9-57.4+0z"+class=""></path></svg>+</label><input+rv-checked=\'values.sf_mj077oKM7K+%7C+integer\'+data-field=\'sf_mj077oKM7K\'+rv-on-change=\'onFieldValue\'+type=\'radio\'+id=\'sf_mj077oKM7K_2\'+name=\'sf_mj077oKM7K\'+value=\'2\'/>\n<label+for=\'sf_mj077oKM7K_2\'+aria-label=\'2+Stars\'><span+class=\'c-q-a-sr-only\'+data-lang-text=\'a11y.emoticons-5-2\'+data-lang-label=\'a11y.emoticons-5-2\'>2+Stars</span>+<svg+aria-hidden="true"+focusable="false"+data-prefix="fas"+data-icon="smile"+role="img"+xmlns="http://www.w3.org/2000/svg"+viewBox="0+0+496+512"+class="c-q-emoticon"><path+fill="currentColor"+d="M259.3+17.8L194+150.2+47.9+171.5c-26.2+3.8-36.7+36.1-17.7+54.6l105.7+103-25+145.5c-4.5+26.3+23.2+46+46.4+33.7L288+439.6l130.7+68.7c23.2+12.2+50.9-7.4+46.4-33.7l-25-145.5+105.7-103c19-18.5+8.5-50.8-17.7-54.6L382+150.2+316.7+17.8c-11.7-23.6-45.6-23.9-57.4+0z"+class=""></path></svg>+</label><input+rv-checked=\'values.sf_mj077oKM7K+%7C+integer\'+data-field=\'sf_mj077oKM7K\'+rv-on-change=\'onFieldValue\'+type=\'radio\'+id=\'sf_mj077oKM7K_1\'+name=\'sf_mj077oKM7K\'+value=\'1\'/>\n<label+for=\'sf_mj077oKM7K_1\'+aria-label=\'1+Star\'><span+class=\'c-q-a-sr-only\'+data-lang-text=\'a11y.emoticons-5-1\'+data-lang-label=\'a11y.emoticons-5-1\'>1+Star</span>+<svg+aria-hidden="true"+focusable="false"+data-prefix="fas"+data-icon="smile"+role="img"+xmlns="http://www.w3.org/2000/svg"+viewBox="0+0+496+512"+class="c-q-emoticon"><path+fill="currentColor"+d="M259.3+17.8L194+150.2+47.9+171.5c-26.2+3.8-36.7+36.1-17.7+54.6l105.7+103-25+145.5c-4.5+26.3+23.2+46+46.4+33.7L288+439.6l130.7+68.7c23.2+12.2+50.9-7.4+46.4-33.7l-25-145.5+105.7-103c19-18.5+8.5-50.8-17.7-54.6L382+150.2+316.7+17.8c-11.7-23.6-45.6-23.9-57.4+0z"+class=""></path></svg>+</label>\n	</div>\n	<div+style=\'clear:both\'></div>\n</div>\n</fieldset></div>++<div+class=\'c-q-field+c-q-appear-anim\'+data-field="sf_YMBPLKvQNJ"+class="{\'c-q-field-filled\':+values.sf_YMBPLKvQNJ}"+rv-show="visible.sf_YMBPLKvQNJ"><label+id=\'c-q-field-id-sf_YMBPLKvQNJ-label\'+for=\'c-q-field-id-sf_YMBPLKvQNJ\'+class=\'c-q-field-label+c-q-field-title\'><span+data-lang-text=\'sf_YMBPLKvQNJ.title\'>Mikä+tilaamisessa+tuntui+hankalalta?</span>+<span+class=\'c-q-field-subtitle\'+data-lang-text=\'sf_YMBPLKvQNJ.subtitle\'></span></label>\n<textarea+id=\'c-q-field-id-sf_YMBPLKvQNJ\'+rv-value=\'values.sf_YMBPLKvQNJ\'+rv-on-input=\'onFieldValue\'+data-field=\'sf_YMBPLKvQNJ\'+type=\'text\'+class=\'c-q-input+c-q-input-text+\'++placeholder=\'Vastauksesi\'+rows=\'2\'></textarea></div>++<div+class=\'c-q-field+c-q-appear-anim\'+data-field="sf_uJufJhpNaF"+class="{\'c-q-field-filled\':+values.sf_uJufJhpNaF}"+rv-show="visible.sf_uJufJhpNaF"><label+id=\'c-q-field-id-sf_uJufJhpNaF-label\'+for=\'c-q-field-id-sf_uJufJhpNaF\'+class=\'c-q-field-label+c-q-field-title\'><span+data-lang-text=\'sf_uJufJhpNaF.title\'></span>+<span+class=\'c-q-field-subtitle\'+data-lang-text=\'sf_uJufJhpNaF.subtitle\'></span></label>\n<input+id=\'c-q-field-id-sf_uJufJhpNaF\'+type=\'hidden\'+x-model=\'values.sf_uJufJhpNaF\'></div>+++<div+class=\'c-q-submit\'+rv-show=\'buttonsVisible\'><div+class=\'c-q-steps\'><button+type=\'button\'+class=\'c-q-btn-prev+c-q-btn-secondary\'+rv-on-click=\'stepPrev\'+rv-enabled=\'stepPrevEnabled\'+rv-tabindex=\'stepPrevEnabled\'+rv-show=\'stepPrevVisible\'+data-lang-text=\'label.prev\'>Back</button>+<button+type=\'button\'+class=\'c-q-btn-next\'+rv-on-click=\'stepNext\'+rv-enabled=\'stepNextEnabled\'+rv-tabindex=\'stepNextEnabled\'+rv-show=\'stepNextVisible\'+data-lang-text=\'label.next\'>Next</button></div>+<button+type=\'button\'+class=\'c-q-submit-btn\'+rv-on-click=\'surveySubmit\'+rv-enabled=\'submitEnabled\'+rv-tabindex=\'submitEnabled\'+rv-show=\'submitVisible\'+data-lang-text=\'label.submit\'>Lähetä</button></div></form><button+type=\'button\'+class=\'c-q-close-x\'+rv-on-click=\'surveyClose\'+aria-label=\'Close+Survey\'+data-lang-label=\'a11y.survey-close\'></button></div>\n</aside>|https://www.hs.fi/shopping-ui/hs-digi-tutustu/|/kiitos/|https://www.hs.fi/u/oma/tilaa/|${v.sels::a-qNupbv0Ox4::c}|su-Rd65W00dNksz|sf_R4oFmnA6Gx|Kuinka+helppoa+ostaminen+oli?|Auta+meitä+kehittämään+palvelua|sf_a4PZDhloy6|Mikä+tilaamisessa+tuntui+hankalalta?|${qfv::sf_R4oFmnA6Gx}|sf_oF05RThwUW|_c_q_su_Rd65W00dNksz|<style+class=\'c-q-theme-style\'+data-survey=\'su-Rd65W00dNksz\'+media=\'not+all\'+data-c-q-style-nonce>/*+CSS+Variables+used+by+Basic+Survey+Theme+*/\n.c-q-vars+{\n\n++/*+general+colors+for+the+survey+UI+"chrome"+*/\n++--bgcolor:+#fff;+/*+white+background+by+default+*/\n++--text-color:+#444;+/*+dark+grey+text+*/\n++--gray-1:+#333;\n++--gray-2:+#777;\n++--gray-3:+#aaa;\n++--gray-4:+#c0c0c0;\n++--gray-5:+#ddd;\n\n++/*+these+colors+affect+most+buttons+in+the+survey+*/\n++--btn-primary-bgcolor:+#010080;+/*+submit+buttons,+etc+(navy+by+default)+*/\n++--btn-primary-fgcolor:+#fff;+/*+white+*/\n++--btn-secondary-bgcolor:+#010080;+/*+most+other+buttons+(navy+by+default)+*/\n++--btn-secondary-fgcolor:+#fff;+/*+white+*/\n\n++/*+color+of+focus+outlines+for+numeric+rating+and+\'blocky+buttons\'+radios+*/\n++--input-focus-color:+#bf90ff;\n\n++/*+should+most+survey+content+be+centered+or+left-aligned?+*/\n++--align-horiz:+left;+/*+\'center\'+likely+better+if+multiple+questions+*/\n\n++/*+control+over+the+animation+used+to+show/hide+the+survey+*/\n++--anim-enter-duration:+0.5s;+/*+how+fast+should+the+survey+fade/slide+in?+*/\n++--anim-exit-duration:+0.5s;+/*+how+fast+should+the+survey+fade/slide+out?+*/\n++--anim-enter-delay:+0s;+/*+don\'t+use+this+to+delay+when+the+survey+appears+*/\n++--anim-exit-delay:+0.5s;+/*+a+small+delay+here+feels+more+natural+*/\n\n++/*+colors+for+the+"smiley/frowny"+question+type+*/\n++--btn-rating-icon-color-1:+#f51120;+/*+red++*/\n++--btn-rating-icon-color-2:+#fd870d;+/*+orange+*/\n++--btn-rating-icon-color-3:+#ffca3d;+/*+neutral+yellow+*/\n++--btn-rating-icon-color-4:+#77d62f;+/*+light+green+*/\n++--btn-rating-icon-color-5:+#37b647;+/*+dark+green+*/\n++--btn-rating-icon-color-n:+cadetblue;+/*+neutral+color+*/\n}\n\n/*+\n++show+survey+"inline"+(as+opposed+to+in+a+"modal"+overlay)+\n++(this+is+the+"small+screen"+version,+see+@media+block+below+for+larger)\n*/\n.c-q-survey.c-q-inline+{\n++++/*+position+-+"docked"+10px+from+bottom+of+page+*/\n++++position:+fixed;\n++++bottom:+10px;\n++++margin-left:+10px;\n++++margin-right:+10px;\n++++z-index:+2147483647;\n++++/*+size+*/\n++++min-width:+250px;\n++++width:+calc(100%25+-+20px);\n++++height:+auto;\n++++box-sizing:+border-box;\n++++/*+styling+*/\n++++background-color:+var(--bgcolor);\n++++border:+2px+solid;\n++++border-color:+var(--gray-3);\n++++border-radius:+5px;\n++++padding:+15px+20px;\n++++filter:+drop-shadow(2px+2px+2px+var(--gray-4));\n}\n/*+show+survey+"inline"+-+overrides+for+non-small+screens+*/\n@media+screen+and+(min-width:+600px)+{\n++.c-q-survey.c-q-inline+{\n++++bottom:+20px;\n++++left:+0;\n++++right:+0;\n++++margin:+auto;\n++++width:+50%25;\n++++min-width:+550px;\n++++max-width:+850px;\n++}\n}\n/*+entrance+animation+*/\n.c-q-survey.c-q-inline.c-q-animate-in:not(.c-q-submitted)+{\n++++animation:+c-q-fadeIn+var(--anim-enter-duration)+ease+backwards;\n++++animation-delay:+var(--anim-enter-delay);\n}\n/*+exit/hide+animation+*/+\n.c-q-survey.c-q-inline.c-q-animate-out.c-q-submitted+{\n++++animation:+c-q-fadeOut+var(--anim-exit-duration)+ease+forwards;\n++++animation-delay:+var(--anim-exit-delay);\n}\n\n@keyframes+c-q-fadeIn+{\n++from+{opacity:0;+transform:+translateY(80px)+translateX(0);}\n++to+{opacity:1;+transform:+translateY(0)+translateX(0)}\n}\n@keyframes+c-q-fadeOut+{\n++from+{opacity:1;+visibility:+visible;+transform:+translateY(0)+translateX(0);++}\n++to+{opacity:0;+visibility:+hidden;+transform:+translate3d(0,+100%25,+0);+}\n}\n\n@keyframes+c-q-appear+{\n++from+{opacity:0;+visibility:+hidden;+}\n++to+{opacity:1;+visibility:+visible;+}\n}\n\n.c-q-appear-anim+{\n++animation:+c-q-appear+var(--anim-enter-duration)+ease+backwards;\n}\n\n.c-q-heading+{\n++background-repeat:+no-repeat;\n++background-position:+center;\n++background-size:+contain;\n++margin-bottom:+10px;\n++color:+var(--text-color);\n}\n\n.c-q-farewell+{\n++text-align:+center;\n++font-size:+15px;\n++padding:+15px+10px;\n}\n\n/*+Basic+survey+theme+*/\n.c-q-field+{\n++display:+block;\n++margin-bottom:+10px;\n}\n.c-q-survey+.c-q-field-label+{\n++font-size:+14px;\n++display:+block;\n++color:+var(--text-color);\n++margin-bottom:+5px;\n++text-align:+var(--align-horiz);\n++border:+none;\n++font-weight:+500;\n}\n\n.c-q-field-subtitle+{\n++display:+block;\n++color:+var(--gray-2);\n}\n\n\n/*+for+randomizing+the+order+of+field+options/answers,+CSS+\'order\'+property+*/\n/*+NOTE:+possibly+these+should+apply+to+all+radio+buttons,+as+opposed+to+just+randomly-ordered+ones+*/\n.c-q-has-random-items+{\n++display:+flex;+/*+so+CSS+\'order\'+property+(set+at+runtime)+will+have+an+effect+*/\n++flex-wrap:+wrap;\n}\n.c-q-has-random-items+.c-q-field-option+{\n++display:+flex;\n++width:+100%25;+/*+so+each+option+takes+up+a+whole+line+*/\n}\n.c-q-has-random-items+.c-q-field-option.c-q-radio-group-item+{\n++align-items:+start;+/*+for+alignment+of+radio+button+to+its+label+*/\n}\n\n\n/*+normal+text+inputs/textareas+*/\n.c-q-input-text+{\n++width:+100%25;\n++padding:+2px+5px;\n++border-color:+var(--gray-2);\n++border-radius:+4px;\n}\n.c-q-input-text:focus+{\n++outline:+none;\n}\n/*+normal+checks/radios+*/\n.c-q-radio-group,+.c-q-check-group+{\n++margin-bottom:+10px;\n}\n.c-q-radio-label,+.c-q-check-label+{\n++padding-left:+4px;\n++margin-bottom:+0;\n}\n\n.c-q-html-check+{\n++opacity:+0;\n++position:+fixed;\n++width:+0;\n}\n.c-q-html-label+{\n++margin-bottom:+10px;\n}\n.c-q-html-group+{\n}\n\n/*+submit+button+*/\n.c-q-steps+{\n++display:+inline-block;\n}\n.c-q-submit+{\n++margin-top:+5px;\n++text-align:+var(--align-horiz);\n}\n.c-q-submit+button+{\n++background-color:+var(--btn-primary-bgcolor);\n++color:+var(--btn-primary-fgcolor);\n++border-radius:+4px;\n++border-color:+var(--btn-primary-bgcolor);\n++border-style:+solid;\n++padding:+5px+10px;\n++box-sizing:+border-box;\n++border-width:+1px;\n++cursor:+pointer;\n++margin:+0;\n++text-align:+center;\n++text-decoration:+none;\n++font-size:+16px;\n++padding:+8px+20px;\n}\n.c-q-submit+button:disabled+{\n++opacity:+0.6;\n++cursor:+not-allowed;\n}\n.c-q-submit+button.c-q-btn-secondary+{\n++background-color:+var(--btn-primary-fgcolor);\n++color:+var(--btn-primary-bgcolor);\n}\nbutton.c-q-btn-prev:before+{\n++content:+\'‹\';\n++padding-right:+5px;\n}\nbutton.c-q-btn-next:after+{\n++content:+\'›\';\n++padding-left:+5px;\n}\n\n/*+dismiss+button,+styled+as+an+"X"+at+top+right+*/\n.c-q-close-x+{\n++position:+absolute;\n++top:+0;\n++right:+0;\n++color:+var(--gray-2);\n++font-size:+20px;\n++font-family:+sans-serif;\n++padding:+10px;\n++background-color:+var(--bgcolor);\n++border:+none;\n++cursor:+pointer;\n}\n.c-q-close-x:before+{\n++content:++"⨂";\n}\n\n/*+SPECIAL+INPUT+STYLE:+Radio+buttons,+styled+as+\'blocky+buttons\',+styled+via+a+similar+approach+as+.custom-control+radios+in+bootstrap+*/\n.c-q-radio-group.c-q-radio-group-buttons+input[type=\'radio\']+{\n++opacity:+0;\n++position:+fixed;\n++width:+0;\n}\n.c-q-radio-group.c-q-radio-group-buttons+label+{\n++++display:+inline-block;\n++++background-color:+var(--bgcolor);\n++++padding:+3px+9px;\n++++border:+2px+solid;\n++++border-color:+var(--gray-3);\n++++border-radius:+5px;\n++++margin:+2px;\n++++cursor:+pointer;\n++++color:+var(--gray-1);\n++++width:+100%25;\n}\n.c-q-radio-group.c-q-radio-group-buttons+input[type="radio"]:checked+%2B+label+{\n++color:+var(--btn-primary-fgcolor);\n++background-color:+var(--btn-secondary-bgcolor);\n++border-color:+var(--btn-secondary-bgcolor);\n}\n.c-q-radio-group.c-q-radio-group-buttons+input[type="radio"]:focus+%2B+label+{\n++border-color:+var(--input-focus-color);\n}\n.c-q-radio-group.c-q-radio-group-buttons+>+.c-q-radio-group-item+{\n++text-align:+var(--align-horiz);\n}\n.c-q-btn,.c-q-close-x,+.c-q-submit+button+{\n++outline-color:+var(--input-focus-color);\n}\n\n\n/*+SPECIAL+INPUT+STYLE:+Checkbox+buttons,+styled+as+\'blocky+buttons\',+styled+via+a+similar+approach+as+.custom-control+radios+in+bootstrap+*/\n.c-q-check-group.c-q-check-group-buttons+input[type=\'checkbox\']+{\n++opacity:+0;\n++position:+fixed;\n++width:+0;\n}\n.c-q-check-group.c-q-check-group-buttons+label+{\n++++display:+inline-block;\n++++background-color:+var(--bgcolor);\n++++padding:+3px+9px;\n++++border:+1px+solid;\n++++border-color:+var(--gray-3);\n++++border-radius:+5px;\n++++margin:+2px;\n++++cursor:+pointer;\n++++color:+var(--gray-1);\n++++width:+100%25;\n++++font-size:+16px;\n}\n.c-q-check-group.c-q-check-group-buttons+input[type="checkbox"]:checked+%2B+label+{\n++color:+var(--btn-primary-fgcolor);\n++background-color:+var(--btn-secondary-bgcolor);\n++border-color:+var(--btn-secondary-bgcolor);\n}\n.c-q-check-group.c-q-check-group-buttons+>+.c-q-check-group-item+{\n++text-align:+var(--align-horiz);\n}\n\n\n.c-q-rating-label-before,+.c-q-rating-label-after+{\n++++padding:+5px;\n}\n\n.c-q-survey+fieldset.c-q-options-fieldset+{\n++display:+block;+/*+TODO+-+was+display:contents+but+resulted+in+uncentered+text+*/\n}\n\n/*+SPECIAL+INPUT+TYPE:+"rating+dots"+(radio+buttons,+styled+via+a+similar+approach+as+.custom-control+radios+in+bootstrap)+*/\n.c-q-rating-radios+{\n++white-space:+nowrap;\n++display:+flex;\n++align-items:+center;\n}\n.c-q-rating-radios+input[type=\'radio\']+{\n++opacity:+0;\n++position:+fixed;\n++width:+0;\n}\n.c-q-rating-radios+label+{\n++display:+inline-block;\n++background-color:+var(--bgcolor);\n++font-size:+16px;\n++border:+2px+solid+var(--gray-3);\n++border-radius:+50px;\n++margin:+2px;\n++cursor:+pointer;\n++color:+var(--gray-1);\n++flex-grow:+1;\n++text-align:+center;\n++padding-bottom:+4px;\n++padding-top:+4px;\n}\n@media+screen+and+(min-width:+600px)+{\n++.c-q-rating-radios+label+{\n++++padding-top:+8px;\n++++padding-bottom:+8px;\n++}\n}\n.c-q-rating-radios+input[type="radio"]:checked+%2B+label+{\n++background-color:+var(--gray-1);\n++color:+var(--bgcolor);\n}\n.c-q-rating-radios+input[type="radio"]:focus+%2B+label+{\n++border-color:+var(--input-focus-color);\n}\n\n/*+SPECIAL+INPUT+TYPE:+"smileys"+/+emoticons+(radio+buttons,+styled+via+a+similar+approach+as+.custom-control+radios+in+bootstrap)+*/\n.c-q-rating-icons+{\n++text-align:+var(--align-horiz);\n}\n.c-q-rating-icons+input[type=\'radio\']+{\n++opacity:+0;\n++position:+fixed;\n++width:+0;\n}\n.c-q-rating-icons+label+{\n++display:+inline-block;\n++background-color:+var(--bgcolor);\n++cursor:+pointer;\n++color:+var(--gray-1);\n++border:+2px+solid;\n++border-color:+var(--bgcolor);\n++font-size:+40px;\n++border-radius:+50px;\n++line-height:+55px;\n++padding:+0+8px;\n}\n/*+colors+for+each+radio+*/\n.c-q-rating-icons.c-q-rating-icons-colors+label.c-q-rating-icons-label-1+{\n++color:+var(--btn-rating-icon-color-1);\n}\n.c-q-rating-icons.c-q-rating-icons-colors+label.c-q-rating-icons-label-2+{\n++color:+var(--btn-rating-icon-color-2);\n}\n.c-q-rating-icons.c-q-rating-icons-colors+label.c-q-rating-icons-label-3+{\n++color:+var(--btn-rating-icon-color-3);\n}\n.c-q-rating-icons.c-q-rating-icons-colors+label.c-q-rating-icons-label-4+{\n++color:+var(--btn-rating-icon-color-4);\n}\n.c-q-rating-icons.c-q-rating-icons-colors+label.c-q-rating-icons-label-5+{\n++color:+var(--btn-rating-icon-color-5);\n}\n.c-q-rating-icons.c-q-rating-icons-neutral+label+{\n++color:+var(--btn-rating-icon-color-n);\n}\n\n/*+show+the+border+for+the+selected+radio+*/\n.c-q-rating-icons+input[type="radio"]:checked+%2B+label+{\n++border-color:+unset;\n}\n/*+use+a+dim+color+for+the+other+radios+(after+one+is+selected)+*/\n.c-q-field-filled+.c-q-rating-icons+input[type="radio"]:not(:checked)+%2B+label+{\n++color:+#33333363;\n}\n/*+the+emoticon+itself+*/\n.c-q-emoticon+{\n++overflow:+visible;\n++width:+1em;\n++height:+1em;\n++display:+inline-block;\n++vertical-align:+-0.125em;\n}\n\n\n/*+SPECIAL+INPUT+TYPE:+"1-5+Stars"+styled+rating+widgets+*/\n.c-q-rating-stars-container+{\n++display:+flex;\n++justify-content:+var(--align-horiz);\n}\n.c-q-rating-stars+{+\n++font-size:+38px;\n++border:+none;\n++float:+left;\n}\n.c-q-rating-stars+>+label+>+svg+{\n++overflow:+visible;\n}\n.c-q-rating-stars+>+input+{+\n++display:+none;+/*+hide+"normal"+radio+ui+*/\n}\n.c-q-rating-stars+>+label+{+\n++color:+var(--gray-5);+\n++float:+right;+\n++padding-right:+10px;\n++background-color:+unset+!important;+/*+in+case+host+page+defines+a+background+color+for+radio+labels+*/\n}\n.c-q-rating-stars+>+input:checked+~+label,+/*+show+gold+star+when+clicked+*/\n.c-q-rating-stars:not(:checked)+>+label:hover,+/*+hover+current+star+*/\n.c-q-rating-stars:not(:checked)+>+label:hover+~+label+{+color:+#FFD700;++}+/*+hover+previous+stars+in+list+*/\n\n.c-q-rating-stars+>+input:checked+%2B+label:hover,+/*+hover+current+star+when+changing+rating+*/\n.c-q-rating-stars+>+input:checked+~+label:hover,\n.c-q-rating-stars+>+label:hover+~+input:checked+~+label,+/*+lighten+current+selection+*/\n.c-q-rating-stars+>+input:checked+~+label:hover+~+label+{+color:+#FFED85;++}+\n\n\n/*+when+the+survey+is+displayed+in+a+"modal"+overlay/dialog+*/\n.c-q-modal+{\n++display:+none;\n++position:+relative;\n++font-family:+-apple-system,BlinkMacSystemFont,avenir+next,avenir,helvetica+neue,helvetica,ubuntu,roboto,noto,segoe+ui,arial,sans-serif;\n}\n.c-q-modal.is-open+{\n++display:+block;\n++z-index:+9999;\n}\n.c-q-modal-overlay+{\n++position:+fixed;\n++top:+0;\n++left:+0;\n++right:+0;\n++bottom:+0;\n++background:+rgba(0,0,0,0.2);\n++display:+flex;\n++justify-content:+center;\n++align-items:+center;\n}\n.c-q-modal-container+{\n++background-color:+var(--bgcolor);\n++padding:+30px;\n++max-width:+700px;\n++max-height:+100vh;\n++border-radius:+6px;\n++overflow-y:+auto;\n++box-sizing:+border-box;\n++border:+1px+solid+rgba(0,0,0,0.5);\n++box-shadow:+0+3px+7px+rgb(0+0+0+/+30%25);\n++opacity:+1;\n++position:+relative;\n}\n\n.c-q-survey+.c-q-a-sr-only,+.c-q-survey+.c-q-radio-group-focus+{\n++border:+0;\n++clip:+rect(0+0+0+0);\n++height:+1px;\n++margin:+-1px;\n++overflow:+hidden;\n++padding:+0;\n++position:+absolute;\n++width:+1px;\n}\n\n/*+give+"custom+radio+buttons"+a+different+appearance+when+none+of+the+radios+in+the+"radiogroup"+have+been+checked,+as+an+extra+"affordance"+for+accessibility+(see+#904)+*/\n.c-q-survey+[role=\'radiogroup\'].c-q-radio-group-unfilled+[role=\'radio\']+{\n++border:+2px+solid;\n++border-color:+var(--input-focus-color);\n}\n\n.c-q-input.c-q-input-text:focus-visible,+.c-q-input.c-q-input-select:focus-visible+{\n++outline-color:+var(--input-focus-color);\n++outline-width:+2px;\n++outline-style:+solid;\n}\n\n.c-q-survey+.c-q-a-sr-only-focusable+{\n++position:+static;\n++width:+auto;\n++height:+auto;\n++overflow:+visible;\n++clip:+auto;\n++white-space:+normal;\n}\n\n.c-q-survey+fieldset+{\n++min-width:+0;\n++padding:+0;\n++margin:+0;\n++border:+0;++\n}\n\n@keyframes+cqFadeIn+{\n++++from+{+opacity:+0;+}\n++++++to+{+opacity:+1;+}\n}\n@keyframes+cqFadeOut+{\n++++from+{+opacity:+1;+}\n++++++to+{+opacity:+0;+}\n}\n@keyframes+cqSlideIn+{\n++from+{+transform:+translateY(15%25);+}\n++++to+{+transform:+translateY(0);+}\n}\n@keyframes+cqSlideOut+{\n++++from+{+transform:+translateY(0);+}\n++++to+{+transform:+translateY(-10%25);+}\n}\n\n.c-q-modal-slide+{\n++display:+none;\n}\n\n.c-q-modal-slide.is-open+{\n++display:+block;\n}\n\n.c-q-modal-slide[aria-hidden="false"]+.c-q-modal-overlay+{\n++animation:+cqFadeIn+.35s+cubic-bezier(0.0,+0.0,+0.2,+1);\n}\n\n.c-q-modal-slide[aria-hidden="false"]+.c-q-modal-container+{\n++animation:+cqSlideIn+.35s+cubic-bezier(0,+0,+0.2,+1);\n}\n\n.c-q-modal-slide[aria-hidden="true"]+.c-q-modal-overlay+{\n++animation:+cqFadeOut+.35s+cubic-bezier(0.0,+0.0,+0.2,+1);\n}\n\n.c-q-modal-slide[aria-hidden="true"]+.c-q-modal-container+{\n++animation:+cqSlideOut+.35s+cubic-bezier(0,+0,+0.2,+1);\n}\n\n.c-q-modal-slide+.c-q-modal-container,\n.c-q-modal-slide+.c-q-modal-overlay+{\n++will-change:+transform;\n}</style><style+class=\'c-q-theme-style\'+data-survey=\'su-Rd65W00dNksz\'+media=\'not+all\'+data-c-q-style-nonce>/*+CSS+Variables+used+by+Basic+Survey+Theme+*/\n.c-q-survey+{\n\n++++/*+general+colors+for+the+survey+UI+"chrome"+*/\n++++--bgcolor:+#fff;+/*+white+background+by+default+*/\n++++--text-color:+#444;+/*+dark+grey+text+*/\n++++--gray-1:+#333;\n++++--gray-2:+#777;\n++++--gray-3:+#aaa;\n++++--gray-4:+#c0c0c0;\n++++--gray-5:+#ddd;\n++\n++++/*+these+colors+affect+most+buttons+in+the+survey+*/\n++++--btn-primary-bgcolor:+#000000;+/*+submit+buttons,+etc+(navy+by+default)+*/\n++++--btn-primary-fgcolor:+#fff;+/*+white+*/\n++++--btn-secondary-bgcolor:+#010080;+/*+most+other+buttons+(navy+by+default)+*/\n++++--btn-secondary-fgcolor:+#fff;+/*+white+*/\n++\n++++/*+color+of+focus+outlines+for+numeric+rating+and+\'blocky+buttons\'+radios+*/\n++++--input-focus-color:+#219ebc;\n}\n\n.c-q-survey+.c-q-close-x+{\n++++color:+#000000;\n\n}\n.c-q-survey+.c-q-submit+button:disabled+{\n++++opacity:+0.9;\n}\n.c-q-radio-group+.c-q-field-option.c-q-radio-group-item+{\n++++align-items:+baseline+!important;\n}\n</style><aside+class="c-q-vars+c-q-survey+c-q-inline+c-q-animate-in+c-q-animate-out"+role="dialog"+aria-labelledby="c-q-field-id-sf_R4oFmnA6Gx-label"+aria-modal="false"+id="_c_q_su_Rd65W00dNksz">\n<div+class=\'c-q-container+c-q-survey-su-Rd65W00dNksz+c-q-theme-st-iuMzbHF0lPetzE0\'><div+class=\'c-q-heading\'></div><form+class=\'c-q-survey+c-q-su-Rd65W00dNksz\'>+<div+class=\'c-q-field+c-q-appear-anim\'+data-field="sf_R4oFmnA6Gx"+class="{\'c-q-field-filled\':+values.sf_R4oFmnA6Gx}"+rv-show="visible.sf_R4oFmnA6Gx"><fieldset+class=\'c-q-options-fieldset\'>\n	<legend+id=\'c-q-field-id-sf_R4oFmnA6Gx-label\'+class=\'c-q-field-label+c-q-field-title\'><span+data-lang-text=\'sf_R4oFmnA6Gx.title\'>Kuinka+helppoa+ostaminen+oli?</span>+<span+class=\'c-q-field-subtitle\'+data-lang-text=\'sf_R4oFmnA6Gx.subtitle\'>Auta+meitä+kehittämään+palvelua</span></legend>\n	<div+class=\'c-q-rating-stars-container\'>\n	<div+class=\'c-q-rating-stars+\'+>\n		<input+rv-checked=\'values.sf_R4oFmnA6Gx+%7C+integer\'+data-field=\'sf_R4oFmnA6Gx\'+rv-on-change=\'onFieldValue\'+type=\'radio\'+id=\'sf_R4oFmnA6Gx_5\'+name=\'sf_R4oFmnA6Gx\'+value=\'5\'/>\n<label+for=\'sf_R4oFmnA6Gx_5\'+aria-label=\'5+Stars\'><span+class=\'c-q-a-sr-only\'+data-lang-text=\'a11y.emoticons-5-5\'+data-lang-label=\'a11y.emoticons-5-5\'>5+Stars</span>+<svg+aria-hidden="true"+focusable="false"+data-prefix="fas"+data-icon="smile"+role="img"+xmlns="http://www.w3.org/2000/svg"+viewBox="0+0+496+512"+class="c-q-emoticon"><path+fill="currentColor"+d="M259.3+17.8L194+150.2+47.9+171.5c-26.2+3.8-36.7+36.1-17.7+54.6l105.7+103-25+145.5c-4.5+26.3+23.2+46+46.4+33.7L288+439.6l130.7+68.7c23.2+12.2+50.9-7.4+46.4-33.7l-25-145.5+105.7-103c19-18.5+8.5-50.8-17.7-54.6L382+150.2+316.7+17.8c-11.7-23.6-45.6-23.9-57.4+0z"+class=""></path></svg>+</label><input+rv-checked=\'values.sf_R4oFmnA6Gx+%7C+integer\'+data-field=\'sf_R4oFmnA6Gx\'+rv-on-change=\'onFieldValue\'+type=\'radio\'+id=\'sf_R4oFmnA6Gx_4\'+name=\'sf_R4oFmnA6Gx\'+value=\'4\'/>\n<label+for=\'sf_R4oFmnA6Gx_4\'+aria-label=\'4+Stars\'><span+class=\'c-q-a-sr-only\'+data-lang-text=\'a11y.emoticons-5-4\'+data-lang-label=\'a11y.emoticons-5-4\'>4+Stars</span>+<svg+aria-hidden="true"+focusable="false"+data-prefix="fas"+data-icon="smile"+role="img"+xmlns="http://www.w3.org/2000/svg"+viewBox="0+0+496+512"+class="c-q-emoticon"><path+fill="currentColor"+d="M259.3+17.8L194+150.2+47.9+171.5c-26.2+3.8-36.7+36.1-17.7+54.6l105.7+103-25+145.5c-4.5+26.3+23.2+46+46.4+33.7L288+439.6l130.7+68.7c23.2+12.2+50.9-7.4+46.4-33.7l-25-145.5+105.7-103c19-18.5+8.5-50.8-17.7-54.6L382+150.2+316.7+17.8c-11.7-23.6-45.6-23.9-57.4+0z"+class=""></path></svg>+</label><input+rv-checked=\'values.sf_R4oFmnA6Gx+%7C+integer\'+data-field=\'sf_R4oFmnA6Gx\'+rv-on-change=\'onFieldValue\'+type=\'radio\'+id=\'sf_R4oFmnA6Gx_3\'+name=\'sf_R4oFmnA6Gx\'+value=\'3\'/>\n<label+for=\'sf_R4oFmnA6Gx_3\'+aria-label=\'3+Stars\'><span+class=\'c-q-a-sr-only\'+data-lang-text=\'a11y.emoticons-5-3\'+data-lang-label=\'a11y.emoticons-5-3\'>3+Stars</span>+<svg+aria-hidden="true"+focusable="false"+data-prefix="fas"+data-icon="smile"+role="img"+xmlns="http://www.w3.org/2000/svg"+viewBox="0+0+496+512"+class="c-q-emoticon"><path+fill="currentColor"+d="M259.3+17.8L194+150.2+47.9+171.5c-26.2+3.8-36.7+36.1-17.7+54.6l105.7+103-25+145.5c-4.5+26.3+23.2+46+46.4+33.7L288+439.6l130.7+68.7c23.2+12.2+50.9-7.4+46.4-33.7l-25-145.5+105.7-103c19-18.5+8.5-50.8-17.7-54.6L382+150.2+316.7+17.8c-11.7-23.6-45.6-23.9-57.4+0z"+class=""></path></svg>+</label><input+rv-checked=\'values.sf_R4oFmnA6Gx+%7C+integer\'+data-field=\'sf_R4oFmnA6Gx\'+rv-on-change=\'onFieldValue\'+type=\'radio\'+id=\'sf_R4oFmnA6Gx_2\'+name=\'sf_R4oFmnA6Gx\'+value=\'2\'/>\n<label+for=\'sf_R4oFmnA6Gx_2\'+aria-label=\'2+Stars\'><span+class=\'c-q-a-sr-only\'+data-lang-text=\'a11y.emoticons-5-2\'+data-lang-label=\'a11y.emoticons-5-2\'>2+Stars</span>+<svg+aria-hidden="true"+focusable="false"+data-prefix="fas"+data-icon="smile"+role="img"+xmlns="http://www.w3.org/2000/svg"+viewBox="0+0+496+512"+class="c-q-emoticon"><path+fill="currentColor"+d="M259.3+17.8L194+150.2+47.9+171.5c-26.2+3.8-36.7+36.1-17.7+54.6l105.7+103-25+145.5c-4.5+26.3+23.2+46+46.4+33.7L288+439.6l130.7+68.7c23.2+12.2+50.9-7.4+46.4-33.7l-25-145.5+105.7-103c19-18.5+8.5-50.8-17.7-54.6L382+150.2+316.7+17.8c-11.7-23.6-45.6-23.9-57.4+0z"+class=""></path></svg>+</label><input+rv-checked=\'values.sf_R4oFmnA6Gx+%7C+integer\'+data-field=\'sf_R4oFmnA6Gx\'+rv-on-change=\'onFieldValue\'+type=\'radio\'+id=\'sf_R4oFmnA6Gx_1\'+name=\'sf_R4oFmnA6Gx\'+value=\'1\'/>\n<label+for=\'sf_R4oFmnA6Gx_1\'+aria-label=\'1+Star\'><span+class=\'c-q-a-sr-only\'+data-lang-text=\'a11y.emoticons-5-1\'+data-lang-label=\'a11y.emoticons-5-1\'>1+Star</span>+<svg+aria-hidden="true"+focusable="false"+data-prefix="fas"+data-icon="smile"+role="img"+xmlns="http://www.w3.org/2000/svg"+viewBox="0+0+496+512"+class="c-q-emoticon"><path+fill="currentColor"+d="M259.3+17.8L194+150.2+47.9+171.5c-26.2+3.8-36.7+36.1-17.7+54.6l105.7+103-25+145.5c-4.5+26.3+23.2+46+46.4+33.7L288+439.6l130.7+68.7c23.2+12.2+50.9-7.4+46.4-33.7l-25-145.5+105.7-103c19-18.5+8.5-50.8-17.7-54.6L382+150.2+316.7+17.8c-11.7-23.6-45.6-23.9-57.4+0z"+class=""></path></svg>+</label>\n	</div>\n	<div+style=\'clear:both\'></div>\n</div>\n</fieldset></div>++<div+class=\'c-q-field+c-q-appear-anim\'+data-field="sf_a4PZDhloy6"+class="{\'c-q-field-filled\':+values.sf_a4PZDhloy6}"+rv-show="visible.sf_a4PZDhloy6"><label+id=\'c-q-field-id-sf_a4PZDhloy6-label\'+for=\'c-q-field-id-sf_a4PZDhloy6\'+class=\'c-q-field-label+c-q-field-title\'><span+data-lang-text=\'sf_a4PZDhloy6.title\'>Mikä+tilaamisessa+tuntui+hankalalta?</span>+<span+class=\'c-q-field-subtitle\'+data-lang-text=\'sf_a4PZDhloy6.subtitle\'></span></label>\n<textarea+id=\'c-q-field-id-sf_a4PZDhloy6\'+rv-value=\'values.sf_a4PZDhloy6\'+rv-on-input=\'onFieldValue\'+data-field=\'sf_a4PZDhloy6\'+type=\'text\'+class=\'c-q-input+c-q-input-text+\'++placeholder=\'Vastauksesi\'+rows=\'2\'></textarea></div>++<div+class=\'c-q-field+c-q-appear-anim\'+data-field="sf_oF05RThwUW"+class="{\'c-q-field-filled\':+values.sf_oF05RThwUW}"+rv-show="visible.sf_oF05RThwUW"><label+id=\'c-q-field-id-sf_oF05RThwUW-label\'+for=\'c-q-field-id-sf_oF05RThwUW\'+class=\'c-q-field-label+c-q-field-title\'><span+data-lang-text=\'sf_oF05RThwUW.title\'></span>+<span+class=\'c-q-field-subtitle\'+data-lang-text=\'sf_oF05RThwUW.subtitle\'></span></label>\n<input+id=\'c-q-field-id-sf_oF05RThwUW\'+type=\'hidden\'+x-model=\'values.sf_oF05RThwUW\'></div>+++<div+class=\'c-q-submit\'+rv-show=\'buttonsVisible\'><div+class=\'c-q-steps\'><button+type=\'button\'+class=\'c-q-btn-prev+c-q-btn-secondary\'+rv-on-click=\'stepPrev\'+rv-enabled=\'stepPrevEnabled\'+rv-tabindex=\'stepPrevEnabled\'+rv-show=\'stepPrevVisible\'+data-lang-text=\'label.prev\'>Back</button>+<button+type=\'button\'+class=\'c-q-btn-next\'+rv-on-click=\'stepNext\'+rv-enabled=\'stepNextEnabled\'+rv-tabindex=\'stepNextEnabled\'+rv-show=\'stepNextVisible\'+data-lang-text=\'label.next\'>Next</button></div>+<button+type=\'button\'+class=\'c-q-submit-btn\'+rv-on-click=\'surveySubmit\'+rv-enabled=\'submitEnabled\'+rv-tabindex=\'submitEnabled\'+rv-show=\'submitVisible\'+data-lang-text=\'label.submit\'>Lähetä</button></div></form><button+type=\'button\'+class=\'c-q-close-x\'+rv-on-click=\'surveyClose\'+aria-label=\'Close+Survey\'+data-lang-label=\'a11y.survey-close\'></button></div>\n</aside>|https://hs.fi/tilaus/|[data-ab="hard-paywall"],+[data-ab="archived-paywall"]|[data-ab="hard-paywall"],+[data-ab="archived-paywall"]|js-WzEdgyKyh8OFgTnwCfE0-1738669457|Timantti|archived-paid|${v.sels::a-Ulz1JxwtkU::c}|[data-ab="hard-paywall"],+[data-ab="archived-paywall"]|[data-ab="hard-paywall"],+[data-ab="archived-paywall"]|js-n7tENWaxEdGhjkJiS4Dc-1739272204|[data-ab="hard-paywall"],+[data-ab="archived-paywall"]|[data-ab="hard-paywall"],+[data-ab="archived-paywall"]|js-cC5HrEjwIB6DIgcpLmzf-1739272204|art-|?ab-test=HS24-|www.hs.fi+all|[data-ab="hard-paywall"],+[data-ab="archived-paywall"]|.ab-test-hard-paywall-title|js-WzEdgyKyh8OFgTnwCfE0-1738660508|${targ.ua/os}|i|m|${v.sels::a-zJNbvwU9pX::c}|js-LAiIl91JykA4P4gEKCPI-1738660508|js-CuYBcurQuiPkaSmhUNKd-1740149250|www.hs.fi+articles|${v.sels::a-JkfFeSEDP1::c}|js-CuYBcurQuiPkaSmhUNKd-1740139337|https://test.hs.fi/suomi/art-2000010515972.html|https://test.hs.fi/s|js-HyjG44fKq0PwABQSsP9u-1741766129|${v.sels::a-b9wxsufztb::c}|js-18xiPqYqLotpSYeAFqEr-1741766129|js-K3Ab8Iu8K0H3ahjrhUiC-1741001429|.ab-hs-digi-button|js-TREEhWAvZ2ViiF0Hp6LT-1740560027|${v.sels::a-NfUtoffAFV::c}|js-d0HEFw70Qdt995gQjxNU-1740560027|js-Z6ZFgIhrcWHwOrpCIXxE-1740562361|js-JQJ4DhnzM70JgtGqBGEy-1740562361|https://kampanjat.hs.fi/tilaa/|js-WzEdgyKyh8OFgTnwCfE0-1740378785|${v.sels::a-pQfpsI0F6c::c}|js-n7tENWaxEdGhjkJiS4Dc-1740378785|js-V3HqmOQAONCQTI1ph7Tt-1740378785|js-RCdtyAbGhBrkO2mWeoQc-1741783955|https://dev.hs.fi|https://dev.hs.fi/suomi/art-2000011072929.html|js-sLPHFwQASNooMDHFspGJ|${v.sels::a-300FZBNs8J::c}|js-RCdtyAbGhBrkO2mWeoQc-1741769134|?ab-test=HS25-|www.hs.fi+all|js-vHajUAdUYQJAOhkPJFWi|[data-ab="app-download-banner"]|js-N92HpHWB1sQvjVxmIvLs-1741860363|${targ.ua/mo}|${v.sels::a-tHMFd6zgKA::c}|js-IPRyDeaZcQDJPWbgJ0tM-1741860730|js-MBFpfmpnSTNZ21tp75YX-1741862338|js-06YU6KqdFGahlegsZbc6-1741860730|js-nuRjESXNMs8kZmFvFinC-1741860730|.ab-test-hard-paywall-subscribe-button|js-4MrY6KAvdzX1gllgzcJz-1741095692|${v.sels::a-JJetqsaXHjuv::c}|js-h1uk3dXPTHGwYoR0IexJ-1741095760|https://apps-html.hs.fi/pelit/art-2000010961995.html|wa-goal|${v.loc.path}|mp|${dl::ecommerce.aid}|GQZMNO3BLZSLN|G4CB3BBODS4PS|GM9H298X5RVX4|GMLO89V5IUWWQ|GZ42I8MJQL2XH|GFGQSTSB5LBJH|GLQQ5NY3FB2H5|event|dl_eventName|purchase|wa-reward|*/art-*|/click+subscribe/|ui+action|ticker|eventLabel|/ticker-promo/|/click+subscribe/|conductricsg|g|detail|valueSelectorType|dl|valueSelector|brand|Helsingin+Sanomat|conductricsg.v|/PG68GQNJK8XM%7CGSN6OZRXNSBHM/|ga-ev|ui+action|link+click|ga_eventCategory|ui+action|ga_eventAction|link+click|ga_eventLabel|Helsingin+Sanomat|/G4TTYLZXHVRWS%7CGUTXP963T7QG9%7CGIXVMLOGB5XBO%7CG33TCO8PXGGQJ%7CGTTX92ZKVGXGV%7CG6B28FF59K263%7CG7UKHYXG7D3Z5%7CGQ4H3XH69DZY2%7CGZHWG5I3IV5MG%7CG8W4W3LOUQFI7%7CGUMDQXYIS8JTM%7CGMBBOSXL5RKGH%7CG9JM5KJ7ZNX9Q%7CGKQ7IWF4W39ZM%7CG45VPHOK2M8DP%7CGMJQNNLF4XKGD%7CGCGD5VW265RTH%7CGNHRFO5M3Z3ZH/|/|application+download|accept|application+download|dismiss|Helsingin+Sanomat|/GI6TVNZUTDHTG%7CGQGHONHHUI8PR%7CGU9LH5SRJ7VSL%7CGQMKBFO93CF8Z%7CGLFQ2TY7D2HWJ%7CGY5DRWQRDOB5Z%7CGC5VGQCYLTU84%7CGK8HTBY5VDLK8%7CGWR84WQ4XCK8U%7CGMBD24CGU8XO9%7CGGWLORYTBVNS6%7CGMHDYKFMMD7N3%7CGOHNUXS56QS93%7CG8JX2Q5Y2LPUF%7CGTTLP98QFLWRO%7CGD5H3I8W3M6J3%7CG3X5ZQT6TGCKG%7CGZ6NPB89MKN4H%7CGIRGLZII8RB4G/|/GNYMJCLBSGUF3%7CG35ZRTPY9MVWL%7CG4NJ6U3GD29SZ%7CGZD55BXVOHBUW/|articleScroll|scrolledTo|/100/|/ZXLRY7XLRV5N%7CGMT9VQQNHRSWT/|/GSRVQ9QIHZY68%7CG8Y9FR6YLRZG3%7CGZR44IJHODXQI/|/GLHM2VKNSD374%7CGLDLO7CMFZBJK%7CGDDFI2Z69TZRP%7CGG89XHX98OVTL%7CG57VFHWTDI4FM%7CGLHM2VKNSD374%7CG3HVNURN6Z3CP%7CG8VCURVF42YUL%7CG8XJFB9Q6WC9B%7CG4QQNVUK2TVJY/|/GB5BZP8OQQKCF%7CGZX4TXN5F3H7G%7CG3G64LHZ4HBFI%7CGY46WHRXSY74H%7CGZUXOW2T58TI3%7CI48P9H4WD5OJ%7CGY5DMKV68C94D%7CGV43UTHZKWOL7%7CG8P3NSPPK3JGR%7CGZKWQWIF6Z32X/|/G4ZQUKYGIHBYC%7CG792YZQ239493/|/G5BNXIBXC58HS%7CGGJ89ZSSJGF7D/|/GTZMZQ6T6ZCJX%7CGFPOM9S5TZTLG%7CGUMO4SZGFXCLY%7CGL3DNU3LYWQMW%7CGX69XYPPDHJ34%7CGIVIUNS5MXPXD/|/G9U7PKJIPKBUJ%7CGX93U8HLDN5UV%7CG5PYVIOM2Q95J/|Conductrics|conductrics_event|/script+error/|/script+failed/|GC6SQ8SRXDVUC|GFB6FNRRKZZQJ|G6QWCUNRNVIKP|GD5H3I8W3M6J3|GBGT8CB9YKZUR|GDHBS76HJXY4H|/click+subscribe+Digi%2B/|/click+subscribe+Digi/|GFYTLWU9LP5BP|vs|${gc::g-EZVMtdANpx}|gt|${gc::g-b3iGMY1S5x}|mdn_only|flow|f-AXhbfRaelo|acc|api-rEBOUSkIQDfzLyWuZIpa|rt|https://api-sanoma.conductrics.com/ac-HxAwTabhao/v3/agent-api/js/f-AXhbfRaelo/dt-SuukBPeXknRdSFajR8ddXY7aW3Vmwl?apikey=api-rEBOUSkIQDfzLyWuZIpa|js|la|ds|b|eph|tt|x-gcp-bq/hs_p2p_lightgbm|x-gcp-bq/hs_p2p|rand/r100|ttt|mvt|3.7.15|241007.13|d|dt-SuukBPeXknRdSFajR8ddXY7aW3Vmwl|di|#d1|dn|HS+production|22222^S9X2HP|SAC2NG|0|2S|SQY0X0|SSYHMS|M8A46BNW|1|3DKN|3DKN|3Y|8S|1BA|6|8|1ED|T|41|1D2|9|F|1C9|4|4|1BL|9|B|1EA|5|9|1CK|3|3|1DZ|E|O|1BK|9|B|1D1|5|B|1CJ|A|G|1CZ|3|3|1FG|B|B|1DH|5|5|1AU|4|6|1DD|A|S|1BS|4|4|1D2|2|2|0|2O85|0|1VBE|0|1T3U|3|1|27K|3|2|3|1|SWR|2|1|2|1|PCI|1|0|1|0|2S|SO9N2F|SSYIHK|M8A6F5TD|1|5YD0|5YD0|82|I6|2B2|8|A|27Y|F|R|28R|C|M|25Z|N|1Z|25L|9|D|28M|R|1V|274|3|5|293|7|B|260|K|1A|26M|T|23|297|P|1B|27Z|4|4|27L|X|1N|280|C|O|29E|9|B|291|B|H|273|8|A|293|C|W|269|1|1|28Y|M|2U|0|3RSZ|0|2J2M|0|22WF|0|1EJF|4|1|OD0|4|3|4|1|G67|3|2|3|1|18QD|0|10MU|0|OQ7|4|1|BWN|4|3|6|1|83J|3|2|5|1|2|1|26K1|0|1RFL|2|1|F4G|2|1|7|0|1|SO9OCT|SQQLBX|SSP3Y3|M8BARMT0|1|JVE|JVE|72|7D|7W|8K|6X|7N|7H|7O|7G|6W|7X|7M|7Z|71|7O|7Y|7T|6O|6V|0|1|SSR4BI|M8BARXPN|1|3|1|0|3|0|0|1|0|0|0|0|1|0|0|0|0|1|0|0|0|0|1|0|0|0|0|1|0|0|0|0|1|0|0|0|0|1|0|0|0|0|1|0|1|0|0|1|0|0|0|0|1|0|1|0|0|0|0|0|0|0|0|0|0|0|0|0|1|0|1E|1E|SSR1BM|SSAFNZ|ST1YR6|SSWK3A|SSL47P|0|2S|SDS33D|SJQP3H|SKQB2L|U|0|0|1Y|SROF1N|1|0|SEVAPR|0|2S|SSEA6G|0|2S|SQYJ2F|A|19|19|SR5JIC|A|U|1O|SR5J1M|0|0|2S|SS1824|14|14|K|SSJQ61|SSA8Q4|0|0|0|1|ST0GQI|A|P|P|14|SS6DQ3|ST24DG|0|1|SSQXTE|CYO0|CYO0|CYO0|CYO0|CYO0|CYO0|CYO0|CYO0|CYO0|CYO0|CYO0|CYO0|CYO0|1JK00|4MO00|6Y|1E0|1|1JK|0|1|0|0|0|0|1|0|5|0|2R|9|2I|7PR|1|A|RR|1|F|7PR|1|A|RR|1|U|2R|0|7PR|1|F|2R|0|7PR|1|F|5|0|2R|9|2I|255R|1|F|RR|1|U|3|0|RR|O|2I|RR|1|F|RR|1|F|RR|1|U|3|0|RR|11|2I|3|0|RR|O|2I|5YC1R|1|F|9|0|2R|9|2I|3|0|RR|11|2I|3|0|RR|O|2I|4|0|RR|11|2I|3|0|RR|70|2I|3|0|7PR|4Q|2I|3|0|RR|O|2I|3|0|RR|11|2I|255R|1|5|255R|1|5|5|0|2R|9|2I|1|1|1|1|1|2R|1|3|2R|1|3|1|1|1|1|1|5|0|2R|1E|2I|LFLR|1|3|255R|1|1UO0|RR|1|CYO0|1|1|1|1|1|5|1|F|LFLR|1|8C|LFLR|1|8C|LFLR|1|P0|5|1|F|7PR|1|5K|1|F|2S|2S|1|1|1|1|1|2S|2S|2S|2S|2S|2S|2S|2S|1|1|1|1|1|1|1|1|1|1|2S|2S|2S|2S|2S|2S|2S|2S|2S|2S|2S|2S|2S|2S|2S|2S|2S|2S|2S|2S|2S|2S|2S|2S|2S|2S|2S|2S|2S|2S|2S|5|0|2R|9|2I|7PR|1|A|RR|1|F|7PR|1|A|RR|1|U|2R|0|7PR|1|F|2R|0|7PR|1|F|5|0|2R|9|2I|255R|1|F|RR|1|U|3|0|RR|O|2I|RR|1|F|RR|1|F|RR|1|U|3|0|RR|11|2I|3|0|RR|O|2I|5YC1R|1|F|9|0|2R|9|2I|3|0|RR|11|2I|3|0|RR|O|2I|4|0|RR|11|2I|3|0|RR|70|2I|3|0|7PR|4Q|2I|3|0|RR|O|2I|3|0|RR|11|2I|255R|1|5|255R|1|5|5|0|2R|9|2I|2R|1|3|2R|1|3|5|0|2R|1E|2I|LFLR|1|3|255R|1|1UO0|RR|1|CYO0|ST7IS3|ST7IS1^0.009962188768864753|0.004485579808573143|0.004690681019183434|0.0035252643948296123|0.07976607503570608|0.015995587424158852|0.008472596960529228|0.005096262740656852|0.0022988414263694222|0.002302820955670697|0.006397613630783836|0.005253940455341506|0.004967489135049125|0.0027624309392265192|0.0017142823460682517|0.0017162471395881006|0.013287569846305665|0.007782101167315175|0.00640133659607706|0.005257009345794392|0.006227798012500563|0.0028328611898017|0.00913101890919534|0.005724098454493417|0.0016997134308908751|0.0017016449234259785|0.00590743664331813|0.005939524838012959|0.002801102776498495|0.002807411566535654|0.003555198862336364|0.002372479240806643|0.01573407960577347|0.005627462014631401|0.002321522789074232|0.002325581395348837|0.0011318611865934766|0.0011325028312570782|0.004134939238275375|0.006015792247698834|0.004675767185829666|0.00348460163087175|0.0047407571330373155|0.003830783240570438|0.003107746814138888|0.0053782245383502516|0.004741576717308355|0.003915121386043105|0.004857194709996374|0.003088591368545187|0.005020299696052365|0.0037414596250511687|0.0036521196346235587|0.00477212357515573|0.003505574818963374|0.002631109983077031|0.0016604711402594442|0.006633489632380536|0.0021907332771784827|0.001150718885489216|0.0019329228181020582|0.0016569917411170582|0.00099059026963647|0.0027181446412661253|0.0019340496798559673|0.0018787968648718216|0.002286587117721557|0.0009821668975282338|0.0017863447548221467|0.0012544133701177958|0.001452461908330247|0.002976036699107049|0.0011620820594013333|0.0008008242626386435|0.002954850456609345|0.0033335665408527203|0.0045303983499708645|0.001864003656245317|0.003366623197078391|0.0013018470276503326|0.002401431261797971|0.004196035984377384|0.004284546741427387|0.002811338406905798|0.003444804807326192|0.002850215778057179|0.004040063984258732|0.0033576359869043927|0.00306134741226756|0.0030955326347699885|0.001985174743670962|0.0026688748824403143|-0.0005056483260402899|0.0010318324152931917|0.004429913407803009|0.0010080562542888584|0.0031760086303913304|-0.00038276920703470734|0.002491522601162772|0.0032070137633547543|0.003353716424635756|0.002253558349171479|0.002597029604007362|0.002552068662884758|0.0019729530515861585|0.0030573660654501164|0.0027998200904688062|0.002790733316673412|0.0018827474089247083|0.0021096488972541993|-0.0011423658420943268|-0.000058291234608924384|0.004504389305755726|0.0010827262119332166|0.0032154020318225316|-0.0003682204706383814|0.0025107801216641594|0.0033327479205941925|0.003378699618921835|0.0023002761063292258|0.002630132925288356|0.0025629013598073448|0.0020732253921960883|0.0030828257157454447|0.002831907338969014|0.0028287285530761773|0.0019195900552603502|0.0021198559890700497|0.25|0.0027937121676864136|0.0020807136366225547|0.003635291774314076|0.002095950279443446|0.0015281461224833787|0.0029085575587013794|0.0019325102554189958|0.0026217429500458834|0.0012949067298475548|0.001226743401094327|0.002503876584876932|0.0012405228794378155|0.002494615494409912|0.0016110548713728023|0.0025128467866994708|0.008495203706908042|0.005769739298464491|0.009301852997900604|0.006583292789268736|0.016072016985116414|0.004241836741034975|0.002933562334981277|0.004114573574356641|0.004058324986906609|0.002901600812373587|0.00447084339571358|0.004233305294470725|0.0032050985010327205|0.004148575787901142|0.0029076629286675986|0.00362850893395146|0.003490199879236903|0.0034191341611209346|0.0037796917074322213|0.0030657192286131893|0.002514774687655818|0.04457434882949658|0.048403794437132136|0.030771541020834334|0.01603429652449705|0.01654585303439433|0.011105511129259477|0.012615358296325747|0.013829205373846944|0.009296932868769932|0.00871358122309008|0.018293898063103626|0.009804159129451111|0.017369673535404615|0.013081674359696455|0.024416013347047176|0.015823202694224426|0.018534605846060148|0.01458574302761608|0.2550150054143551|0.012459154163832779|0.010536287801926171|0.0048272740112020865|0.00452286767630857|0.004012310087845815|0.006338410003869144|0.0021679927680391094|0.007243231131846477|0.007158301824004805|0.004567258550584886|0.006103780752700572|0.0037662483133114044|0.010382936288164737|0.0042860361045676185|0.0038796381637883686|0.004108169392097779|0.0023829787999814843|0.004344526039024026|0.012268404794342892|0.012961710951388082|0.0035997031259013624|0.005394893079706765|0.003434767429939451|0.00895377772001657|0.004304775948661584|0.004156426191734645|0.0039074829249167295|0.003956827136277146|0.0020600711414934564|0.0026663045865619804|0.00495950550320875|0.003759746515933256|0.003061513544044086|0.002255717913546494|0.002618304928931733|0.002268832956279954|0.5869729168033684|0.004683179934361495|0.013078659671846644|0.005048467431997826|0.008346990271995355|0.009519539621375453|0.01055713531897834|0.005696499955799082|0.008583864508987734|0.005525915622160974|0.007336981675359559|0.009135118373358874|0.0036653598584777377|0.006625140301727929|0.0048153092874570315|0.005465808665244635|0.010591726501966747|0.00877857978933672|0.0019885320351377975|0.012879398836939941|0.008765996320167854|0.004767208131094221|0.004588539739597034|0.0032224982987671892|0.0061006207009612675|0.003835837388351447|0.0029980002217372286|0.004102944268774007|0.015371430820669028|0.004506321659315332|0.004097850283543424|0.0036846401983844997|0.0022329408369197263|0.005233811585726281|0.0029009652295317935|0.0023627565206228453|0.002252747420280699|0.011334316088151133|0.005037083355044899|0.003338439383648629|0.0026755852842809363|0.009357601914781221|0.005211952744961779|0.00755349772755844|0.0041279669762641896|0.025235760004326827|0.008193801211257571|0.004645773254257215|0.00322234156820623|0.023008891394421607|0.009303928325292901|0.0017551246531929924|0.001053370786516854|0.0037639525117397514|0.002398081534772182|0.016336854242091147|0.007122507122507123|0.026406089379683167|0.010247349823321554|0.016011696982767606|0.008552856654122478|0.0013879230419604133|0.0013893713094824591|0.02046784053350493|0.011518324607329843|0.008318860715526224|0.004166666666666667|0.003746109576239488|0.0030716723549488053|0.0058156786784626146|0.0037709976002742542|0.0035058047072024875|0.0028099754127151387|0.01094950926559252|0.0041109969167523125|0.0003549875754348597|0.0003549875754348598|0.03495842955195051|0.0075497597803706245|0.003722571873624728|0.00510958083762751|0.004632984213517124|0.00596350124396241|0.004147818397558371|0.006375986027922027|0.0025798744620808404|0.0036309385973815386|0.005747382968633249|0.0065549275667305396|0.006290645578363275|0.002673872360959769|0.00712604066444107|0.00466351559294526|0.003985927813620808|0.004431577733022604|0.0038514833981778264|0.004665966220164897|0.0013906279679522242|0.005720083564080863|0.0010568588724623176|0.0018034306417985878|0.0016121963610124953|0.002998695663184927|0.0012899406405468543|0.002816087213034835|0.0007851959288765452|0.0011357540360046213|0.002412339015350649|0.003054945946525285|0.0023407619356888582|0.000694479737025263|0.0026731452277304873|0.001699810067293181|0.0011309299222287683|0.0014122226902299844|0.0011098935455005003|0.0019370458408259931|0.00035508571788972585|0.003463950626710801|0.004129953724184513|0.006031481273816109|0.005845809482676209|0.006772216000017459|0.004864879881859063|0.007119209499834344|0.0027437877810024686|0.0035808118512919568|0.007062959040751259|0.0067506360760351694|0.00903731850324774|0.0031217071062620005|0.009896026638639914|0.0057044529220669155|0.004071098345696216|0.005062259805996591|0.005074238468215612|0.005861593093780474|0.0015438853363472743|0.006956656405313537|0.004140455917006766|0.0057013381829680585|0.005211464549637023|0.006663367258124856|0.004843938634690958|0.006156583638780781|0.0023174581143099162|0.003786189688849508|0.0061988850685949105|0.005586816424775283|0.010023854019299243|0.003357022832000968|0.008934285373878394|0.0042732133930295825|0.0037735730444374686|0.005207991846152685|0.0038843906446865348|0.005284278916403307|0.0016185459335276331|0.006265322604989348|0.004048343708773447|0.0061119762700674995|0.005327703479328913|0.00608501219878573|0.004608700566279054|0.005381821057444157|0.00213982546866424|0.0030660241693509114|0.004355815450359952|0.0045025503060664536|0.0073332288258710025|0.0030614698556924486|0.008178946490207173|0.004411895431823081|0.0036152933421037155|0.0042885650326490304|0.0034506812388341622|0.005422861572190715|0.0016486966733297319|0.005528600231346702|0.0035237324952264856|0.004017732892580267|0.0043205627385937435|0.00535174898445047|0.00481721809280291|0.003671843093226356|0.0024271435430144104|0.0030252631555956555|0.0019311929095973067|0.003024559598668567|0.007329739273776651|0.0029237264784771973|0.007707581519926426|0.0044525615979472966|0.0036329045005086143|0.002858251287915572|0.0029113891715883905|0.005196293922258725|0.0017875327018758796|0.005728235318771912|0.005326962147125971|0.004121136254197907|0.003815088145694693|0.003914613385303578|0.0031314358721142165|0.002727576843924648|0.004622432013337436|0.0032785506929917485|0.003933724059212086|0.006128133936673944|0.0020417095839969936|0.004417110566720343|0.0018550339252225748|0.004274746167615757|0.001533126656143512|0.004730938854649206|0.002219228813382949|0.0017791670431159927|0.0008236509566327833|0.004981757562926115|0.0043245015762031136|0.00827101604310802|0.0065695461409598244|0.007054281817078473|0.004169628379864576|0.00656033040050261|0.0018529749895872592|0.003178100051409072|0.007990088292203374|0.006469138137616194|0.0076875194857956184|0.002955966266884779|0.008332151515324696|0.004418257741401686|0.0036066350647195452|0.005679884489869721|0.0032169618670563095|0.005638387242829003|0.0014434882120553196|0.0053065376031786685|0.00897767351504431|0.0076905280727311|0.006285612923436231|0.00618963708542336|0.005816164792902754|0.00612846712177309|0.006624492237439645|0.006384618745779736|0.005974103315935919|0.004879933853047728|0.005839915273166866|0.0030541147778813454|0.0052315614591960545|0.0042075877287130695|0.0027438608496125005|0.003472064722506273|0.0062129445744062645|0.0023165865375952004|0.002661126694427702|0.0012157796655760502|0.47802772131944665|0.005345084192494131|0.006115608998406979|0.005421703350142839|0.009533526077192052|0.00554682722138176|0.012258869531873454|0.0027602047840604763|0.006510551421279472|0.015075697010722394|0.011603873530341865|0.019221022839211427|0.004721253494566671|0.012329571428650843|0.0037480768058336025|0.004437163922832031|0.010149796857046013|0.006974995631121482|0.004854509351378682|0.0013316068726038793|0.008976597579634977|0.0077452284685315675|0.007559653887665397|0.009696068464988104|0.007580406535805844|0.008038248748207093|0.007260548809512098|0.006855888454222428|0.00746124608911199|0.004554086070196926|0.005431373843546633|0.007571157058413025|0.007841082598419244|0.0029810374153625067|0.006089487680125542|0.003799955681680374|0.0035025992903431995|0.011426742386031754|0.006501933306588167|0.003293556173516579|0.0016176691841097081|0.7887493296513608|0.004090128433655279|0.007283414534971206|0.008251304380894373|0.007184980538146039|0.004944291035951299|0.010769576164801729|0.0043604694706860115|0.002802000017665709|0.010339607790425753|0.011163948278497041|0.005296284206018917|0.002229368020295622|0.013543038832314691|0.01113184613656398|0.00519934191948784|0.004509630375470733|0.009586251917179937|0.008050822070035263|0.001260765418048533|0.009578258380879221|0.003998016225421961|0.007694052622070648|0.008367543310586261|0.006606625478806913|0.004709052967539396|0.009994813583465104|0.004182836825040335|0.002081834498167112|0.008496538172190796|0.010079682159788212|0.002605659012590677|0.0019338150439871028|0.01278769994864347|0.011270528175357477|0.005041062217154086|0.0035902035619670794|0.009152542511327563|0.008189404725822672|0.0012909161578506317|0.008841536007236575|0.003491189497851568|0.005484438830661966|0.00708526796853254|0.005867751029433978|0.00487277746416585|0.008093780716607556|0.004274968768967872|0.002164318449000564|0.00593430647045479|0.008401730314695164|0.002896638940744545|0.0018836276665703821|0.01195547811937213|0.010777121733459351|0.004969481291004772|0.002377437405517868|0.007841942470238481|0.007742979614167934|0.0014384086225046335|0.008881173424484547|0.006752105854879753|0.00470129351276528|0.00642405314621725|0.006847334915166803|0.005623691352871538|0.006251310667072836|0.004703153960608617|0.005551557789828914|0.0063167965031312|0.009430692899182603|0.006787774429029786|0.0029676677953418607|0.0038284425777578117|0.002816369330079765|0.00307910425936932|0.00632283267334474|0.005950953948721875|0.003503450204518723|0.0021932153499062204|0.0012637683963450503|0.00421534180211629|0.008642950688677918|0.008570018603018736|0.007364316076658114|0.004248869079916447|0.010368823744712399|0.003505692494860016|0.002480971954772877|0.01093172751680258|0.011172077806849708|0.003666194904720912|0.002059189222956688|0.011939166016291324|0.009899918607050131|0.004803599895866615|0.00496008447529687|0.0071173060797063165|0.007775316143061622|0.0011653300822057314|0.008212669954860028|0.009731997776246353|0.009783399298164592|0.009010201858095977|0.0067760999903304486|0.009869257003186837|0.013592627317680284|0.00800159327101783|0.009259093371193836|0.008105607422118128|0.006778788573196893|0.009104586703661745|0.009113227087782217|0.0042773807486611954|0.004437993323998199|0.005518033323491846|0.004059299066200244|0.00857727483448257|0.005049611718945425|0.0031611363070335493|0.001821499115560532|0.43057613859978655|0.0049589000891299894|0.006668644581469703|0.007062201740448385|0.009348999919794097|0.005279712116985582|0.014499592114334157|0.004023414551766521|0.005219264493567956|0.016219512256107016|0.01496669138493611|0.0133931281003838|0.003515032168858379|0.014313019094705183|0.008476362199281105|0.0053566453880894765|0.008257944087783315|0.008953722172604754|0.0067627803149727765|0.00112420677023901|0.011097807632254705|0.34938404691551117|0.010686731180454214|0.010949060647621717|0.013706851539295609|0.010716103139920411|0.011363313637975079|0.010263956019656474|0.010702866017765203|0.00919145357447175|0.010547650621946203|0.009691786523014135|0.011084500134258763|0.008608425179251112|0.006437876043543966|0.007678046670191373|0.004951462589868318|0.016153281165419475|0.004655926882821976|0.005371809762583398|0.004214134081192972|0.0022868108087127094|0.40957995367932293|0.49527754386330164|0.0030183186523083227|0.003515863908346832|0.0025363368014501616|0.004565451794053748|0.00290821270695931|0.005091153324813181|0.0022965125923544443|0.0037175942065089183|0.003473107162279118|0.006216600397939326|0.0015423897279996986|0.001899687007431791|0.0023374828466339297|0.0028640160172643874|0.0038386909607936205|0.003341298721063389|0.0017376700415646222|0.0025990501902062616|0.0011256873594435747|0.003582383012046355|0.002720198924122199|0.003113921007006224|0.0019015533194958563|0.00375378974407831|0.002697411004107513|0.0026533126845709894|0.0017798513730104056|0.003195059080718559|0.00042571441011944936|0.0036227685489489863|0.0001225199213905916|0.0017590089508176302|0.0005811960992286125|0.001654791979449163|0.0033867986741990333|0.0021623148974226785|-0.00021013848204336978|0.0021587482042091113|0.0012695804239573787|0.0022492393022013253|0.30064222655931533|0.003911059334058054|0.004172838604963892|0.0035832631012469984|0.0053168316966608195|0.0015956904952556844|0.00307838201921629|0.001949240679758738|0.001926473612928451|0.0036057891099425398|0.0028448508389154995|0.002515091313273827|0.0038150516647664054|0.003803853975005906|0.0016139901942986688|0.003912890882001545|0.001568727504785405|0.005702407843383839|0.0037201436832177406|0.0007503357789411137|0.0038182994075055066|0.004418113924887699|0.0042192485396997026|0.002759254486521961|0.007536035526416682|0.003932487927328952|0.01054051763903633|0.002390028045974602|0.006575531916207014|0.011820761947367739|0.011085753159569306|0.01260627331075579|0.0037134169540078595|0.005937445339854829|0.001397504539138757|0.004233418996932999|0.008705685361153622|0.004538068821191449|0.002051103226796423|0.0009952746701810773|0.005902654533105187|0.3852626201683606|0.00800952529170519|0.007817618547081222|0.00783908074604752|0.008312545531700261|0.007089835093665626|0.00771585404675699|0.0047094881112870945|0.007508309024226173|0.01002693462090441|0.003622121573697097|0.005616711890184502|0.007829508345147803|0.0039296244259485295|0.003082761097495592|0.0034059441901646147|0.006723803294862213|0.008108647456565763|0.006297284560235723|0.01181665910939355|0.0016728697594780727|0.4049196057856326|87.41768423202141|1.9238048780487762|9859.499999999978|466895.9681999996|94.5245898929383|1.7331102362204722|440.2099999999999|24677.653700000003|82.30994261578046|1.9541886792452832|517.86|22741.821|106.04038686607277|1.8489436619718311|525.1|30980.3098|110.17679769343033|2.31698051948052|713.6300000000001|35477.7437|49.51328262080583|1.436465863453815|357.67999999999995|12793.089200000004|124.17257399601857|3.105018181818183|853.8800000000003|36674.5982|128.48428986295286|2.8940520446096656|778.5|36686.809199999996|128.68082064295126|3.271376811594204|902.9000000000003|38340.9518|69.17903260103974|1.8194029850746267|487.59999999999997|19357.9426|59.28348581526709|1.5226209677419356|377.61|15217.977900000005|47.132727052137405|1.1230877192982456|320.08|13745.172400000003|56.117297510761745|1.2346715328467153|338.29999999999995|15737.711600000002|73.31840890329185|1.940731707317073|556.9899999999999|22050.0331|93.07527032749859|1.9749011857707508|499.65|24441.7275|96.39912496837944|2.1933695652173917|605.3700000000001|27837.559499999996|102.13430017053119|1.5658391608391609|447.83|29809.505299999993|137.02923111337063|2.379181494661922|668.5500000000001|39958.78650000001|57.866605214435154|1.4386249999999998|345.27|14326.832700000003|24.30487142292881|0.49591093117408913|122.49000000000001|6039.7425|1.9139699169219333|1.925581405209007|1.9195207884572747|1.9485820392217916|1.8906801966936493|1.983736186739868|1.9707406859726733|1.9913772622615706|1.9170760058160785|1.8988790708796826|1.856661594483604|1.8733059128874012|1.9249735045421525|1.9264446632295982|1.939301258973082|1.9027464311570244|1.9465418137149322|1.8946920578698705|1.7906564909038858|0.6101599764421178|0.5574411495217466|0.6111727535855822|0.598216742699385|0.4460460742203801|0.6720887320188716|0.6912369858004347|0.6829379798425049|0.5081878490293681|0.4890461161791123|0.40678657847708155|0.45267783013218954|0.5055568829913937|0.6066602880672834|0.5911156430456692|0.5977121914548773|0.6984424256812279|0.4911531675104995|0.31380662813328425|1.0007071067811866|1.0007066071344901^$0|$1|$2|$3|4|5|$6|-5]]|7|@8|9|A|B|C|D|E|F]|G|$0|-5|H|-5]|I|$0|$J|K]|H|$J|L]]|M|0|N|15M|O|-5|P|-5|Q|-5|R|-5|S|-5]|T|$2|$3|4|5|$6|-5]]|7|@U|9|A|B|C|D]|G|$0|-5|H|-5]|I|$0|$J|V]|H|$J|W]]|M|0|N|15N|O|-5|P|-5|Q|-5|R|-5|S|-5]|X|$2|$3|4|5|$6|-5]]|7|@F|E|8|9|A|B|C|D|Y]|G|$0|15O|H|15P]|I|$0|$J|Z]|H|$J|10]]|M|H|N|15Q|O|-5|P|-5|Q|-5|R|-5|S|-5]|11|$2|$3|4|5|$6|-5]]|7|@E|8|D|Y]|G|$H|-5|12|-5|13|-5|14|-5|15|-5|16|-5|17|-5|18|-5|19|-5|1A|-5|1B|-5|1C|-5|1D|-5|O|-5|1E|-5|1F|-5|1G|-5|1H|-5]|I|$H|$J|1I]|12|$J|1J]|13|$J|1K]|14|$J|1L]|15|$J|1M]|16|$J|1N]|17|$J|1O]|18|$J|1P]|19|$J|1Q]|1A|$J|1R]|1B|$J|1S]|1C|$J|1T]|1D|$J|1U]|O|$J|1V]|1E|$J|1W]|1F|$J|1X]|1G|$J|1Y]|1H|$J|1Z]]|M|H|N|15R|O|$20|15S|21|22|23|15T|24|15U|25|@12|18|1D|1B|1F|19|15|13|H|1A|16|O|1E|1G|14|17|1C|1H]|26|$27|1QN|28|1QO|29|15V|2A|15W|2B|15X]|2C|$H|$27|1QP|28|1QQ|29|15Y|2A|15Z|2B|160]|12|$27|1QR|28|1QS|29|161|2A|162|2B|163]|13|$27|1QT|28|1QU|29|164|2A|165|2B|166]|14|$27|1QV|28|1QW|29|167|2A|168|2B|169]|15|$27|1QX|28|1QY|29|16A|2A|16B|2B|16C]|16|$27|1QZ|28|1R0|29|16D|2A|16E|2B|16F]|17|$27|1R1|28|1R2|29|16G|2A|16H|2B|16I]|18|$27|1R3|28|1R4|29|16J|2A|16K|2B|16L]|19|$27|1R5|28|1R6|29|16M|2A|16N|2B|16O]|1A|$27|1R7|28|1R8|29|16P|2A|16Q|2B|16R]|1B|$27|1R9|28|1RA|29|16S|2A|16T|2B|16U]|1C|$27|1RB|28|1RC|29|16V|2A|16W|2B|16X]|1D|$27|1RD|28|1RE|29|16Y|2A|16Z|2B|170]|O|$27|1RF|28|1RG|29|171|2A|172|2B|173]|1E|$27|1RH|28|1RI|29|174|2A|175|2B|176]|1F|$27|1RJ|28|1RK|29|177|2A|178|2B|179]|1G|$27|1RL|28|1RM|29|17A|2A|17B|2B|17C]|1H|$27|1RN|28|1RO|29|17D|2A|17E|2B|17F]]|2D|$H|1RP|12|1RQ|13|1RR|14|1RS|15|1RT|16|1RU|17|1RV|18|1RW|19|1RX|1A|1RY|1B|1RZ|1C|1S0|1D|1S1|O|1S2|1E|1S3|1F|1S4|1G|1S5|1H|1S6]|27|$H|1S7|12|1S8|13|1S9|14|1SA|15|1SB|16|1SC|17|1SD|18|1SE|19|1SF|1A|1SG|1B|1SH|1C|1SI|1D|1SJ|O|1SK|1E|1SL|1F|1SM|1G|1SN|1H|1SO]|2E|$21|2F|23|17G|24|17H|25|@13|19|18|1D|1B|15|O|12|1F|1E|H|1C|1A|1H|17|1G|14|16]|2D|$H|1SP|12|1SQ|13|1SR|14|1SS|15|1ST|16|1SU|17|1SV|18|1SW|19|1SX|1A|1SY|1B|1SZ|1C|1T0|1D|1T1|O|1T2|1E|1T3|1F|1T4|1G|1T5|1H|1T6]|2E|$21|2G|23|17I|24|17J|25|@13|19|18|15|O|1E|1F|1B|1C|17|1A|1H|1D|1G|12|14|16|H]|2D|$H|1T7|12|1T8|13|1T9|14|1TA|15|1TB|16|1TC|17|1TD|18|1TE|19|1TF|1A|1TG|1B|1TH|1C|1TI|1D|1TJ|O|1TK|1E|1TL|1F|1TM|1G|1TN|1H|1TO]|2E|$21|2H|23|17K|24|17L|25|@13|19|18|15|O|1E|1F|1B|1C|17|1A|1H|1D|1G|14|12|16|H]|2D|$H|1TP|12|1TQ|13|1TR|14|1TS|15|1TT|16|1TU|17|1TV|18|1TW|19|1TX|1A|1TY|1B|1TZ|1C|1U0|1D|1U1|O|1U2|1E|1U3|1F|1U4|1G|1U5|1H|1U6]|2E|-3|2I|-3|2J|17M|2K|@-3|1U7]|27|$13|1U8|19|1U9|18|1UA|15|1UB|O|1UC|1F|1UD|1E|1UE|1B|1UF|1C|1UG|17|1UH|1A|1UI|1H|1UJ|1D|1UK|1G|1UL|14|1UM|12|1UN|16|1UO|H|1UP]]|2I|$21|2H|23|17N|24|17O|25|@12|H|18|13|19|1B|15|16|1F|1D|O|1E|1A|1G|14|1C|17|1H]|2D|$H|1UQ|12|1UR|13|1US|14|1UT|15|1UU|16|1UV|17|1UW|18|1UX|19|1UY|1A|1UZ|1B|1V0|1C|1V1|1D|1V2|O|1V3|1E|1V4|1F|1V5|1G|1V6|1H|1V7]|2E|-3|2I|-3|2J|17P|2L|@]|2K|@-3|1U7]|27|$12|1V8|H|1V9|16|1VA|13|1VB|19|1VC|O|1VD|15|1VE|1E|1VF|1C|1VG|17|1VH|1B|1VI|1H|1VJ|1F|1VK|1G|1VL|18|1VM|1A|1VN|14|1VO|1D|1VP]]|2J|17Q|2K|@2M|1VQ]|2N|17R]|2I|$21|2G|23|17S|24|17T|25|@H|12|1D|18|19|16|1B|13|1A|14|1H|O|1F|15|1E|1C|1G|17]|2D|$H|1VR|12|1VS|13|1VT|14|1VU|15|1VV|16|1VW|17|1VX|18|1VY|19|1VZ|1A|1W0|1B|1W1|1C|1W2|1D|1W3|O|1W4|1E|1W5|1F|1W6|1G|1W7|1H|1W8]|2E|-3|2I|-3|2J|17U|2L|@2O]|2K|@-3|1U7]|27|$H|1W9|12|1WA|1D|1WB|18|1WC|19|1WD|16|1WE|1B|1WF|13|1WG|14|1WH|1A|1WI|1H|1WJ|O|1WK|1F|1WL|15|1WM|1E|1WN|1C|1WO|1G|1WP|17|1WQ]]|2J|17V|2K|@2P|1WR]|2N|17W]|2I|$21|2F|23|17X|24|17Y|25|@12|1F|16|15|1B|1G|18|14|1A|1D|17|19|1E|13|O|H|1C|1H]|2D|$H|1WS|12|1WT|13|1WU|14|1WV|15|1WW|16|1WX|17|1WY|18|1WZ|19|1X0|1A|1X1|1B|1X2|1C|1X3|1D|1X4|O|1X5|1E|1X6|1F|1X7|1G|1X8|1H|1X9]|2E|-3|2I|-3|2J|17Z|2L|@2P]|2K|@-3|1U7]|27|$12|1XA|16|1XB|1F|1XC|1B|1XD|15|1XE|18|1XF|14|1XG|1G|1XH|1D|1XI|H|1XJ|1A|1XK|19|1XL|1E|1XM|17|1XN|13|1XO|O|1XP|1C|1XQ|1H|1XR]]|2J|180|2N|181|2L|@]]|P|-5|Q|-5|R|-5|S|-5]|2Q|$2|$3|4|5|$6|-5]]|7|@F|E|8|9|A|B|C|D|Y]|G|$0|182|H|183]|I|$0|$J|2R]|H|$J|2S]]|M|H|N|184|O|-5|P|-5|Q|-5|R|-5|S|-5]|2T|$2|$3|4|5|$6|-5]]|7|@F|E|A|D|Y]|G|$H|-5|12|-5|14|-5|15|-5|2U|-5|16|-5|2V|-5|17|-5|18|-5|2W|-5|19|-5|2X|-5|1D|-5|O|-5|1E|-5|1F|-5|1G|-5|2Y|-5|2Z|-5|30|-5]|I|$H|$J|1Q]|12|$J|1J]|14|$J|1L]|15|$J|1M]|2U|$J|31]|16|$J|32]|2V|$J|33]|17|$J|34]|18|$J|1R]|2W|$J|1S]|19|$J|1T]|2X|$J|35]|1D|$J|1U]|O|$J|1V]|1E|$J|1W]|1F|$J|36]|1G|$J|1X]|2Y|$J|37]|2Z|$J|1Y]|30|$J|1Z]]|M|H|N|185|O|$20|186|21|22|23|187|24|188|25|@1D|2W|16|19|15|18|30|12|2Y|O|14|1F|2U|1E|1G|H|17|2X|2V|2Z]|26|$27|1XS|28|1XT|29|189|2A|18A|2B|18B]|2C|$H|$27|1XU|28|1XV|29|18C|2A|18D|2B|18E]|12|$27|1XW|28|1XX|29|18F|2A|18G|2B|18H]|14|$27|1XY|28|1XZ|29|18I|2A|18J|2B|18K]|15|$27|1Y0|28|1Y1|29|18L|2A|18M|2B|18N]|2U|$27|1Y2|28|1Y3|29|18O|2A|18P|2B|18Q]|16|$27|1Y4|28|1Y5|29|18R|2A|18S|2B|18T]|2V|$27|1Y6|28|1Y7|29|18U|2A|18V|2B|18W]|17|$27|1Y8|28|1Y9|29|18X|2A|18Y|2B|18Z]|18|$27|1YA|28|1YB|29|190|2A|191|2B|192]|2W|$27|1YC|28|1YD|29|193|2A|194|2B|195]|19|$27|1YE|28|1YF|29|196|2A|197|2B|198]|2X|$27|1YG|28|1YH|29|199|2A|19A|2B|19B]|1D|$27|1YI|28|1YJ|29|19C|2A|19D|2B|19E]|O|$27|1YK|28|1YL|29|19F|2A|19G|2B|19H]|1E|$27|1YM|28|1YN|29|19I|2A|19J|2B|19K]|1F|$27|1YO|28|1YP|29|19L|2A|19M|2B|19N]|1G|$27|1YQ|28|1YR|29|19O|2A|19P|2B|19Q]|2Y|$27|1YS|28|1YT|29|19R|2A|19S|2B|19T]|2Z|$27|1YU|28|1YV|29|19U|2A|19V|2B|19W]|30|$27|1YW|28|1YX|29|19X|2A|19Y|2B|19Z]]|2D|$H|1YY|12|1YZ|14|1Z0|15|1Z1|2U|1Z2|16|1Z3|2V|1Z4|17|1Z5|18|1Z6|2W|1Z7|19|1Z8|2X|1Z9|1D|1ZA|O|1ZB|1E|1ZC|1F|1ZD|1G|1ZE|2Y|1ZF|2Z|1ZG|30|1ZH]|27|$H|1ZI|12|1ZJ|14|1ZK|15|1ZL|2U|1ZM|16|1ZN|2V|1ZO|17|1ZP|18|1ZQ|2W|1ZR|19|1ZS|2X|1ZT|1D|1ZU|O|1ZV|1E|1ZW|1F|1ZX|1G|1ZY|2Y|1ZZ|2Z|200|30|201]|2E|$21|38|23|1A0|24|1A1|25|@1D|19|16|18|30|15|2W|12|2Y|14|O|1G|1F|2U|H|1E|17|2X|2V|2Z]|2D|$H|202|12|203|14|204|15|205|2U|206|16|207|2V|208|17|209|18|20A|2W|20B|19|20C|2X|20D|1D|20E|O|20F|1E|20G|1F|20H|1G|20I|2Y|20J|2Z|20K|30|20L]|2E|$21|2G|23|1A2|24|1A3|25|@19|1D|15|30|18|16|12|2W|2Y|14|1F|2U|O|H|1G|17|1E|2X|2V|2Z]|2D|$H|20M|12|20N|14|20O|15|20P|2U|20Q|16|20R|2V|20S|17|20T|18|20U|2W|20V|19|20W|2X|20X|1D|20Y|O|20Z|1E|210|1F|211|1G|212|2Y|213|2Z|214|30|215]|2E|$21|39|23|1A4|24|1A5|25|@1D|19|12|15|30|2Y|16|14|2U|2W|O|18|1F|H|1E|1G|17|2X|2V|2Z]|2D|$H|216|12|217|14|218|15|219|2U|21A|16|21B|2V|21C|17|21D|18|21E|2W|21F|19|21G|2X|21H|1D|21I|O|21J|1E|21K|1F|21L|1G|21M|2Y|21N|2Z|21O|30|21P]|2E|$21|3A|23|1A6|24|1A7|25|@1D|19|30|15|2Y|2U|O|14|12|16|1E|H|17|2W|2X|1G|1F|2V|18|2Z]|2D|$H|21Q|12|21R|14|21S|15|21T|2U|21U|16|21V|2V|21W|17|21X|18|21Y|2W|21Z|19|220|2X|221|1D|222|O|223|1E|224|1F|225|1G|226|2Y|227|2Z|228|30|229]|2E|-3|2I|-3|2J|1A8|2K|@-3|1U7]|27|$1D|22A|19|22B|30|22C|15|22D|2Y|22E|2U|22F|16|22G|O|22H|14|22I|12|22J|H|22K|1G|22L|1E|22M|1F|22N|2X|22O|2W|22P|17|22Q|2V|22R|2Z|22S|18|22T]]|2I|$21|3A|23|1A9|24|1AA|25|@1D|12|18|19|15|14|16|2W|1F|2Y|30|O|H|2U|1E|1G|17|2X|2V|2Z]|2D|$H|22U|12|22V|14|22W|15|22X|2U|22Y|16|22Z|2V|230|17|231|18|232|2W|233|19|234|2X|235|1D|236|O|237|1E|238|1F|239|1G|23A|2Y|23B|2Z|23C|30|23D]|2E|-3|2I|-3|2J|1AB|2L|@]|2K|@-3|1U7]|27|$12|23E|1D|23F|18|23G|19|23H|15|23I|14|23J|16|23K|2W|23L|1F|23M|2Y|23N|30|23O|H|23P|O|23Q|2U|23R|1E|23S|17|23T|1G|23U|2X|23V|2V|23W|2Z|23X]]|2J|1AC|2K|@3B|23Y]|2N|1AD]|2I|$21|39|23|1AE|24|1AF|25|@19|18|1D|16|2W|1F|15|30|1G|17|12|2U|14|H|2Y|2X|1E|O|2V|2Z]|2D|$H|23Z|12|240|14|241|15|242|2U|243|16|244|2V|245|17|246|18|247|2W|248|19|249|2X|24A|1D|24B|O|24C|1E|24D|1F|24E|1G|24F|2Y|24G|2Z|24H|30|24I]|2E|-3|2I|-3|2J|1AG|2L|@]|2K|@-3|1U7]|27|$19|24J|18|24K|1D|24L|2W|24M|16|24N|30|24O|1F|24P|15|24Q|17|24R|2U|24S|1G|24T|14|24U|2X|24V|2Y|24W|H|24X|1E|24Y|12|24Z|O|250|2V|251|2Z|252]]|2J|1AH|2K|@3C|253]|2N|1AI]|2I|$21|2G|23|1AJ|24|1AK|25|@1D|2W|O|16|18|1G|30|14|2Y|12|15|19|1E|2U|1F|2V|H|17|2X|2Z]|2D|$H|254|12|255|14|256|15|257|2U|258|16|259|2V|25A|17|25B|18|25C|2W|25D|19|25E|2X|25F|1D|25G|O|25H|1E|25I|1F|25J|1G|25K|2Y|25L|2Z|25M|30|25N]|2E|$21|39|23|1AL|24|1AM|25|@1D|O|2W|16|1G|30|18|14|2Y|12|15|1E|2U|2V|H|1F|19|17|2X|2Z]|2D|$H|25O|12|25P|14|25Q|15|25R|2U|25S|16|25T|2V|25U|17|25V|18|25W|2W|25X|19|25Y|2X|25Z|1D|260|O|261|1E|262|1F|263|1G|264|2Y|265|2Z|266|30|267]|2E|$21|3A|23|1AN|24|1AO|25|@1D|O|30|2W|16|1G|2Y|14|18|15|12|1E|2U|2V|H|19|1F|17|2X|2Z]|2D|$H|268|12|269|14|26A|15|26B|2U|26C|16|26D|2V|26E|17|26F|18|26G|2W|26H|19|26I|2X|26J|1D|26K|O|26L|1E|26M|1F|26N|1G|26O|2Y|26P|2Z|26Q|30|26R]|2E|-3|2I|-3|2J|1AP|2K|@-3|1U7]|27|$1D|26S|O|26T|1G|26U|16|26V|30|26W|2W|26X|2Y|26Y|14|26Z|15|270|12|271|18|272|1E|273|2U|274|2V|275|H|276|1F|277|19|278|17|279|2X|27A|2Z|27B]]|2I|$21|3A|23|1AQ|24|1AR|25|@1D|2W|18|16|O|12|14|30|2Y|15|1G|1F|1E|2U|H|19|2V|17|2X|2Z]|2D|$H|27C|12|27D|14|27E|15|27F|2U|27G|16|27H|2V|27I|17|27J|18|27K|2W|27L|19|27M|2X|27N|1D|27O|O|27P|1E|27Q|1F|27R|1G|27S|2Y|27T|2Z|27U|30|27V]|2E|-3|2I|-3|2J|1AS|2L|@]|2K|@-3|1U7]|27|$1D|27W|18|27X|2W|27Y|O|27Z|16|280|12|281|14|282|1G|283|30|284|2Y|285|15|286|1F|287|1E|288|H|289|2U|28A|2V|28B|19|28C|17|28D|2X|28E|2Z|28F]]|2J|1AT|2K|@3B|28G]|2N|1AU]|2I|$21|39|23|1AV|24|1AW|25|@18|2W|16|1D|19|30|15|1G|O|1F|14|2Y|12|1E|2U|17|H|2V|2X|2Z]|2D|$H|28H|12|28I|14|28J|15|28K|2U|28L|16|28M|2V|28N|17|28O|18|28P|2W|28Q|19|28R|2X|28S|1D|28T|O|28U|1E|28V|1F|28W|1G|28X|2Y|28Y|2Z|28Z|30|290]|2E|-3|2I|-3|2J|1AX|2L|@]|2K|@3B|291]|27|$18|292|19|293|1D|294|2W|295|16|296|30|297|1G|298|O|299|15|29A|1F|29B|14|29C|2Y|29D|17|29E|2U|29F|1E|29G|12|29H|2V|29I|H|29J|2X|29K|2Z|29L]]|2J|1AY|2L|@3D]|2K|@3C|29M]|2N|1AZ]|2J|1B0|2K|@2P|29N]|2N|1B1]|2I|$21|38|23|1B2|24|1B3|25|@2W|16|15|1E|17|30|12|18|1F|H|2U|O|2Y|14|1D|2V|2X|1G|19|2Z]|2D|$H|29O|12|29P|14|29Q|15|29R|2U|29S|16|29T|2V|29U|17|29V|18|29W|2W|29X|19|29Y|2X|29Z|1D|2A0|O|2A1|1E|2A2|1F|2A3|1G|2A4|2Y|2A5|2Z|2A6|30|2A7]|2E|$21|39|23|1B4|24|1B5|25|@15|2W|1E|17|12|H|2U|16|30|1F|2Y|14|2V|2X|O|2Z|1D|18|19|1G]|2D|$H|2A8|12|2A9|14|2AA|15|2AB|2U|2AC|16|2AD|2V|2AE|17|2AF|18|2AG|2W|2AH|19|2AI|2X|2AJ|1D|2AK|O|2AL|1E|2AM|1F|2AN|1G|2AO|2Y|2AP|2Z|2AQ|30|2AR]|2E|-3|2I|-3|2J|1B6|2K|@3B|2AS]|27|$2W|2AT|16|2AU|15|2AV|12|2AW|1E|2AX|O|2AY|17|2AZ|H|2B0|30|2B1|2Y|2B2|2U|2B3|14|2B4|1F|2B5|2V|2B6|18|2B7|2X|2B8|1D|2B9|1G|2BA|2Z|2BB|19|2BC]]|2I|$21|39|23|1B7|24|1B8|25|@19|18|2W|16|1F|15|17|1D|30|1G|H|1E|12|2U|2X|14|2V|2Y|O|2Z]|2D|$H|2BD|12|2BE|14|2BF|15|2BG|2U|2BH|16|2BI|2V|2BJ|17|2BK|18|2BL|2W|2BM|19|2BN|2X|2BO|1D|2BP|O|2BQ|1E|2BR|1F|2BS|1G|2BT|2Y|2BU|2Z|2BV|30|2BW]|2E|-3|2I|-3|2J|1B9|2L|@]|2K|@3B|2BX]|27|$19|2BY|18|2BZ|2W|2C0|16|2C1|1F|2C2|15|2C3|17|2C4|30|2C5|1D|2C6|1E|2C7|2U|2C8|1G|2C9|H|2CA|2X|2CB|2V|2CC|O|2CD|14|2CE|2Y|2CF|12|2CG|2Z|2CH]]|2J|1BA|2L|@2P]|2K|@3C|2CI]|2N|1BB]|2J|1BC|2N|1BD|2L|@]]|P|-5|Q|-5|R|-5|S|-5]|3E|$2|$3|4|5|$6|-5]]|7|@Y|A|C|9|B|D]|G|$0|-5|H|-5]|I|$0|$]|H|$]]|M|0|N|1BE|O|-5|P|-5|Q|-5|R|-5|S|-5]|3F|$2|$3|4|5|$6|-5]]|7|@Y|A|C|9|B|D]|G|$0|-5|H|-5]|I|$0|$]|H|$]]|M|0|N|1BF|O|-5|P|-5|Q|-5|R|-5|S|-5]|3G|$2|$3|4|5|$6|-5]]|7|@F|E|Y|8|3H|A|D|3I]|G|$H|-5|12|-5|13|-5|14|-5|15|-5|2U|-5|16|-5|2V|-5|17|-5|18|-5|2W|-5|19|-5|1A|-5|1B|-5|1C|-5|2X|-5|3J|-5|1D|-5|O|-5]|I|$H|$3K|3L|3M|3N|3O|3P]|12|$3K|3L|3M|3N|3O|3N]|13|$3K|3Q|3M|3N|3O|3P]|14|$3K|3Q|3M|3N|3O|3N]|15|$3K|3R|3M|3N|3O|3P]|2U|$3K|3R|3M|3N|3O|3N]|16|$3K|3S|3M|3N|3O|3P]|2V|$3K|3S|3M|3N|3O|3N]|17|$3K|3T|3M|3N|3O|3P]|18|$3K|3T|3M|3N|3O|3N]|2W|$3K|3U|3M|3N|3O|3P]|19|$3K|3U|3M|3N|3O|3N]|1A|$3K|3V|3M|3N|3O|3P]|1B|$3K|3V|3M|3N|3O|3N]|1C|$3K|3W|3M|3N|3O|3P]|2X|$3K|3W|3M|3N|3O|3N]|3J|$3K|3N|3M|3N|3O|3N]|1D|$3K|3X|3M|3N|3O|3P]|O|$3K|3X|3M|3N|3O|3N]]|M|H|N|1BG|O|$20|1BH|21|22|23|1BI|24|1BJ|25|@2V|2U|16|14|3J|1C|1B|12|1A|13|17|H|2X|18|1D|15|19|2W|O]|26|$27|2CJ|28|2CK|29|1BK|2A|2CL|2B|2CM]|2C|$H|$27|2CN|28|2CO|29|1BL|2A|2CP|2B|2CQ]|12|$27|2CR|28|2CS|29|1BM|2A|2CT|2B|2CU]|13|$27|2CV|28|2CW|29|1BN|2A|2CX|2B|2CY]|14|$27|2CZ|28|2D0|29|1BO|2A|2D1|2B|2D2]|15|$27|2D3|28|2D4|29|1BP|2A|2D5|2B|2D6]|2U|$27|2D7|28|2D8|29|1BQ|2A|2D9|2B|2DA]|16|$27|2DB|28|2DC|29|1BR|2A|2DD|2B|2DE]|2V|$27|2DF|28|2DG|29|1BS|2A|2DH|2B|2DI]|17|$27|2DJ|28|2DK|29|1BT|2A|2DL|2B|2DM]|18|$27|2DN|28|2DO|29|1BU|2A|2DP|2B|2DQ]|2W|$27|2DR|28|2DS|29|1BV|2A|2DT|2B|2DU]|19|$27|2DV|28|2DW|29|1BW|2A|2DX|2B|2DY]|1A|$27|2DZ|28|2E0|29|1BX|2A|2E1|2B|2E2]|1B|$27|2E3|28|2E4|29|1BY|2A|2E5|2B|2E6]|1C|$27|2E7|28|2E8|29|1BZ|2A|2E9|2B|2EA]|2X|$27|2EB|28|2EC|29|1C0|2A|2ED|2B|2EE]|3J|$27|2EF|28|2EG|29|1C1|2A|2EH|2B|2EI]|1D|$27|2EJ|28|2EK|29|1C2|2A|2EL|2B|2EM]|O|$27|2EN|28|2EO|29|1C3|2A|2EP|2B|2EQ]]|2D|$H|2ER|12|2ES|13|2ET|14|2EU|15|2EV|2U|2EW|16|2EX|2V|2EY|17|2EZ|18|2F0|2W|2F1|19|2F2|1A|2F3|1B|2F4|1C|2F5|2X|2F6|3J|2F7|1D|2F8|O|2F9]|27|$H|2FA|12|2FB|13|2FC|14|2FD|15|2FE|2U|2FF|16|2FG|2V|2FH|17|2FI|18|2FJ|2W|2FK|19|2FL|1A|2FM|1B|2FN|1C|2FO|2X|2FP|3J|2FQ|1D|2FR|O|2FS]|2E|-3|2I|-3|2J|1C4|2N|1C5|2L|@]]|P|-5|Q|-5|R|-5|S|-5]|3Y|$2|$3|4|5|$6|-5]]|7|@3Z|F|E|3I|D]|G|$H|-5|12|-5|13|-5|14|-5|15|-5|2U|-5|16|-5|2V|-5|17|-5|18|-5]|I|$H|$J|40]|12|$J|40]|13|$J|40]|14|$J|40]|15|$J|40]|2U|$J|41]|16|$J|40]|2V|$J|40]|17|$J|40]|18|$J|40]]|M|H|N|1C6|O|$20|1C7|21|22|23|1C8|24|1C9|25|@H|12|13|14|15|2U|16|2V|17|18]|26|$27|1CA|28|1CB|29|1CC|2A|1CD|2B|1CE]|2C|$H|$27|1CF|28|1CG|29|1CH|2A|1CI|2B|1CJ]|12|$27|1CK|28|1CL|29|1CM|2A|1CN|2B|1CO]|13|$27|1CP|28|1CQ|29|1CR|2A|1CS|2B|1CT]|14|$27|1CU|28|1CV|29|1CW|2A|1CX|2B|1CY]|15|$27|1CZ|28|1D0|29|1D1|2A|1D2|2B|1D3]|2U|$27|1D4|28|1D5|29|1D6|2A|1D7|2B|1D8]|16|$27|1D9|28|1DA|29|1DB|2A|1DC|2B|1DD]|2V|$27|1DE|28|1DF|29|1DG|2A|1DH|2B|1DI]|17|$27|1DJ|28|1DK|29|1DL|2A|1DM|2B|1DN]|18|$27|1DO|28|1DP|29|1DQ|2A|1DR|2B|1DS]]|2D|$H|1DT|12|1DU|13|1DV|14|1DW|15|1DX|2U|1DY|16|1DZ|2V|1E0|17|1E1|18|1E2]|27|$H|2FT|12|2FT|13|2FT|14|2FT|15|2FT|2U|2FT|16|2FT|2V|2FU|17|2FT|18|2FU]|2E|-3|2I|-3|2J|1E3|2N|1E4|2L|@]]|P|-5|Q|-5|R|-5|S|-5]|42|$2|$3|4|5|$6|-5]]|7|@F|E|8|9|A|B|C|D|Y]|G|$0|1E5|H|1E6|12|1E7]|I|$0|$J|43]|H|$J|44]|12|$J|45]]|M|H|N|1E8|O|-5|P|-5|Q|-5|R|-5|S|-5]|46|$2|$3|4|5|$6|-5]]|7|@A|C|9|B|D]|G|$47|-5|48|-5]|I|$47|$]|48|$]]|M|47|N|1E9|O|-5|P|-5|Q|-5|R|-5|S|-5]|49|$2|$3|4|5|$6|-5]]|7|@A|C|9|B|D]|G|$0|-5|H|-5]|I|$0|$]|H|$]]|M|0|N|1EA|O|-5|P|-5|Q|-5|R|-5|S|-5]|4A|$2|$3|4|5|$6|-5]]|7|@A|C|9|B|D]|G|$0|-5|H|-5]|I|$0|$]|H|$]]|M|0|N|1EB|O|-5|P|-5|Q|-5|R|-5|S|-5]|4B|$2|$3|4|5|$6|-5]]|7|@A|C|9|B|D]|G|$0|-5|H|-5]|I|$0|$]|H|$]]|M|0|N|1EC|O|-5|P|-5|Q|-5|R|-5|S|-5]|4C|$2|$3|4|5|$6|-5]]|7|@A|C|9|B|D]|G|$0|1ED|H|1EE]|I|$0|$]|H|$]]|M|H|N|1EF|O|-5|P|-5|Q|-5|R|-5|S|-5]|4D|$2|$3|4|5|$6|-5]]|7|@4E|4F|4G|4H|4I|9|A|B|C|D|4J]|G|$H|-5|12|-5]|I|$H|$]|12|$]]|M|H|N|1EG|O|-5|P|-5|Q|-5|R|-5|S|-5]|4K|$2|$3|4|5|$6|-5]]|7|@9|A|B|C|D]|G|$0|-5]|I|$0|$]]|M|0|N|1EH|O|-5|P|-5|Q|-5|R|-5|S|-5]|4L|$2|$3|4|5|$6|-5]]|7|@4E|4J|4H|9|A|B|C|D|4M]|G|$0|1EI|H|1EJ|12|1EK|13|1EL]|I|$0|$]|H|$]|12|$]|13|$]]|M|0|N|1EM|O|-5|P|-5|Q|-5|R|-5|S|-5]|4N|$2|$3|4|5|$6|-5]]|7|@4E|4I|9|A|B|C|D|4H|4O|4P]|G|$H|1EN|12|1EO]|I|$H|$]|12|$]]|M|H|N|1EP|O|-5|P|-5|Q|-5|R|-5|S|-5]|4Q|$2|$3|4|5|$6|-5]]|7|@A|C|9|B|D]|G|$0|1EQ|H|1ER]|I|$0|$]|H|$]]|M|H|N|1ES|O|-5|P|-5|Q|-5|R|-5|S|-5]|4R|$2|$3|4|5|$6|-5]]|7|@A|C|9|B|D]|G|$0|1ET|H|1EU]|I|$0|$]|H|$]]|M|H|N|1EV|O|-5|P|-5|Q|-5|R|-5|S|-5]|4S|$2|$3|4|5|$6|-5]]|7|@4E|4F|4G|4H|9|A|B|C|D|4J]|G|$0|1EW|H|1EX|12|1EY]|I|$0|$]|H|$]|12|$]]|M|0|N|1EZ|O|-5|P|-5|Q|-5|R|-5|S|-5]|4T|$2|$3|4|5|$6|-5]]|7|@4E|4F|4J|4G|4H|Y|4I|9|A|B|C|D|4M]|G|$0|1F0|H|1F1|12|1F2]|I|$0|$]|H|$]|12|$]]|M|0|N|1F3|O|-5|P|-5|Q|-5|R|-5|S|-5]|4U|$2|$3|4|5|$6|-5]]|7|@4E|4F|4J|4G|4H|Y|4I|9|A|B|C|D|4M]|G|$0|1F4|H|1F5|12|1F6]|I|$0|$]|H|$]|12|$]]|M|12|N|1F7|O|-5|P|-5|Q|-5|R|-5|S|-5]|4V|$2|$3|4|5|$6|-5]]|7|@4E|4F|4G|4H|4I|9|A|B|C|D|4J]|G|$H|1F8|12|1F9|13|1FA]|I|$H|$]|12|$]|13|$]]|M|H|N|1FB|O|-5|P|-5|Q|-5|R|-5|S|-5]|4W|$2|$3|4|5|$6|-5]]|7|@4F|4G|4X|9|A|B|C|D|4E|Y]|G|$0|-5|H|-5|12|-5|13|-5]|I|$0|$]|H|$]|12|$]|13|$]]|M|0|N|1FC|O|-5|P|-5|Q|-5|R|-5|S|-5]|4Y|$2|$3|4|5|$6|-5]]|7|@4E|4F|4J|4G|4H|9|A|B|C|D|4M]|G|$0|1FD|H|1FE|12|1FF|13|1FG]|I|$0|$]|H|$]|12|$]|13|$]]|M|13|N|1FH|O|-5|P|-5|Q|-5|R|-5|S|-5]|4Z|$2|$3|4|5|$6|-5]]|7|@4E|4F|4J|4G|4H|9|A|B|C|D|4M]|G|$0|1FI|H|1FJ|12|1FK|13|1FL]|I|$0|$]|H|$]|12|$]|13|$]]|M|0|N|1FM|O|-5|P|-5|Q|-5|R|-5|S|-5]|50|$2|$3|4|5|$6|-5]]|7|@A|C|9|B|D]|G|$0|-5|H|-5|12|-5|13|-5|14|-5]|I|$0|$]|H|$]|12|$]|13|$]|14|$]]|M|0|N|1FN|O|-5|P|-5|Q|-5|R|-5|S|-5]|51|$2|$3|4|5|$6|-5]]|7|@A|C|9|B|D]|G|$0|1FO|H|1FP]|I|$0|$]|H|$]]|M|H|N|1FQ|O|-5|P|-5|Q|-5|R|-5|S|-5]]|2U|$52|$2|@T]|53|@]|54|-5|55|-5|56|-5]|57|$2|@3F]|53|@]|54|-1|55|-5|56|-5]|58|$2|@4S|4T]|53|@]|54|-5|55|-5|56|-5]|59|$2|@4Z|4S|4T]|53|@4Z|4S|4T]|54|-5|55|-5|56|-5]|5A|$2|@4D|4V]|53|@4D|4V]|54|-5|55|-5|56|-5]|5B|$2|@4L]|53|@4L]|54|-5|55|-5|56|-5]|5C|$2|@4Z|4S|4T]|53|@4Z|4S|4T]|54|-5|55|-5|56|-5]|5D|$2|@4Z|4S|4T]|53|@4Z|4S|4T]|54|-5|55|-5|56|-5]|5E|$2|@4Z|4S|4T]|53|@4Z|4S|4T]|54|-5|55|-5|56|-5]|5F|$2|@4D|4V]|53|@]|54|-5|55|-5|56|-5]|5G|$2|@4W]|53|@4W]|54|-5|55|-5|56|-5]|5H|$2|@4Z|4S|4T]|53|@4Z|4S|4T]|54|-5|55|-5|56|-5]|5I|$2|@4Z|4S|4T]|53|@]|54|-5|55|-5|56|-5]|5J|$2|@49|50]|53|@]|54|-5|55|-5|56|-5]|5K|$2|@49|50]|53|@49|50]|54|-5|55|-5|56|-5]|5L|$2|@4Z|4S|4T]|53|@4Z|4S|4T]|54|-5|55|-5|56|-5]|5M|$2|@4Z|4S|4T]|53|@]|54|-5|55|-5|56|-5]|5N|$2|@4L]|53|@]|54|-5|55|-5|56|-5]|5O|$2|@4V]|53|@]|54|-5|55|-5|56|-5]|5P|$2|@4L]|53|@]|54|-5|55|-5|56|-5]|5Q|$2|@4L]|53|@]|54|-5|55|-5|56|-5]|5R|$2|@4W]|53|@]|54|-5|55|-5|56|-5]|5S|$2|@4W]|53|@]|54|-5|55|-5|56|-5]|5T|$2|@4W]|53|@4W]|54|-5|55|-5|56|-5]|5U|$2|@4W]|53|@4W]|54|-5|55|-5|56|-5]|5V|$2|@4D|4V]|53|@]|54|-5|55|-5|56|-5]|5W|$2|@4D|4V]|53|@]|54|-5|55|-5|56|-5]|5X|$2|@4Z|4L|4D|4W|4S|4V|50|4T]|53|@4Z|4L|4D|4W|4S|4V|50|4T]|54|-5|55|-5|56|-5]|5Y|$2|@4Z|4L|4D|4W|4S|4V|50|4T]|53|@4Z|4L|4D|4W|4S|4V|50|4T]|54|-5|55|-5|56|-5]|5Z|$2|@T]|53|@]|54|-5|55|-5|56|-5]|60|$2|@4Z|4S|4T]|53|@]|54|-5|55|-5|56|-5]|61|$2|@T]|53|@]|54|-5|55|-5|56|-5]|62|$2|@T]|53|@]|54|-5|55|-5|56|-5]|63|$2|@1]|53|@]|54|-5|55|-5|56|-5]|64|$2|@4C]|53|@4C]|54|-5|55|-5|56|-5]|65|$2|@4C]|53|@4C]|54|-5|55|-5|56|-5]|66|$2|@T]|53|@]|54|-5|55|-5|56|-5]|67|$2|@1|X|42]|53|@]|54|-5|55|-5|56|-5]|68|$2|@1]|53|@]|54|-5|55|-5|56|-5]|69|$2|@11|1|2T|X|2Q|42]|53|@11|2T|X|2Q|42]|54|-5|55|-5|56|-5]|6A|$2|@3G|11|1|2T|X|2Q|42|3Y]|53|@3G|11|2T|X|2Q|42|3Y]|54|-5|55|1FR|56|-5]|6B|$2|@11|1]|53|@11]|54|-5|55|-5|56|-5]|6C|$2|@11|1|2T|X|2Q|42]|53|@11|2T|X|2Q|42]|54|-5|55|-5|56|-5]|6D|$2|@4L]|53|@4L]|54|-5|55|-5|56|-5]|6E|$2|@4L]|53|@4L]|54|-5|55|-5|56|-5]|6F|$2|@1|2Q]|53|@]|54|-5|55|-5|56|-5]|6G|$2|@1]|53|@]|54|-5|55|-5|56|-5]|6H|$2|@11|2T]|53|@]|54|-5|55|-5|56|-5]|6I|$2|@11|1|2T]|53|@]|54|-5|55|-5|56|-5]|6J|$2|@3G|1|2Q|3Y]|53|@2Q]|54|-5|55|1FS|56|-5]|6K|$2|@46]|53|@]|54|-5|55|-5|56|-5]|6L|$2|@46]|53|@]|54|-5|55|-5|56|-5]|6M|$2|@46]|53|@]|54|-5|55|-5|56|-5]|6N|$2|@46]|53|@]|54|-5|55|-5|56|-5]|6O|$2|@X|2Q|42]|53|@X|2Q|42]|54|-5|55|-5|56|-5]|6P|$2|@3F]|53|@]|54|-1|55|-5|56|-5]|6Q|$2|@3G|1|2Q|3Y]|53|@2Q]|54|-5|55|1FT|56|-5]|6R|$2|@3G|1|2Q]|53|@2Q]|54|-5|55|1FU|56|-5]|6S|$2|@3G|1|2Q]|53|@2Q]|54|-5|55|1FV|56|-5]|6T|$2|@3G|1|2Q]|53|@2Q]|54|-5|55|1FW|56|-5]|6U|$2|@3G|1|2Q|3Y]|53|@2Q]|54|-5|55|1FX|56|-5]|6V|$2|@11|2T]|53|@]|54|-5|55|-5|56|-5]|6W|$2|@3G|1|2Q|3Y]|53|@2Q]|54|-5|55|1FY|56|-5]|6X|$2|@3G|1|2Q]|53|@2Q]|54|-5|55|1FZ|56|-5]|6Y|$2|@4R]|53|@4R]|54|-5|55|-5|56|-5]|6Z|$2|@4R]|53|@4R]|54|-5|55|-5|56|-5]|70|$2|@4Z]|53|@]|54|-5|55|-5|56|-5]|71|$2|@4L|4V]|53|@]|54|-5|55|-5|56|-5]|72|$2|@4L|4V]|53|@]|54|-5|55|-5|56|-5]|73|$2|@4L|4V]|53|@]|54|-5|55|-5|56|-5]|74|$2|@3Y]|53|@]|54|-5|55|-5|56|-5]|75|$2|@1|2Q|3Y]|53|@]|54|-5|55|1G0|56|-5]|76|$2|@3G|1|2Q]|53|@]|54|-5|55|1G1|56|-5]|77|$2|@4Q]|53|@4Q]|54|-5|55|-5|56|-5]|78|$2|@4Q]|53|@4Q]|54|-5|55|-5|56|-5]|79|$2|@3G|1|2Q]|53|@]|54|-5|55|1G2|56|-5]|7A|$2|@3G|1|2Q]|53|@]|54|-5|55|1G3|56|-5]]|O|$4F|$7B|7C|7D|$]]|4G|$7B|7C|7D|$]]|4O|$7B|7C|7D|$]]|4I|$7B|7C|7D|$]]|4H|$7B|7C|7D|$]]|4X|$7B|7C|7D|$]]|4E|$7B|2|7D|$]]|4J|$7B|7C|7D|$]]|4P|$7B|2|7D|$]]|Y|$7B|7C|7D|$]]|4M|$7B|7C|7D|$]]]|7E|$7F|-5|7G|-2|7H|7I|7J|-2|7K|@]|7L|-2|7M|-5|7N|7O|7P|-1|7Q|7R|7S|-2|7T|7U|7V|@]|7W|1G4|7X|7Y|7Z|-5|80|$81|82|83|84|85|86|87|88|89|8A|8B|8C|8D|8E|8F|8G|8H|8I|8J|8K|8L|8M|8N|8O|8P|8Q|8R|8S|8T|8U|8V|8W|8X|8Y|8Z|90|91|92|93|94|95|96|97|98|99|9A|9B|9C|9D|9E|9F|9G|9H|9I|9J|9K|9L|9M|9N|9O|9P|9Q|9R|9S|9T|9U|9V|9W|9X|9Y|9Z|A0|A1|A2|A3|A4|A5|A6|A7|A8|A9|AA|AB|AC|AD|AE|AF|AG|AH|AI|AJ|AK|AL|AM|AN|AO|AP|AQ|AR|AS|AT|AU|AV|AW|AX|AY|AZ|B0|B1|B2|B3|B4|B5|B6|B7|B8|B9|BA|BB|BC|BD|BE|BF|BG|BH|BI|BJ|BK|BL|BM|BN|BO|BP|BQ|BR|BS|BT|BU|BV|BW|BX|BY|BZ|C0|C1|C2|C3|C4|C5|C6|C7|C8|C9|CA|CB|CC|CD|CE|CF|CG|CH|CI|CJ|CK|CL|CM|CN|CO|CP|CQ|CR|CS|CT|CU|CV|CW|CX|CY|CZ|D0|D1|D2|D3|D4|D5|D6|D7|D8|D9|DA|DB|DC|DD|DE|DF|DG|DH|DI|DJ|DK|DL|DM|DN|DO|DP|DQ|DR|DS|DT|DU|DV|DW|DX|DY|DZ|E0|E1|E2|E3|E4|E5|E6|E7|E8|E9|EA|EB|EC|ED|EE|EF|EG|EH|EI|EJ|EK|EL|EM|EN|EO|EP|EQ|ER|ES|ET|EU|EV|EW|EX|EY|EZ|F0|F1|F2|F3|F4|F5|F6|F7|F8|F9|FA|FB|FC|FD|FE|FF|FG|3B|3A|FH|FI|FJ|FK|FL|FM|3C|39|FN|FO|FP|FQ|FR|FS|FT|FU|FV|FW|FX|FY|FZ|G0|G1|G2|G3|G4|G5|G6|G7|G8|G9|GA|2M|2H|GB|GC|GD|GE|GF|GG|GH|GI|GJ|GK|GL|GM|GN|GO|GP|GQ|GR|GS|GT|GU|GV|GW|GX|GY|GZ|H0|H1|H2|H3|H4|H5|H6|H7|H8|H9|HA|HB|HC|HD|HE|HF|HG|HH|HI|HJ|HK|HL|HM|HN|HO|HP|HQ|HR|HS|HT|HU|HV|HW|HX|HY|HZ|I0|I1|I2|I3|I4|I5|I6|I7|I8|I9|IA|IB|IC|ID|IE|IF|IG|IH|II|IJ|IK|IL|IM|IN|IO|IP|IQ|IR|IS|IT|IU|IV|IW|IX|IY|IZ|J0|J1|J2|J3|J4|J5|J6|J7|J8|J9|JA|JB|JC|JD|JE|JF|JG|JH|JI|JJ|JK|3D|38|JL|JM|JN|JO|JP|JQ|JR|JS|JT|JU|JV|JW|2P|2G|2O|2F|JX|JY|JZ|K0|K1|K2|K3|K4|K5|K6|K7|K8|K9|KA|KB|KC|KD|KE|KF|KG|KH|KI|KJ|KK|KL|KM|KN|KO|KP|KQ|KR|KS|KT|KU|KV|KW|KX|KY|KZ|L0|L1|L2|L3|L4|L5|L6|L7|L8|L9|LA|LB|LC|LD|LE|LF|LG|LH|LI|LJ|LK|LL|LM|LN|LO|LP|LQ|LR|LS|LT|LU|LV|LW|LX|LY|LZ|M0|M1|M2|M3|M4|M5|M6|M7|M8|M9|MA]|MB|@MC|MD|ME|MF|MG|1|T|MH|MI|MJ|MK|ML|MM|MN|4C|MO|MP|MQ|4N|X|MR|MS|MT|4D|11|MU|MV|4K|2Q|2T|4L|MW|MX|MY|MZ|N0|N1|N2|N3|N4|N5|N6|N7|N8|N9|NA|3E|NB|NC|ND|3F|3G|NE|NF|NG|NH|NI|NJ|NK|NL|NM|NN|NO|NP|NQ|NR|NS|4R|4S|4T|NT|NU|3Y|42|NV|NW|4U|4Z|NX|4W|46|4Q|4V|NY|NZ|4B|O0|51|49|O1|O2|4A|4Y|50]|O3|-2|O4|@O5|O6|O7|O8|O9|OA|OB|OC|OD|OE|OF|OG|OH|OI|OJ|OK|OL|OM|ON|OO|OP|OQ|OR|OS|OT|OU|OV|OW|OX|OY|OZ|P0|P1|P2|P3|P4|P5|P6|P7|P8|P9|PA|PB|PC|PD|PE|PF|PG|PH|PI|PJ|PK|PL|PM|PN|PO|PP|PQ]|PR|@O7]|PS|@PT]|PU|@O5]|PV|PW|PX|-5|PY|PZ|Q0|$]|Q1|-1|Q2|-5|Q3|-5|Q4|-2|Q5|-2|Q6|Q7|Q8|2D|Q9|QA|QB|QC|QD|-2|QE|-2|QF|-2|QG|-2|QH|-1|QI|-2|QJ|-2|QK|-5|6|1G5|QL|@O7|OL|OR|P1|P3|P5|PC|PO|PP]|QM|1G6|QN|1G7|QO|1G8|QP|QQ|QR|1G9|QS|@QT]|QU|QV|QW|QX|QY|-1|QZ|R0|R1|R2|R3|@52|R4|R5|R6|R7|R8|R9|RA|57|RB|RC|RD|RE|RF|RG|RH|RI|RJ|RK|RL|RM|RN|RO|58|59|RP|5A|5B|RQ|5C|5D|5E|5F|RR|5G|RS|5H|5I|5J|5K|RT|5L|5M|5N|5O|5P|5Q|5R|5S|5T|5U|5V|5W|RU|RV|RW|RX|RY|RZ|5X|5Y|5Z|60|61|62|63|S0|S1|S2|S3|S4|S5|S6|64|65|S7|S8|S9|SA|SB|SC|SD|66|SE|SF|SG|SH|SI|67|68|69|6A|6B|SJ|SK|6C|6D|6E|6F|6G|6H|6I|6J|SL|SM|SN|SO|SP|SQ|SR|SS|6K|6L|6M|6N|6O|6P|ST|SU|6Q|6R|6S|6T|6U|6V|6W|6X|6Y|6Z|70|71|72|73|74|75|76|SV|SW|SX|SY|SZ|77|78|79|7A]]|T0|$T1|T2|T3|@$T1|T4|T4|T5|T3|@$T1|T6|T7|P1|T8|@$T9|TA|TB|1GA|TC|@@TD|TE|3P]|@TF|TG|@TH|TI]]|$T9|TJ]]|TK|TL|TM|@$TN|TO|3|TP]|$TN|TQ|3|TR]]]]|TS|-2]|$T1|T6|T7|OQ|TT|@@TU|TE|TV]|@TD|TE|3P]|@TF|TE|TW]|$T9|TJ]]|T8|@$T9|TX|TY|TZ|U0|1GB|U1|U2|TB|1GC|TM|@]]]|TS|-2]|$T1|T6|T7|OD|T8|@$T9|TA|TB|1GD|TC|@@TD|TE|3P]|$T9|TJ]]|TK|U3|TM|@$TN|U4|3|U5]]]]|TS|-2]|$T1|T6|T7|OL|T8|@$T9|TA|TB|1GE|TC|@@TD|TE|3P]|@TF|U6|U7]|$T9|TJ]]|TK|TL|TM|@$TN|TO|3|TP]|$TN|TQ|3|U8]]]]|TS|-2]|$T1|T6|T7|OE|TT|@@TD|TE|3P]|@TF|TE|TH]|$T9|TJ]]|T8|@$T9|TA|TB|1GF|TK|TL|TM|@$TN|TO|3|TP]|$TN|TQ|3|U9]]]]|TS|-2]|$T1|T6|T7|OP|TT|@@TD|TE|3P]|$T9|TJ]]|T8|@$T9|TX|TY|UA|U0|1GG|U1|U2|TB|1GH|TM|@]]]|TS|-2]]]|$T1|T4|T4|UB|T3|@$T1|UC|T3|@$T1|UD|UD|UE|T3|@$T1|UF|UG|@]|T3|@$T1|UH|UI|UJ|UK|UL|UM|UN]|$T1|UH|UI|UJ|UK|UO|UM|UP]|$T1|UH|UI|UJ|UK|UQ|UM|UP]|$T1|UH|UI|UJ|UK|UR|UM|US]|$T1|UH|UI|UJ|UK|UT|UM|UU]|$T1|UH|UI|UJ|UK|UV|UM|UW]|$T1|UX|UY|E9|TT|@@UZ|TE|3P]|@UZ|TE|V0]|@V1|TE|3P]|@V1|TE|V0]|$T9|V2]]]|$T1|UX|UY|EB|TT|@@@UZ|TE|V3]|@UZ|TE|V4]|@V1|TE|V3]|@V1|TE|V4]|$T9|V2]]|@@UZ|V5|@3P|V0]]|@V1|V5|@3P|V0]]|$T9|TJ]]|$T9|V6]]]|$T1|UX|UY|ED|TT|@@@UZ|TG|@V7|V8|V9|VA|VB|VC]]|@V1|TG|@V7|V8|V9|VA|VB|VC]]|$T9|V2]]|@@UZ|V5|@3P|V0|V3|V4]]|@V1|V5|@3P|V0|V3|V4]]|$T9|TJ]]|$T9|V6]]]]]]]]|VD|$3E|$T1|VE|VF|3E|TT|@@VG|VH|V7]|@TD|TE|3P]|@VI|TE|VJ]|$T9|TJ]]|T3|@$T1|VK|VF|3E|VL|@0|H]|VM|VN|T3|@]]]]|49|$T1|VE|VF|49|TT|@@VO|VP|VQ]|$T9|V2]]|T3|@$T1|VK|VF|49|VL|@0|H]|VM|VN|T3|@]]]]|4A|$T1|VE|VF|4A|TS|-1|TT|@]|T3|@$T1|VK|VF|4A|VL|@0|H]|VM|VN|T3|@]]]]|58|$T1|VR|VS|58|VT|1GI|VU|1GJ|VV|1GK|VW|1GL|VX|1GM]|59|$T1|VR|VS|59|VT|1GN|VW|1GO|VX|1GP]|5A|$T1|VR|VS|5A|VT|1GQ|VW|1GR|VX|1GS]|5B|$T1|VR|VS|5B|VT|1GT|VW|1GU|VX|1GV]|5C|$T1|VR|VS|5C|VT|1GW|VW|1GX|VX|1GY]|5D|$T1|VR|VS|5D|VT|1GZ|VU|1H0|VV|1H1|VW|1H2|VX|1H3]|5E|$T1|VR|VS|5E|VT|1H4|VU|1H5|VV|1H6|VW|1H7|VX|1H8]|5F|$T1|VR|VS|5F|VT|1H9|VU|1HA|VV|1HB|VW|1HC|VX|1HD]|5G|$T1|VR|VS|5G|VT|1HE|VW|1HF|VX|1HG]|5H|$T1|VR|VS|5H|VT|1HH|VW|1HI|VX|1HJ]|5I|$T1|VR|VS|5I|VT|1HK|VU|1HL|VV|1HM|VW|1HN|VX|1HO]|5J|$T1|VR|VS|5J|VT|1HP|VW|1HQ|VX|1HR]|5K|$T1|VR|VS|5K|VT|1HS|VW|1HT|VX|1HU]|5L|$T1|VR|VS|5L|VT|1HV|VW|1HW|VX|1HX]|5M|$T1|VR|VS|5M|VT|1HY|VU|1HZ|VV|1I0|VW|1I1|VX|1I2]|5N|$T1|VR|VS|5N|VT|1I3|VU|1I4|VV|1I5|VW|1I6|VX|1I7]|5O|$T1|VR|VS|5O|VT|1I8|VW|1I9|VX|1IA]|5P|$T1|VR|VS|5P|VT|1IB|VU|1IC|VV|1ID|VW|1IE|VX|1IF]|5Q|$T1|VR|VS|5Q|VT|1IG|VU|1IH|VV|1II|VW|1IJ|VX|1IK]|5R|$T1|VR|VS|5R|VT|1IL|VU|1IM|VV|1IN|VW|1IO|VX|1IP]|5S|$T1|VR|VS|5S|VT|1IQ|VU|1IR|VV|1IS|VW|1IT|VX|1IU]|5T|$T1|VR|VS|5T|VT|1IV|VU|1IW|VV|1IX|VW|1IY|VX|1IZ]|5U|$T1|VR|VS|5U|VT|1J0|VU|1J1|VV|1J2|VW|1J3|VX|1J4]|5V|$T1|VR|VS|5V|VT|1J5|VU|1J6|VV|1J7|VW|1J8|VX|1J9]|5W|$T1|VR|VS|5W|VT|1JA|VU|1JB|VV|1JC|VW|1JD|VX|1JE]|5X|$T1|VR|VS|5X|VT|1JF|VW|1JG|VX|1JH]|5Y|$T1|VR|VS|5Y|VT|1JI|VW|1JJ|VX|1JK]|60|$T1|VR|VS|60|VT|1JL|VU|1JM|VV|1JN|VW|1JO|VX|1JP]|64|$T1|VR|VS|64|VT|1JQ|VW|1JR|VY|1JS]|65|$T1|VR|VS|65|VT|1JT|VW|1JU]|6D|$T1|VR|VS|6D|VT|1JV|VW|1JW|VX|1JX]|6E|$T1|VR|VS|6E|VT|1JY|VW|1JZ|VX|1K0]|6Y|$T1|VR|VS|6Y|VT|1K1|VW|1K2|VY|1K3]|6Z|$T1|VR|VS|6Z|VT|1K4|VW|1K5]|70|$T1|VR|VS|70|VT|1K6|VU|1K7|VV|1K8|VW|1K9|VX|1KA]|71|$T1|VR|VS|71|VT|1KB|VW|1KC|VX|1KD]|72|$T1|VR|VS|72|VT|1KE|VW|1KF|VX|1KG]|73|$T1|VR|VS|73|VT|1KH|VW|1KI|VX|1KJ]|77|$T1|VR|VS|77|VT|1KK|VW|1KL|VY|1KM]|78|$T1|VR|VS|78|VT|1KN|VW|1KO]|VZ|$T1|W0|W1|VZ|T3|@$T1|W2|TT|@@W3|TE|W4]|$T9|TJ]]|T3|@$T1|W2|TT|@@W5|TE|W4]|$T9|TJ]]|T3|@$T1|VR|VS|6V|VT|1KP|VW|1KQ|VX|1KR]]]|$T1|W2|TT|@@W6|TE|W4]|$T9|TJ]]|T3|@$T1|VR|VS|6I|VT|1KS|VW|1KT|VX|1KU|TT|@@W7|W8|W9]|$T9|TJ]]]]]]]]]|WA|$T1|W0|W1|WA|T3|@$T1|VR|VS|69|T3|@$T1|W2|TT|@@W3|TE|W4]|@W7|W8|WB]|$T9|TJ]]|T3|@$T1|VR|VS|6I|T3|@]|VT|1KV|VW|1KW|VX|1KX|TT|@@W7|W8|W9]|$T9|TJ]]]]]]|VT|1KY|VW|1KZ|VX|1L0]]]|WC|$T1|W0|W1|WC|T3|@$T1|VR|VS|6A|T3|@$T1|W2|T3|@$T1|VR|VS|6V|VT|1L1|VW|1L2|VX|1L3]]|TT|@@W3|TE|W4]|@W7|W8|WD]|$T9|TJ]]]]|VT|1L4|VU|1L5|VV|1L6|VW|1L7|VX|1L8]]]]]]]|$T1|T4|T4|PT|T3|@$T1|WE|T3|@$T1|UD|UD|UE|T3|@$T1|UF|UG|@]|T3|@$T1|UH|UI|UJ|UK|UL|UM|UN]|$T1|UH|UI|UJ|UK|UO|UM|UP]|$T1|UH|UI|UJ|UK|UQ|UM|UP]|$T1|UH|UI|UJ|UK|UR|UM|US]|$T1|UH|UI|UJ|UK|UT|UM|UU]|$T1|UH|UI|UJ|UK|UV|UM|UW]|$T1|UX|UY|E9|TT|@@UZ|TE|3P]|@UZ|TE|V0]|@V1|TE|3P]|@V1|TE|V0]|$T9|V2]]]|$T1|UX|UY|EB|TT|@@@UZ|TE|V3]|@UZ|TE|V4]|@V1|TE|V3]|@V1|TE|V4]|$T9|V2]]|@@UZ|V5|@3P|V0]]|@V1|V5|@3P|V0]]|$T9|TJ]]|$T9|V6]]]|$T1|UX|UY|ED|TT|@@@UZ|TG|@V7|V8|V9|VA|VB|VC]]|@V1|TG|@V7|V8|V9|VA|VB|VC]]|$T9|V2]]|@@UZ|V5|@3P|V0|V3|V4]]|@V1|V5|@3P|V0|V3|V4]]|$T9|TJ]]|$T9|V6]]]]]]]|$T1|WF|T3|@$T1|WG|VF|4B|T3|@$T1|VE|VF|4B|T3|@$T1|VK|VF|4B|VL|@0|H]|VM|VN|3|QA|T3|@]]|$T1|WH|WI|@WJ]|WK|-2|T3|@$T1|WL|WM|WJ|WN|-2|WO|-2|J|WP|T3|@$T1|VE|VF|4B|3|WQ|TS|-1|TT|@]|T3|@$T1|VK|VF|4B|VL|@0|H]|VM|VN|3|WQ|T3|@]]]]]|VF|4B|WR|1L9]]|TT|@@WS|TE|0]]]|$T1|WH|WI|@WJ]|WK|-2|T3|@$T1|WL|WM|WJ|WN|-2|WO|-2|J|WT|WU|-1|T3|@$T1|VE|VF|4B|3|WQ|TS|-1|TT|@]|T3|@$T1|VK|VF|4B|VL|@0|H]|VM|VN|3|WQ|T3|@]]]]]|VF|4B|WR|1LA]]|TT|@@WS|TE|H]]]]|3|QA|TS|-1|TT|@]]]|TT|@@VO|TE|WV]|@VO|TE|WW]|$T9|V2]]|WX|WY|WZ|@P1]|WM|WJ|X0|$0|$]|H|$]]|TS|-1|X1|-1]]]|$T1|WF|T3|@$T1|WG|VF|4C|T3|@$T1|VE|VF|4C|T3|@$T1|VK|VF|4C|VL|@0|H]|VM|VN|3|QA|T3|@]]|$T1|WH|WI|@]|WK|-2|T3|@$T1|X2|VF|4C|X3|-1]|$T1|VE|VF|4C|3|WQ|TT|@@TD|TE|3P]|$T9|TJ]]|T3|@$T1|VK|VF|4C|VL|@0|H]|VM|VN|3|WQ|T3|@]]]]]|TT|@@X4|TE|0]]]|$T1|WH|WI|@X5]|WK|-2|T3|@$T1|X6|X7|X8|X9|-3|T3|@$T1|VE|VF|4C|3|WQ|TT|@@TD|TE|3P]|$T9|TJ]]|T3|@$T1|VK|VF|4C|VL|@0|H]|VM|VN|3|WQ|T3|@]]]]|$T1|XA|X7|X8|XB|-2|XC|-2|WM|X5|XD|XE|XF|XG|X9|-3|VF|4C|XH|$XI|X8|XJ|@$UK|XK|XI|XL|XM|-1|XN|XO|XP|XQ|XR|-1|XS|-4|TT|@]]|$UK|XT|XI|XU|XM|-1|XN|XV|XP|-4|XR|-2|XW|XX|XS|-4|TT|@@XY|VH|V3]|$T9|TJ]]]|$UK|XZ|XI|Y0|XM|-1|XN|-4|XP|-4|XR|-2|XS|-4|TT|@]|Y1|Y2]]|X0|$Y3|-1|Y4|-1|Y5|1LB|Y6|-2|Y7|-2]|Y8|$Y9|YA]|YB|@]]|YC|YD|YE|YF|YG|$XL|-4|XU|-4|Y0|-4]|YH|@]|YI|@$XJ|@XL|XU|Y0]]]|XJ|$XL|$XR|-1|YJ|-1]|XU|$XR|-2|YJ|-2]|Y0|$XR|-2|Y1|YK|YJ|-2]]|T3|@$T1|YL|X7|X8|X9|-3|Y7|-2|YM|$]|YN|@]|YO|$]|YP|$]]]]|$T1|VR|VS|64|VT|1LC|VW|1LD|VY|1LE]]|VF|4C|VT|1LF|YQ|64]|$T1|X2|VF|4C|X3|-1]]|TT|@@X4|TE|H]]]]|3|QA|TT|@@TD|TE|3P]|$T9|TJ]]]]|TT|@@VI|U6|YR]|@VI|YS|YT]|$T9|TJ]]|WX|-4|WZ|@O7]|WM|-4|X0|$0|$]|H|$]]]|$T1|X2|VF|4C|X3|-2]]]|$T1|WF|T3|@$T1|WG|VF|4D|T3|@$T1|VE|VF|4D|T3|@$T1|VK|VF|4D|VL|@H|12]|VM|VN|3|QA|T3|@]]|$T1|WH|WI|@YU]|WK|-2|T3|@$T1|WL|WM|YU|WN|-2|WO|-2|J|YV|WU|-1|T3|@$T1|VE|VF|4D|3|WQ|TS|-1|TT|@@YW|YX|YY]|@TD|TE|3P]|$T9|TJ]]|T3|@$T1|VK|VF|4D|VL|@H|12]|VM|VN|3|WQ|T3|@]]]]]|VF|4D|WR|1LG]]|TT|@@YZ|TE|H]]]|$T1|WH|WI|@]|WK|-2|T3|@$T1|Z0|Z1|Z2|XJ|$Z3|Z4|Z5|Z6|Z7|Z8|Z9|ZA|ZB|ZC|ZD|ZE|ZF|W4]|VF|4D]|$T1|VE|VF|4D|3|WQ|TS|-1|TT|@@YW|YX|YY]|@TD|TE|3P]|$T9|TJ]]|T3|@$T1|VK|VF|4D|VL|@H|12]|VM|VN|3|WQ|T3|@]]]]]|TT|@@YZ|TE|12]]]]|3|QA|TS|-1|TT|@@YW|YX|YY]|@TD|TE|3P]|$T9|TJ]]]]|TT|@@VI|U6|VJ]|$T9|TJ]]|WX|-4|WZ|@O7]|WM|YU|X0|$0|$]|H|$]|12|$]|13|$]]|TS|-1|X1|-1]]]|$T1|WF|T3|@$T1|WG|VF|4K|T3|@$T1|VE|VF|4K|T3|@$T1|VK|VF|4K|VL|@0]|VM|VN|3|QA|T3|@]]|$T1|WH|WI|@ZG]|WK|-2|T3|@$T1|WL|WM|ZG|WN|-2|WO|-4|J|ZH|T3|@$T1|VE|VF|4K|3|WQ|TS|-1|TT|@@ZI|TE|ZJ]|@TD|TE|3P]|@YW|TE|YY]|@VG|W8|ZK]|$T9|TJ]]|T3|@$T1|VK|VF|4K|VL|@0]|VM|VN|3|WQ|T3|@]]]]]|VF|4K|WR|1LH]]|TT|@@ZL|TE|0]]]]|3|QA|TS|-1|TT|@@ZI|TE|ZJ]|@TD|TE|3P]|@YW|TE|YY]|@VG|W8|ZK]|$T9|TJ]]]]|TT|@@VI|TE|VJ]|$T9|TJ]]|WX|VJ|WZ|@OC]|WM|ZG|X0|$0|$]|H|$]|12|$]|13|$]]|TS|-1|X1|-1]]]|$T1|WF|T3|@$T1|WG|VF|4L|T3|@$T1|VE|VF|4L|T3|@$T1|VK|VF|4L|VL|@0|H|12|13]|VM|VN|3|QA|T3|@]]|$T1|WH|WI|@TZ]|WK|-2|T3|@$T1|WL|WM|TZ|WN|-2|WO|-2|J|ZM|WU|-1|T3|@$T1|VE|VF|4L|3|WQ|TT|@@@V1|TG|@3P|V0|V3|V4]]|@UZ|TG|@3P|V0|V3|V4]]|$T9|V2]]|@@TF|TE|TW]|@YW|YX|YY]|@TD|TE|3P]|@ZN|ZO|ZP]|$T9|TJ]]|$T9|V6]]|T3|@$T1|VK|VF|4L|VL|@0|H|12|13]|VM|VN|3|WQ|T3|@]]]]]|VF|4L|WR|1LI]]|TT|@@ZQ|TE|0]]]|$T1|WH|WI|@TZ]|WK|-2|T3|@$T1|WL|WM|TZ|WN|-2|WO|-2|J|ZR|WU|-1|T3|@$T1|VE|VF|4L|3|WQ|TT|@@@V1|TG|@3P|V0|V3|V4]]|@UZ|TG|@3P|V0|V3|V4]]|$T9|V2]]|@@TF|TE|TW]|@YW|YX|YY]|@TD|TE|3P]|@ZN|ZO|ZP]|$T9|TJ]]|$T9|V6]]|T3|@$T1|VK|VF|4L|VL|@0|H|12|13]|VM|VN|3|WQ|T3|@]]]]]|VF|4L|UG|@A|C|9|B|D|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F]|WR|1LJ]]|TT|@@ZQ|TE|H]]]|$T1|WH|WI|@TZ]|WK|-2|T3|@$T1|WL|WM|TZ|WN|-2|WO|-2|J|ZW|WU|-1|T3|@$T1|VE|VF|4L|3|WQ|TT|@@@V1|TG|@3P|V0|V3|V4]]|@UZ|TG|@3P|V0|V3|V4]]|$T9|V2]]|@@TF|TE|TW]|@YW|YX|YY]|@TD|TE|3P]|@ZN|ZO|ZP]|$T9|TJ]]|$T9|V6]]|T3|@$T1|VK|VF|4L|VL|@0|H|12|13]|VM|VN|3|WQ|T3|@]]]]]|VF|4L|UG|@A|C|9|B|D|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F]|WR|1LK]]|TT|@@ZQ|TE|12]]]|$T1|WH|WI|@TZ]|WK|-2|T3|@$T1|WL|WM|TZ|WN|-2|WO|-2|J|ZX|WU|-1|T3|@$T1|VE|VF|4L|3|WQ|TT|@@@V1|TG|@3P|V0|V3|V4]]|@UZ|TG|@3P|V0|V3|V4]]|$T9|V2]]|@@TF|TE|TW]|@YW|YX|YY]|@TD|TE|3P]|@ZN|ZO|ZP]|$T9|TJ]]|$T9|V6]]|T3|@$T1|VK|VF|4L|VL|@0|H|12|13]|VM|VN|3|WQ|T3|@]]]]]|VF|4L|WR|1LL]]|TT|@@ZQ|TE|13]]]]|3|QA|TT|@@@V1|TG|@3P|V0|V3|V4]]|@UZ|TG|@3P|V0|V3|V4]]|$T9|V2]]|@@TF|TE|TW]|@YW|YX|YY]|@TD|TE|3P]|@ZN|ZO|ZP]|$T9|TJ]]|$T9|V6]]]]|TT|@@VI|U6|VJ]|@VO|YX|VJ]|$T9|TJ]]|WX|ZY|WZ|@OQ|O7]|WM|TZ|X0|$0|$]|H|$]|12|$]|13|$]]|ZZ|100|X1|-1]]]|$T1|WF|T3|@$T1|WG|VF|4N|T3|@$T1|VE|VF|4N|T3|@$T1|VK|VF|4N|VL|@H|12]|VM|VN|3|QA|T3|@]]|$T1|WH|WI|@]|WK|-2|T3|@$T1|WL|WM|-4|WN|-2|WO|-4|J|101|T3|@$T1|VE|VF|4N|3|WQ|TT|@@TD|TE|3P]|@ZI|TE|ZJ]|@VG|W8|V8]|$T9|TJ]]|T3|@$T1|VK|VF|4N|VL|@H|12]|VM|VN|3|WQ|T3|@]]]]]|VF|4N|WR|1LM]]|TT|@@102|TE|H]]]|$T1|WH|WI|@]|WK|-2|T3|@$T1|WL|WM|-4|WN|-2|WO|-4|J|103|T3|@$T1|VE|VF|4N|3|WQ|TT|@@TD|TE|3P]|@ZI|TE|ZJ]|@VG|W8|V8]|$T9|TJ]]|T3|@$T1|VK|VF|4N|VL|@H|12]|VM|VN|3|WQ|T3|@]]]]]|VF|4N|WR|1LN]]|TT|@@102|TE|12]]]]|3|QA|TT|@@TD|TE|3P]|@ZI|TE|ZJ]|@VG|W8|V8]|$T9|TJ]]]]|TT|@@VI|TE|VJ]|$T9|TJ]]|WX|104|WZ|@O7]|WM|-4|X0|$H|$]|12|$]]]]]|$T1|WF|T3|@$T1|WG|VF|4Q|T3|@$T1|VE|VF|4Q|T3|@$T1|VK|VF|4Q|VL|@0|H]|VM|VN|3|QA|T3|@]]|$T1|WH|WI|@]|WK|-2|T3|@$T1|X2|VF|4Q|X3|-1]|$T1|VE|VF|4Q|3|WQ|TT|@@TD|TE|3P]|$T9|TJ]]|T3|@$T1|VK|VF|4Q|VL|@0|H]|VM|VN|3|WQ|T3|@]]]]]|TT|@@105|TE|0]]]|$T1|WH|WI|@X5]|WK|-2|T3|@$T1|X6|X7|106|X9|-3|T3|@$T1|VE|VF|4Q|3|WQ|TT|@@TD|TE|3P]|$T9|TJ]]|T3|@$T1|VK|VF|4Q|VL|@0|H]|VM|VN|3|WQ|T3|@]]]]|$T1|XA|X7|106|XB|-2|XC|-2|WM|X5|XD|XE|XF|XG|X9|-3|VF|4Q|XH|$XI|106|XJ|@$UK|XK|XI|107|XM|-1|XN|108|XP|109|XR|-1|XS|-4|TT|@]]|$UK|XT|XI|10A|XM|-1|XN|10B|XP|-4|XR|-2|XW|XX|XS|-4|TT|@@10C|VH|V3]|$T9|TJ]]]|$UK|XZ|XI|10D|XM|-1|XN|-4|XP|-4|XR|-2|XS|-4|TT|@]|Y1|Y2]]|X0|$Y3|-1|Y4|-1|Y5|1LO|Y6|-2|Y7|-2]|Y8|$Y9|YA]|YB|@]]|YC|10E|YE|10F|YG|$107|-4|10A|-4|10D|-4]|YH|@]|YI|@$XJ|@107|10A|10D]]]|XJ|$107|$XR|-1|YJ|-1]|10A|$XR|-2|YJ|-2]|10D|$XR|-2|Y1|YK|YJ|-2]]|T3|@$T1|YL|X7|106|X9|-3|Y7|-2|YM|$]|YN|@]|YO|$]|YP|$]]]]|$T1|VR|VS|77|VT|1LP|VW|1LQ|VY|1LR]]|VF|4Q|VT|1LS|YQ|77]|$T1|X2|VF|4Q|X3|-1]]|TT|@@105|TE|H]]]]|3|QA|TT|@@TD|TE|3P]|$T9|TJ]]]]|TT|@@@VI|U6|10G]|@VI|VP|10H]|$T9|TJ]]|@@VI|YS|10I]|$T9|TJ]]|$T9|V6]]|WX|-4|WZ|@O7]|WM|-4|X0|$0|$]|H|$]]]|$T1|X2|VF|4Q|X3|-2]]]|$T1|WF|T3|@$T1|WG|VF|4R|T3|@$T1|VE|VF|4R|T3|@$T1|VK|VF|4R|VL|@0|H]|VM|VN|3|QA|T3|@]]|$T1|WH|WI|@]|WK|-2|T3|@$T1|X2|VF|4R|X3|-1]|$T1|VE|VF|4R|3|WQ|TT|@@TD|TE|3P]|$T9|TJ]]|T3|@$T1|VK|VF|4R|VL|@0|H]|VM|VN|3|WQ|T3|@]]]]]|TT|@@10J|TE|0]]]|$T1|WH|WI|@X5]|WK|-2|T3|@$T1|X6|X7|10K|X9|-3|T3|@$T1|VE|VF|4R|3|WQ|TT|@@TD|TE|3P]|$T9|TJ]]|T3|@$T1|VK|VF|4R|VL|@0|H]|VM|VN|3|WQ|T3|@]]]]|$T1|XA|X7|10K|XB|-2|XC|-2|WM|X5|XD|XE|XF|XG|X9|-3|VF|4R|XH|$XI|10K|XJ|@$UK|XK|XI|10L|XM|-1|XN|10M|XP|10N|XR|-1|XS|-4|TT|@]]|$UK|XT|XI|10O|XM|-1|XN|10P|XP|-4|XR|-2|XW|XX|XS|-4|TT|@@10Q|VH|V3]|$T9|TJ]]]|$UK|XZ|XI|10R|XM|-1|XN|-4|XP|-4|XR|-2|XS|-4|TT|@]|Y1|Y2]]|X0|$Y3|-1|Y4|-1|Y5|1LT|Y6|-2|Y7|-2]|Y8|$Y9|YA]|YB|@]]|YC|10S|YE|10T|YG|$10L|-4|10O|-4|10R|-4]|YH|@]|YI|@$XJ|@10L|10O|10R]]]|XJ|$10L|$XR|-1|YJ|-1]|10O|$XR|-2|YJ|-2]|10R|$XR|-2|Y1|YK|YJ|-2]]|T3|@$T1|YL|X7|10K|X9|-3|Y7|-2|YM|$]|YN|@]|YO|$]|YP|$]]]]|$T1|VR|VS|6Y|VT|1LU|VW|1LV|VY|1LW]]|VF|4R|VT|1LX|YQ|6Y]|$T1|X2|VF|4R|X3|-1]]|TT|@@10J|TE|H]]]]|3|QA|TT|@@TD|TE|3P]|$T9|TJ]]]]|TT|@@@VI|U6|10U]|@VI|VP|10H]|$T9|TJ]]|@@VI|YS|10I]|$T9|TJ]]|$T9|V6]]|WX|-4|WZ|@O7]|WM|-4|X0|$0|$]|H|$]]]|$T1|X2|VF|4R|X3|-2]]]|$T1|WF|T3|@$T1|WG|VF|4S|T3|@$T1|VE|VF|4S|T3|@$T1|VK|VF|4S|VL|@0|H|12]|VM|VN|3|QA|T3|@]]|$T1|WH|WI|@10V]|WK|-2|T3|@$T1|WL|WM|10W|WN|-2|WO|-2|J|10X|WU|-1|T3|@$T1|VE|VF|4S|3|WQ|TT|@@@YW|YX|YY]|@TD|TE|3P]|$T9|TJ]]|@@ZN|VP|10Y]|$T9|TJ]]|@@TF|TG|@TH|U7|10Z]]|$T9|TJ]]|$T9|V6]]|T3|@$T1|VK|VF|4S|VL|@0|H|12]|VM|VN|3|WQ|T3|@]]]]]|VF|4S|WR|1LY]]|TT|@@110|TE|0]]]|$T1|WH|WI|@111]|WK|-2|T3|@$T1|WL|WM|112|WN|-2|WO|-2|J|113|WU|-1|T3|@$T1|VE|VF|4S|3|WQ|TT|@@@YW|YX|YY]|@TD|TE|3P]|$T9|TJ]]|@@ZN|VP|10Y]|$T9|TJ]]|@@TF|TG|@TH|U7|10Z]]|$T9|TJ]]|$T9|V6]]|T3|@$T1|VK|VF|4S|VL|@0|H|12]|VM|VN|3|WQ|T3|@]]]]]|VF|4S|WR|1LZ]]|TT|@@110|TE|H]]]|$T1|WH|WI|@114]|WK|-2|T3|@$T1|WL|WM|115|WN|-2|WO|-2|J|116|WU|-1|T3|@$T1|VE|VF|4S|3|WQ|TT|@@@YW|YX|YY]|@TD|TE|3P]|$T9|TJ]]|@@ZN|VP|10Y]|$T9|TJ]]|@@TF|TG|@TH|U7|10Z]]|$T9|TJ]]|$T9|V6]]|T3|@$T1|VK|VF|4S|VL|@0|H|12]|VM|VN|3|WQ|T3|@]]]]]|VF|4S|WR|1M0]]|TT|@@110|TE|12]]]]|3|QA|TT|@@@YW|YX|YY]|@TD|TE|3P]|$T9|TJ]]|@@ZN|VP|10Y]|$T9|TJ]]|@@TF|TG|@TH|U7|10Z]]|$T9|TJ]]|$T9|V6]]]]|TT|@@VI|U6|VJ]|@VI|VP|117]|@VO|ZO|118]|$T9|TJ]]|WX|119|WZ|@OD|OL|P1]|WM|11A|X0|$0|$]|H|$]|12|$]|13|$]]|X1|-1]]]|$T1|WF|T3|@$T1|WG|VF|4T|T3|@$T1|VE|VF|4T|T3|@$T1|VK|VF|4T|VL|@0|12|H]|VM|VN|3|QA|T3|@]]|$T1|WH|WI|@11B]|WK|-2|T3|@$T1|WL|WM|11B|WN|-2|WO|-2|J|11C|WU|-1|T3|@$T1|VE|VF|4T|3|WQ|TT|@@@V1|TG|@V7|V8|V9|VA|VB|VC]]|@UZ|TG|@V7|V8|V9|VA|VB|VC]]|@11D|V5|@11E|11F]]|@ZI|YX|ZJ]|$T9|TJ]]|@@TF|TE|TH]|@YW|YX|YY]|$T9|TJ]]|@@ZN|ZO|10Y]|$T9|TJ]]|$T9|V6]]|T3|@$T1|VK|VF|4T|VL|@0|H|12]|VM|VN|3|WQ|T3|@]]]]]|VF|4T|WR|1M1]]|TT|@@11G|TE|0]]]|$T1|WH|WI|@11B]|WK|-2|T3|@$T1|WL|WM|11B|WN|-2|WO|-2|J|11H|WU|-1|T3|@$T1|VE|VF|4T|3|WQ|TT|@@@V1|TG|@V7|V8|V9|VA|VB|VC]]|@UZ|TG|@V7|V8|V9|VA|VB|VC]]|@11D|V5|@11E|11F]]|@ZI|YX|ZJ]|$T9|TJ]]|@@TF|TE|TH]|@YW|YX|YY]|$T9|TJ]]|@@ZN|ZO|10Y]|$T9|TJ]]|$T9|V6]]|T3|@$T1|VK|VF|4T|VL|@0|H|12]|VM|VN|3|WQ|T3|@]]]]]|VF|4T|WR|1M2]]|TT|@@11G|TE|H]]]|$T1|WH|WI|@11B]|WK|-2|T3|@$T1|WL|WM|11B|WN|-2|WO|-2|J|11I|WU|-1|T3|@$T1|VE|VF|4T|3|WQ|TT|@@@V1|TG|@V7|V8|V9|VA|VB|VC]]|@UZ|TG|@V7|V8|V9|VA|VB|VC]]|@11D|V5|@11E|11F]]|@ZI|YX|ZJ]|$T9|TJ]]|@@TF|TE|TH]|@YW|YX|YY]|$T9|TJ]]|@@ZN|ZO|10Y]|$T9|TJ]]|$T9|V6]]|T3|@$T1|VK|VF|4T|VL|@0|H|12]|VM|VN|3|WQ|T3|@]]]]]|VF|4T|WR|1M3]]|TT|@@11G|TE|12]]]]|3|QA|TT|@@@V1|TG|@V7|V8|V9|VA|VB|VC]]|@UZ|TG|@V7|V8|V9|VA|VB|VC]]|@11D|V5|@11E|11F]]|@ZI|YX|ZJ]|$T9|TJ]]|@@TF|TE|TH]|@YW|YX|YY]|$T9|TJ]]|@@ZN|ZO|10Y]|$T9|TJ]]|$T9|V6]]]]|TT|@@VI|U6|VJ]|@VI|VP|117]|$T9|TJ]]|WX|11J|WZ|@P1|OD]|WM|11B|X0|$0|$]|H|$]|12|$]|13|$]]|X1|-1]]]|$T1|WF|T3|@$T1|WG|VF|4U|T3|@$T1|VE|VF|4U|T3|@$T1|VK|VF|4U|VL|@0|12|H]|VM|VN|3|QA|T3|@]]|$T1|WH|WI|@11B]|WK|-2|T3|@$T1|WL|WM|11B|WN|-2|WO|-2|J|11C|WU|-1|T3|@$T1|VE|VF|4U|3|WQ|TT|@@TF|TE|TH]|@YW|YX|YY]|$T9|TJ]]|T3|@$T1|VK|VF|4U|VL|@0|H|12]|VM|VN|3|WQ|T3|@]]]]]|VF|4U|WR|1M4]]|TT|@@11K|TE|0]]]|$T1|WH|WI|@11B]|WK|-2|T3|@$T1|WL|WM|11B|WN|-2|WO|-2|J|11H|WU|-1|T3|@$T1|VE|VF|4U|3|WQ|TT|@@TF|TE|TH]|@YW|YX|YY]|$T9|TJ]]|T3|@$T1|VK|VF|4U|VL|@0|H|12]|VM|VN|3|WQ|T3|@]]]]]|VF|4U|WR|1M5]]|TT|@@11K|TE|H]]]|$T1|WH|WI|@11B]|WK|-2|T3|@$T1|WL|WM|11B|WN|-2|WO|-2|J|11L|WU|-1|T3|@$T1|VE|VF|4U|3|WQ|TT|@@TF|TE|TH]|@YW|YX|YY]|$T9|TJ]]|T3|@$T1|VK|VF|4U|VL|@0|H|12]|VM|VN|3|WQ|T3|@]]]]]|VF|4U|WR|1M6]]|TT|@@11K|TE|12]]]]|3|QA|TT|@@TF|TE|TH]|@YW|YX|YY]|$T9|TJ]]]]|TT|@@VI|U6|11M]|@VI|VP|117]|$T9|TJ]]|WX|11N|WZ|@P1|OD]|WM|11B|X0|$0|$]|H|$]|12|$]|13|$]]|X1|-1]]]|$T1|WF|T3|@$T1|WG|VF|4V|T3|@$T1|VE|VF|4V|T3|@$T1|VK|VF|4V|VL|@H|12|13]|VM|VN|3|QA|T3|@]]|$T1|WH|WI|@YU]|WK|-2|T3|@$T1|WL|WM|YU|WN|-2|WO|-2|J|11O|WU|-1|T3|@$T1|VE|VF|4V|3|WQ|TT|@@YW|YX|YY]|@TD|TE|3P]|$T9|TJ]]|T3|@$T1|VK|VF|4V|VL|@H|12|13]|VM|VN|3|WQ|T3|@]]]]]|VF|4V|WR|1M7]]|TT|@@11P|TE|H]]]|$T1|WH|WI|@YU]|WK|-2|T3|@$T1|WL|WM|YU|WN|-2|WO|-2|J|11Q|WU|-1|T3|@$T1|VE|VF|4V|3|WQ|TT|@@YW|YX|YY]|@TD|TE|3P]|$T9|TJ]]|T3|@$T1|VK|VF|4V|VL|@H|12|13]|VM|VN|3|WQ|T3|@]]]]]|VF|4V|WR|1M8]]|TT|@@11P|TE|12]]]|$T1|WH|WI|@YU]|WK|-2|T3|@$T1|WL|WM|YU|WN|-2|WO|-2|J|11R|WU|-1|T3|@$T1|VE|VF|4V|3|WQ|TT|@@YW|YX|YY]|@TD|TE|3P]|$T9|TJ]]|T3|@$T1|VK|VF|4V|VL|@H|12|13]|VM|VN|3|WQ|T3|@]]]]]|VF|4V|WR|1M9]]|TT|@@11P|TE|13]]]]|3|QA|TT|@@YW|YX|YY]|@TD|TE|3P]|$T9|TJ]]]]|TT|@@VI|U6|VJ]|$T9|TJ]]|WX|-4|WZ|@O7]|WM|YU|X0|$0|$]|H|$]|12|$]|13|$]]|X1|-1]]]|$T1|WF|T3|@$T1|WG|VF|4W|T3|@$T1|VE|VF|4W|T3|@$T1|VK|VF|4W|VL|@0|H|12|13]|VM|VN|3|QA|T3|@]]|$T1|WH|WI|@11S]|WK|-2|T3|@$T1|WL|WM|11S|WN|-2|WO|-2|J|11T|WU|-1|T3|@$T1|VE|VF|4W|3|WQ|TT|@@TD|TE|3P]|$T9|TJ]]|T3|@$T1|VK|VF|4W|VL|@0|H|12|13]|VM|VN|3|WQ|T3|@]]]]]|VF|4W|WR|1MA]]|TT|@@11U|TE|0]]]|$T1|WH|WI|@11S]|WK|-2|T3|@$T1|WL|WM|11S|WN|-2|WO|-4|J|11V|WU|-1|T3|@$T1|VE|VF|4W|3|WQ|TT|@@TD|TE|3P]|$T9|TJ]]|T3|@$T1|VK|VF|4W|VL|@0|H|12|13]|VM|VN|3|WQ|T3|@]]]]]|VF|4W|WR|1MB]]|TT|@@11U|TE|H]]]|$T1|WH|WI|@11S]|WK|-2|T3|@$T1|WL|WM|11S|WN|-2|WO|-2|J|11W|WU|-1|T3|@$T1|VE|VF|4W|3|WQ|TT|@@TD|TE|3P]|$T9|TJ]]|T3|@$T1|VK|VF|4W|VL|@0|H|12|13]|VM|VN|3|WQ|T3|@]]]]]|VF|4W|WR|1MC]]|TT|@@11U|TE|12]]]|$T1|WH|WI|@11S]|WK|-2|T3|@$T1|WL|WM|11S|WN|-2|WO|-2|J|11X|WU|-1|T3|@$T1|VE|VF|4W|3|WQ|TT|@@TD|TE|3P]|$T9|TJ]]|T3|@$T1|VK|VF|4W|VL|@0|H|12|13]|VM|VN|3|WQ|T3|@]]]]]|VF|4W|WR|1MD]]|TT|@@11U|TE|13]]]]|3|QA|TT|@@TD|TE|3P]|$T9|TJ]]]]|TT|@@VI|U6|11Y]|$T9|TJ]]|WX|-4|WZ|@O7]|WM|11S|X0|$0|$]|H|$]|12|$]|13|$]]|X1|-1]]]|$T1|WF|T3|@$T1|WG|VF|4Y|T3|@$T1|VE|VF|4Y|T3|@$T1|VK|VF|4Y|VL|@0|H|12|13]|VM|VN|3|QA|T3|@]]|$T1|WH|WI|@WJ]|WK|-2|T3|@$T1|WL|WM|WJ|WN|-2|WO|-2|J|11Z|WU|-1|T3|@$T1|VE|VF|4Y|3|WQ|TT|@@TF|TE|TH]|@YW|YX|YY]|$T9|TJ]]|T3|@$T1|VK|VF|4Y|VL|@0|H|12|13]|VM|VN|3|WQ|T3|@]]]]]|VF|4Y|UG|@A|C|9|B|D|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F]|WR|1ME]]|TT|@@120|TE|0]]]|$T1|WH|WI|@WJ]|WK|-2|T3|@$T1|WL|WM|WJ|WN|-2|WO|-2|J|121|WU|-1|T3|@$T1|VE|VF|4Y|3|WQ|TT|@@TF|TE|TH]|@YW|YX|YY]|$T9|TJ]]|T3|@$T1|VK|VF|4Y|VL|@0|H|12|13]|VM|VN|3|WQ|T3|@]]]]]|VF|4Y|UG|@A|C|9|B|D|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F]|WR|1MF]]|TT|@@120|TE|H]]]|$T1|WH|WI|@WJ]|WK|-2|T3|@$T1|WL|WM|WJ|WN|-2|WO|-2|J|122|WU|-1|T3|@$T1|VE|VF|4Y|3|WQ|TT|@@TF|TE|TH]|@YW|YX|YY]|$T9|TJ]]|T3|@$T1|VK|VF|4Y|VL|@0|H|12|13]|VM|VN|3|WQ|T3|@]]]]]|VF|4Y|UG|@A|C|9|B|D|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F]|WR|1MG]]|TT|@@120|TE|12]]]|$T1|WH|WI|@WJ]|WK|-2|T3|@$T1|WL|WM|WJ|WN|-2|WO|-2|J|123|WU|-1|T3|@$T1|VE|VF|4Y|3|WQ|TT|@@TF|TE|TH]|@YW|YX|YY]|$T9|TJ]]|T3|@$T1|VK|VF|4Y|VL|@0|H|12|13]|VM|VN|3|WQ|T3|@]]]]]|VF|4Y|UG|@A|C|9|B|D|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F]|WR|1MH]]|TT|@@120|TE|13]]]]|3|QA|TT|@@TF|TE|TH]|@YW|YX|YY]|$T9|TJ]]]]|TT|@@VI|U6|124]|@VI|VP|125]|$T9|TJ]]|WX|125|WZ|@P1|OD]|WM|WJ|X0|$0|$]|H|$]|12|$]|13|$]]|ZZ|126|X1|-1]]]|$T1|WF|T3|@$T1|WG|VF|4Z|T3|@$T1|VE|VF|4Z|T3|@$T1|VK|VF|4Z|VL|@0|H|12|13]|VM|VN|3|QA|T3|@]]|$T1|WH|WI|@WJ]|WK|-2|T3|@$T1|WL|WM|WJ|WN|-2|WO|-2|J|11Z|WU|-1|T3|@$T1|VE|VF|4Z|3|WQ|TT|@@@V1|V5|@V7|V8|V9|VA|VB|VC]]|@UZ|V5|@V7|V8|V9|VA|VB|VC]]|@11D|TG|@11E|11F]]|@ZI|TE|ZJ]|$T9|V2]]|@@TF|TE|TH]|@YW|YX|YY]|$T9|TJ]]|@@ZN|ZO|10Y]|$T9|TJ]]|$T9|V6]]|T3|@$T1|VK|VF|4Z|VL|@0|H|12|13]|VM|VN|3|WQ|T3|@]]]]]|VF|4Z|UG|@A|C|9|B|D|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F]|WR|1MI]]|TT|@@127|TE|0]]]|$T1|WH|WI|@WJ]|WK|-2|T3|@$T1|WL|WM|WJ|WN|-2|WO|-2|J|121|WU|-1|T3|@$T1|VE|VF|4Z|3|WQ|TT|@@@V1|V5|@V7|V8|V9|VA|VB|VC]]|@UZ|V5|@V7|V8|V9|VA|VB|VC]]|@11D|TG|@11E|11F]]|@ZI|TE|ZJ]|$T9|V2]]|@@TF|TE|TH]|@YW|YX|YY]|$T9|TJ]]|@@ZN|ZO|10Y]|$T9|TJ]]|$T9|V6]]|T3|@$T1|VK|VF|4Z|VL|@0|H|12|13]|VM|VN|3|WQ|T3|@]]]]]|VF|4Z|UG|@A|C|9|B|D|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F]|WR|1MJ]]|TT|@@127|TE|H]]]|$T1|WH|WI|@WJ]|WK|-2|T3|@$T1|WL|WM|WJ|WN|-2|WO|-2|J|122|WU|-1|T3|@$T1|VE|VF|4Z|3|WQ|TT|@@@V1|V5|@V7|V8|V9|VA|VB|VC]]|@UZ|V5|@V7|V8|V9|VA|VB|VC]]|@11D|TG|@11E|11F]]|@ZI|TE|ZJ]|$T9|V2]]|@@TF|TE|TH]|@YW|YX|YY]|$T9|TJ]]|@@ZN|ZO|10Y]|$T9|TJ]]|$T9|V6]]|T3|@$T1|VK|VF|4Z|VL|@0|H|12|13]|VM|VN|3|WQ|T3|@]]]]]|VF|4Z|UG|@A|C|9|B|D|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F]|WR|1MK]]|TT|@@127|TE|12]]]|$T1|WH|WI|@WJ]|WK|-2|T3|@$T1|WL|WM|WJ|WN|-2|WO|-2|J|128|WU|-1|T3|@$T1|VE|VF|4Z|3|WQ|TT|@@@V1|V5|@V7|V8|V9|VA|VB|VC]]|@UZ|V5|@V7|V8|V9|VA|VB|VC]]|@11D|TG|@11E|11F]]|@ZI|TE|ZJ]|$T9|V2]]|@@TF|TE|TH]|@YW|YX|YY]|$T9|TJ]]|@@ZN|ZO|10Y]|$T9|TJ]]|$T9|V6]]|T3|@$T1|VK|VF|4Z|VL|@0|H|12|13]|VM|VN|3|WQ|T3|@]]]]]|VF|4Z|UG|@A|C|9|B|D|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F]|WR|1ML]]|TT|@@127|TE|13]]]]|3|QA|TT|@@@V1|V5|@V7|V8|V9|VA|VB|VC]]|@UZ|V5|@V7|V8|V9|VA|VB|VC]]|@11D|TG|@11E|11F]]|@ZI|TE|ZJ]|$T9|V2]]|@@TF|TE|TH]|@YW|YX|YY]|$T9|TJ]]|@@ZN|ZO|10Y]|$T9|TJ]]|$T9|V6]]]]|TT|@@VI|U6|VJ]|@VI|VP|117]|@VO|ZO|129]|$T9|TJ]]|WX|12A|WZ|@P1|OD]|WM|WJ|X0|$0|$]|H|$]|12|$]|13|$]]|ZZ|12B|X1|-1]]]|$T1|WF|T3|@$T1|WG|VF|50|T3|@$T1|VE|VF|50|T3|@$T1|VK|VF|50|VL|@0|H|12|13|14]|VM|VN|3|QA|T3|@]]|$T1|WH|WI|@12C]|WK|-2|T3|@$T1|WL|WM|12C|WN|-2|WO|-2|J|12D|WU|-1|T3|@$T1|VE|VF|50|3|WQ|TT|@@12E|TE|11F]|$T9|TJ]]|T3|@$T1|VK|VF|50|VL|@0|H|12|13|14]|VM|VN|3|WQ|T3|@]]]]]|VF|50|WR|1MM]]|TT|@@12F|TE|0]]]|$T1|WH|WI|@12C]|WK|-2|T3|@$T1|WL|WM|12C|WN|-2|WO|-2|J|12G|WU|-1|T3|@$T1|VE|VF|50|3|WQ|TT|@@12E|TE|11F]|$T9|TJ]]|T3|@$T1|VK|VF|50|VL|@0|H|12|13|14]|VM|VN|3|WQ|T3|@]]]]]|VF|50|WR|1MN]]|TT|@@12F|TE|H]]]|$T1|WH|WI|@12C]|WK|-2|T3|@$T1|WL|WM|12C|WN|-2|WO|-2|J|12H|WU|-1|T3|@$T1|VE|VF|50|3|WQ|TT|@@12E|TE|11F]|$T9|TJ]]|T3|@$T1|VK|VF|50|VL|@0|H|12|13|14]|VM|VN|3|WQ|T3|@]]]]]|VF|50|WR|1MO]]|TT|@@12F|TE|12]]]|$T1|WH|WI|@12C]|WK|-2|T3|@$T1|WL|WM|12C|WN|-2|WO|-2|J|12I|WU|-1|T3|@$T1|VE|VF|50|3|WQ|TT|@@12E|TE|11F]|$T9|TJ]]|T3|@$T1|VK|VF|50|VL|@0|H|12|13|14]|VM|VN|3|WQ|T3|@]]]]]|VF|50|WR|1MP]]|TT|@@12F|TE|13]]]|$T1|WH|WI|@12C]|WK|-2|T3|@$T1|WL|WM|12C|WN|-2|WO|-2|J|12J|WU|-1|T3|@$T1|VE|VF|50|3|WQ|TT|@@12E|TE|11F]|$T9|TJ]]|T3|@$T1|VK|VF|50|VL|@0|H|12|13|14]|VM|VN|3|WQ|T3|@]]]]]|VF|50|WR|1MQ]]|TT|@@12F|TE|14]]]]|3|QA|TT|@@12E|TE|11F]|$T9|TJ]]]]|TT|@@VI|TE|VJ]]|WX|-4|WZ|@O7]|WM|12C|X0|$0|$]|H|$]|12|$]|13|$]|14|$]]|X1|-1]]]|$T1|WF|T3|@$T1|WG|VF|51|T3|@$T1|VE|VF|51|T3|@$T1|VK|VF|51|VL|@0|H]|VM|VN|3|QA|T3|@]]|$T1|WH|WI|@12K]|WK|-2|T3|@$T1|WL|WM|12K|WN|-2|WO|-2|J|12L|T3|@$T1|VE|VF|51|3|WQ|TT|@]|T3|@$T1|VK|VF|51|VL|@0|H]|VM|VN|3|WQ|T3|@]]]]]|VF|51|WR|1MR]]|TT|@@12M|TE|0]]]|$T1|WH|WI|@12K]|WK|-2|T3|@$T1|WL|WM|12K|WN|-2|WO|-2|J|12N|T3|@$T1|VE|VF|51|3|WQ|TT|@]|T3|@$T1|VK|VF|51|VL|@0|H]|VM|VN|3|WQ|T3|@]]]]]|VF|51|WR|1MS]]|TT|@@12M|TE|H]]]]|3|QA|TT|@]]]|TT|@@VI|VP|12O]|$T9|TJ]]|WX|-4|WZ|@OE|P1|O7|OP]|WM|12K|X0|$0|$]|H|$]]|X1|-1]]]|$T1|12P|VS|58|TT|@@12Q|12R|22]|$T9|TJ]]|TC|@@12S|TG|@12T|12U|12V|12W|12X|12Y|12Z]]|@TD|TE|3P]|$T9|TJ]]|130|TA|131|132|TM|@]|T3|@$T1|133|VS|58|T3|@$T1|VR|VS|58|VT|1MT|VU|1MU|VV|1MV|VW|1MW|VX|1MX]]]]|TS|-2]|$T1|12P|VS|59|TT|@@12Q|12R|134]]|TC|@@TF|TE|TH]|@TD|TE|3P]|$T9|TJ]]|130|TA|131|TL|TM|@$TN|TO|3|TP]|$TN|TQ|3|135]]|T3|@$T1|133|VS|59|T3|@$T1|VR|VS|59|VT|1MY|VW|1MZ|VX|1N0]]]]|TS|-2]|$T1|12P|VS|5A|TT|@@12Q|12R|22]]|TC|@@TD|TE|3P]|$T9|TJ]]|130|TA|131|TL|TM|@$TN|TO|3|136]|$TN|TQ|3|137]|$TN|138|3|139]]|T3|@$T1|133|VS|5A|T3|@$T1|VR|VS|5A|VT|1N1|VW|1N2|VX|1N3]]]]|TS|-2]|$T1|12P|VS|5B|TT|@@12Q|12R|134]]|TC|@@TF|TE|TW]|$T9|TJ]]|130|TA|131|TL|TM|@$TN|TO|3|TP]|$TN|TQ|3|13A]]|T3|@$T1|133|VS|5B|T3|@$T1|VR|VS|5B|VT|1N4|VW|1N5|VX|1N6]]]]|TS|-2]|$T1|12P|VS|5C|TT|@@12Q|12R|22]]|TC|@]|130|TA|131|13B|TM|@$TN|13C|3|13D]]|T3|@$T1|133|VS|5C|T3|@$T1|VR|VS|5C|VT|1N7|VW|1N8|VX|1N9]]]]|TS|-2]|$T1|12P|VS|5D|TT|@@12Q|12R|22]]|TC|@]|130|TA|13E|13F|13G|23|131|13B|TM|@$TN|13C|3|132]|$TN|13H|3|13I]]|T3|@$T1|133|VS|5D|13G|23|13E|13F|T3|@$T1|VR|VS|5D|VT|1NA|VU|1NB|VV|1NC|VW|1ND|VX|1NE]]]]|TS|-2]|$T1|12P|VS|5E|TT|@@12Q|12R|22]]|TC|@@TD|TE|3P]|$T9|TJ]]|130|TA|13E|13F|13G|13J|131|13B|TM|@$TN|13C|3|132]]|T3|@$T1|133|VS|5E|13G|13J|13E|13F|T3|@$T1|VR|VS|5E|VT|1NF|VU|1NG|VV|1NH|VW|1NI|VX|1NJ]]]]|TS|-2]|$T1|12P|VS|5F|TT|@@12Q|12R|22]]|TC|@@TD|TE|3P]|$T9|TJ]]|130|TA|131|13B|TM|@$TN|13C|3|132]|$TN|Z5|3|13K]]|13E|13F|13G|23|T3|@$T1|133|VS|5F|13G|23|13E|13F|T3|@$T1|VR|VS|5F|VT|1NK|VU|1NL|VV|1NM|VW|1NN|VX|1NO]]]]|TS|-2]|$T1|12P|VS|5G|TT|@@12Q|12R|22]]|TC|@@TD|TE|3P]|$T9|TJ]]|130|13L|131|TL|TM|@$TN|TO|3|13M]|$TN|TQ|3|13N]]|13O|13P|13Q|13R|13S|22|T3|@$T1|133|VS|5G|T3|@$T1|VR|VS|5G|VT|1NP|VW|1NQ|VX|1NR]]]]|TS|-2]|$T1|12P|VS|5H|TT|@@12Q|12R|22]]|TC|@]|130|TA|131|13B|TM|@$TN|13C|3|13D]|$TN|13H|3|13T]]|T3|@$T1|133|VS|5H|T3|@$T1|VR|VS|5H|VT|1NS|VW|1NT|VX|1NU]]]]|TS|-2]|$T1|12P|VS|5I|TT|@@12Q|12R|22]]|TC|@@TD|TE|3P]|$T9|TJ]]|130|TA|131|13B|TM|@$TN|13C|3|132]|$TN|Z5|3|13U]]|13E|13F|13G|23|T3|@$T1|133|VS|5I|13G|23|13E|13F|T3|@$T1|VR|VS|5I|VT|1NV|VU|1NW|VV|1NX|VW|1NY|VX|1NZ]]]]|TS|-2]|$T1|12P|VS|5J|TT|@@12Q|12R|13V]]|TC|@]|130|TA|131|TL|TM|@$TN|TO|3|13W]|$TN|TQ|3|13X]]|T3|@$T1|133|VS|5J|T3|@$T1|VR|VS|5J|VT|1O0|VW|1O1|VX|1O2]]]]|TS|-2]|$T1|12P|VS|5K|TT|@@12Q|12R|22]]|TC|@]|130|TA|131|TL|TM|@$TN|TO|3|13Y]|$TN|TQ|3|13Z]]|T3|@$T1|133|VS|5K|T3|@$T1|VR|VS|5K|VT|1O3|VW|1O4|VX|1O5]]]]|TS|-2]|$T1|12P|VS|5L|TT|@@12Q|12R|22]]|TC|@]|130|TA|131|13B|TM|@$TN|13C|3|13D]|$TN|13H|3|140]]|T3|@$T1|133|VS|5L|T3|@$T1|VR|VS|5L|VT|1O6|VW|1O7|VX|1O8]]]]|TS|-2]|$T1|12P|VS|5M|TT|@@12Q|12R|22]]|TC|@]|130|TA|131|13B|TM|@$TN|13C|3|132]|$TN|Z5|3|141]]|13E|13F|13G|23|T3|@$T1|133|VS|5M|13G|23|13E|13F|T3|@$T1|VR|VS|5M|VT|1O9|VU|1OA|VV|1OB|VW|1OC|VX|1OD]]]]|TS|-2]|$T1|12P|VS|5N|TT|@@12Q|12R|22]]|TC|@]|130|TA|13E|13F|13G|23|131|13B|TM|@$TN|13C|3|132]|$TN|Z5|3|142]]|T3|@$T1|133|VS|5N|13G|23|13E|13F|T3|@$T1|VR|VS|5N|VT|1OE|VU|1OF|VV|1OG|VW|1OH|VX|1OI]]]]|TS|-2]|$T1|12P|VS|5O|TT|@@12Q|12R|134]]|TC|@@TD|TE|3P]|$T9|TJ]]|130|TA|131|143|TM|@$TN|144|3|145]]|T3|@$T1|133|VS|5O|T3|@$T1|VR|VS|5O|VT|1OJ|VW|1OK|VX|1OL]]]]|TS|-2]|$T1|12P|VS|5P|TT|@@12Q|12R|22]]|TC|@]|130|TA|13E|13F|13G|23|131|13B|TM|@$TN|13C|3|132]|$TN|Z5|3|146]]|T3|@$T1|133|VS|5P|13G|23|13E|13F|T3|@$T1|VR|VS|5P|VT|1OM|VU|1ON|VV|1OO|VW|1OP|VX|1OQ]]]]|TS|-2]|$T1|12P|VS|5Q|TT|@@12Q|12R|22]]|TC|@]|130|TA|13E|13F|13G|23|131|13B|TM|@$TN|13C|3|132]|$TN|Z5|3|147]]|T3|@$T1|133|VS|5Q|13G|23|13E|13F|T3|@$T1|VR|VS|5Q|VT|1OR|VU|1OS|VV|1OT|VW|1OU|VX|1OV]]]]|TS|-2]|$T1|12P|VS|5R|TT|@@12Q|12R|22]]|TC|@]|130|TA|13E|13F|13G|23|131|13B|TM|@$TN|13C|3|132]|$TN|Z5|3|148]]|T3|@$T1|133|VS|5R|13G|23|13E|13F|T3|@$T1|VR|VS|5R|VT|1OW|VU|1OX|VV|1OY|VW|1OZ|VX|1P0]]]]|TS|-2]|$T1|12P|VS|5S|TT|@@12Q|12R|22]]|TC|@]|130|TA|13E|13F|13G|23|131|13B|TM|@$TN|13C|3|132]|$TN|Z5|3|149]]|T3|@$T1|133|VS|5S|13G|23|13E|13F|T3|@$T1|VR|VS|5S|VT|1P1|VU|1P2|VV|1P3|VW|1P4|VX|1P5]]]]|TS|-2]|$T1|12P|VS|5T|TT|@@12Q|12R|22]]|TC|@]|130|TA|13E|13F|13G|23|131|13B|TM|@$TN|13C|3|132]|$TN|Z5|3|14A]]|T3|@$T1|133|VS|5T|13G|23|13E|13F|T3|@$T1|VR|VS|5T|VT|1P6|VU|1P7|VV|1P8|VW|1P9|VX|1PA]]]]|TS|-2]|$T1|12P|VS|5U|TT|@@12Q|12R|22]]|TC|@]|130|TA|13E|13F|13G|23|131|13B|TM|@$TN|13C|3|132]|$TN|Z5|3|14B]]|T3|@$T1|133|VS|5U|13G|23|13E|13F|T3|@$T1|VR|VS|5U|VT|1PB|VU|1PC|VV|1PD|VW|1PE|VX|1PF]]]]|TS|-2]|$T1|12P|VS|5V|TT|@@12Q|12R|22]]|TC|@@TD|TE|3P]|$T9|TJ]]|130|TA|13E|13F|13G|23|131|13B|TM|@$TN|13C|3|132]|$TN|Z5|3|14C]]|T3|@$T1|133|VS|5V|13G|23|13E|13F|T3|@$T1|VR|VS|5V|VT|1PG|VU|1PH|VV|1PI|VW|1PJ|VX|1PK]]]]|TS|-2]|$T1|12P|VS|5W|TT|@@12Q|12R|22]]|TC|@@TD|TE|3P]|$T9|TJ]]|130|TA|13E|13F|13G|23|131|13B|TM|@$TN|13C|3|132]|$TN|Z5|3|14D]]|T3|@$T1|133|VS|5W|13G|23|13E|13F|T3|@$T1|VR|VS|5W|VT|1PL|VU|1PM|VV|1PN|VW|1PO|VX|1PP]]]]|TS|-2]|$T1|12P|VS|5X|TT|@@12Q|12R|22]]|TC|@@TD|TE|3P]|$T9|TJ]]|130|TA|131|TL|TM|@$TN|TO|3|14E]|$TN|TQ|3|14F]|$TN|138|3|14G]]|T3|@$T1|133|VS|5X|T3|@$T1|VR|VS|5X|VT|1PQ|VW|1PR|VX|1PS]]]]|TS|-2]|$T1|12P|VS|5Y|TT|@@12Q|12R|22]]|TC|@@TD|TE|3P]|$T9|TJ]]|130|TA|131|TL|TM|@$TN|TO|3|14E]|$TN|TQ|3|14F]|$TN|138|3|14H]]|T3|@$T1|133|VS|5Y|T3|@$T1|VR|VS|5Y|VT|1PT|VW|1PU|VX|1PV]]]]|TS|-2]|$T1|12P|VS|60|TT|@@12Q|12R|22]|$T9|TJ]]|TC|@@12S|TG|@14I|14J|14K|14L|14M|14N]]|@TD|TE|3P]|$T9|TJ]]|130|TA|131|132|TM|@]|T3|@$T1|133|VS|60|T3|@$T1|VR|VS|60|VT|1PW|VU|1PX|VV|1PY|VW|1PZ|VX|1Q0]]]]|TS|-2]|$T1|12P|VS|6D|TT|@@12Q|12R|22]]|TC|@]|130|TA|131|TL|TM|@$TN|TQ|3|14F]|$TN|138|3|14O]]|T3|@$T1|133|VS|6D|T3|@$T1|VR|VS|6D|VT|1Q1|VW|1Q2|VX|1Q3]]]]|TS|-2]|$T1|12P|VS|6E|TT|@@12Q|12R|22]]|TC|@]|130|TA|131|TL|TM|@$TN|TQ|3|14F]|$TN|138|3|14P]]|T3|@$T1|133|VS|6E|T3|@$T1|VR|VS|6E|VT|1Q4|VW|1Q5|VX|1Q6]]]]|TS|-2]|$T1|12P|VS|70|TT|@@12Q|12R|22]|$T9|TJ]]|TC|@@12S|TG|@14Q]]|@TD|TE|3P]|$T9|TJ]]|130|TA|131|132|TM|@]|T3|@$T1|133|VS|70|T3|@$T1|VR|VS|70|VT|1Q7|VU|1Q8|VV|1Q9|VW|1QA|VX|1QB]]]]|TS|-2]|$T1|12P|VS|71|TT|@@12Q|12R|134]]|TC|@]|130|14R|131|-4|TM|@]|14R|@O7]|T3|@$T1|133|VS|71|T3|@$T1|VR|VS|71|VT|1QC|VW|1QD|VX|1QE]]]]|TS|-2]|$T1|12P|VS|72|TT|@@12Q|12R|134]]|TC|@@14S|14T|V8]|$T9|TJ]]|130|14R|131|-4|TM|@]|14R|@O7]|T3|@$T1|133|VS|72|T3|@$T1|VR|VS|72|VT|1QF|VW|1QG|VX|1QH]]]]|TS|-2]|$T1|12P|VS|73|TT|@@12Q|12R|134]]|TC|@@14U|14T|V3]|$T9|TJ]]|130|14R|131|-4|TM|@]|14R|@O7]|T3|@$T1|133|VS|73|T3|@$T1|VR|VS|73|VT|1QI|VW|1QJ|VX|1QK]]]]|TS|-2]]|TT|@]|14V|-1]]]]|14W|14X]|14Y|$5|QC|TN|14Z]|150|$3|151|152|-5|153|-5|QA|-2|20|1QL|154|155|156|@4F|4O|4I|4H|4X|4E|4J|4P|Y|4M]|157|@A|C|9|B|D|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F|158|159|15A]|15B|@A|C|9|B|D|4F|4G|4O|4I|4H|4X|ZS|ZT|ZU|ZV|4J|8|F]]|15C|-3|23|$23|15D|155|15E|11F|1QM|15F|15G|15H|15I|15J|15K|24|15L]]';  var _wa_preboot = function(visitor_callback) {function on_dl_event(e,n){window.dataLayer=window.dataLayer||[];var o=window.dataLayer.push;window.dataLayer.push=function(t){o(t),t&&t.event==e&&n()}}function is_consented(){try{var e=JSON.parse(localStorage.getItem("cookieConsent"))}catch(n){}return e&&e.spcx}function proceed(){proceeded||visitor_callback({}),proceeded=!0}var proceeded=!1;is_consented()?proceed():on_dl_event("consent",function(){is_consented()&&proceed()});}; var _wa_cjs = { 'js-zZOSgG9d3RLHr3QEwRC5-1741066838': function (cdx) { 
 },'js-wsJkc7hvBngB1gvt2O42-1741344829': function (cdx) { let requireCdx = false; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = true;
if (!requireCdx) { testing = true; }
const experimentId = 'HS25-40';
const variantId = 'D';
const experimentName = experimentId + ' Timanttimuuri ot';
const variantName = variantId + ' radio +kaikki w sykloni';
let currentDefaultButtonText = 'Tilaa HS Digi+ 1. kk 0 €'; //nykyisen napin teksti
currentDefaultButtonText = 'Lue 2 viikkoa maksutta'; //nykyisen napin teksti
const paywallType = 'hard'; // hard or archived
const commonDateUntil = 30; //false or number of days
const miniDateUntil = 60;
const digiDateUntil = 60;
const cycloneDateUntil = 180;
const miniAID = 'G45VPHOK2M8DP'; //HS Digi
const digiAID = 'GTTLP98QFLWRO'; //HS Digi+
const miniPath = '/api/safe/v1/web/subscription-funnel/hs-mini-tutustu-v624';
const digiPath = '/api/safe/v1/web/subscription-funnel/hs-digi-tutustu-v624';
const kaikkiPath = '/shopping-ui/tutustu-plus-kaikki-bundle';
const kaikkiAID = 'GFYTLWU9LP5BP'; //https://www.hs.fi/tilaus/tutustu-plus-kaikki-bundle/?aid=GFYTLWU9LP5BP
const feedTitle = 'Hesarin digitilauksella pääset lukemaan rajoituksetta tämän ja yli 400 uutta timanttiartikkelia kuukaudessa';
const defaultProduct = 'Kaikki'; //which product is pre-selected
const paywallEvent = 'change offer to cyclone at timanttimuuri'; //if there is some event sent to paywall category, e.g. change of offer
let paywall = document.querySelector('[data-ab="' + paywallType + '-paywall"]'); //main element to use

console.log('--- conductrics experiment running');

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    //if(true) { //use this if not HS
    if(requireCdx === false || window.conductrics_checkIfEligibileForP2p(cdx.trait('isLoggedIn'), cdx.trait('p2p_lightgbm'), cdx.trait('p2p'))) {
      
        //helper to confirm experiment
        const confirmExperiment = function() {
            //wait 400 ms and confirm after that
            console.log('--- wait 400 ms before checking paywall wasnt modified with braze');
            setTimeout(function() {
                paywall = document.querySelector('[data-ab="' + paywallType + '-paywall"]');
                if(paywall) {
                    console.log('--- paywall found');
                    dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
                    if(paywallEvent) {
                        dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': paywallEvent, 'eventLabel': experimentName + ' ' + variantName});
                    }
                    if(requireCdx) {
                        console.log('--- confirming experiment done');
                        cdx.confirm(true);
                    }
                }
                else {
                    console.log('--- paywall not found, no confirmation');
                }
            }, 400);
        }
        
        //helper function to create any html element
        const createElem = function(tag, classes, text) {
            let elem = document.createElement(tag);
            if(classes) {
                //split classes by space
                classes = classes.split(' ');
                for(let i = 0; i < classes.length; i++) {
                    elem.classList.add(classes[i]);
                }
            }
            if(text) {
                elem.innerHTML = text;
            }
            return elem;
        }

        //helper function to create product element 
        const createProductElement = function(productname, title, features, button) {
            let product = createElem('label', 'ab-test-paywall-product', false);
            product.setAttribute('product', productname);
            if(productname === defaultProduct) { //this is the default option
                product.classList.add('selected'); //mark it selected
                let ribbon = createElem('div', 'ab-product-ribbon', 'Uutuus!');
                product.appendChild(ribbon);
            }
            let container = createElem('div', 'ab-product-container', false);

            let check = createElem('input', 'ab-radio', false);
            check.type = 'radio';
            check.name = 'product';
            //check.id = 'radio_'+productname;  
            if(productname === defaultProduct) {
                check.checked = 'checked';
            }
            let productcontent = createElem('div', 'ab-product-content', false);
            let producttitle = createElem('p', 'ab-product-title', title);

            container.appendChild(check);
            productcontent.appendChild(producttitle);

            if(features) {
                let producttext = createElem('p', 'ab-product-text', features);
                productcontent.appendChild(producttext);
            }
            
            container.appendChild(productcontent);
            product.appendChild(container);
            check.onchange = function(e) {
                sendGAEvent('click product ' + productname);
                changeButtonUrlAndText(button, productname);
            }
            return product;
        }

        //helper function to change button url and text
        const changeButtonUrlAndText = function (button, pos) {          
            let urlParams = false;
            let pagePath = false;
            //ab-test-hard-paywall-subtitle
            let cancelAnytime = 'Voit irtisanoa tilauksen koska tahansa.';
            let allProductElements = document.querySelectorAll('.ab-test-paywall-product');
            allProductElements.forEach(function (element) {
                element.classList.remove('selected');
                if(element.getAttribute('product') === pos) {
                    element.classList.add('selected');
                }
            });

            if(pos === 'Kaikki') {
                pagePath = kaikkiPath;
                urlParams = {
                  embedded: null,
                  aid: kaikkiAID,
                  ref: 'maksumuuri_kova_eiot',
                  showPaymentPeriodList: null,
                  offer: null,
                  variant: null
                }
  
                button.innerHTML = 'Tilaa HS +Kaikki &nbsp; 1 kk 0 €';
                let pvmSpan = calculateDays(30, ' asti');
                document.querySelector('.ab-test-hard-paywall-title').innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
                let cycloneText = document.querySelector('.ab-test-paywall-additional-info');
                if(cycloneText) {
                    cycloneText.classList.remove('emphasized');
                }
                //document.querySelector('.ab-test-hard-paywall-subtitle').innerText = cancelAnytime;
            }
            else if(pos === 'Digi') {
              pagePath = miniPath;
              urlParams = {
                embedded: null,
                aid: miniAID,
                ref: 'maksumuuri_kova_eiot',
                showPaymentPeriodList: null,
                offer: 3,
                variant: null
              }

              button.innerHTML = 'Tilaa HS ' + pos + ' &nbsp; 2 kk 0 €';
              let pvmSpan = calculateDays(60, ' asti');
              document.querySelector('.ab-test-hard-paywall-title').innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
              let cycloneText = document.querySelector('.ab-test-paywall-additional-info');
              if(cycloneText) {
                  cycloneText.classList.add('emphasized');
              }
              //document.querySelector('.ab-test-hard-paywall-subtitle').innerText = cancelAnytime;
            }
            else if(pos === 'Digi+') {
                pagePath = digiPath;
                urlParams = {
                  embedded: null,
                  aid: digiAID,
                  ref: 'maksumuuri_kova_eiot',
                  showPaymentPeriodList: null,
                  offer: null,
                  variant: null
                }
  
                button.innerHTML = 'Tilaa HS ' + pos + ' &nbsp; 2 kk 0 €';
                let pvmSpan = calculateDays(60, ' asti');
                document.querySelector('.ab-test-hard-paywall-title').innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
                let cycloneText = document.querySelector('.ab-test-paywall-additional-info');
                if(cycloneText) {
                    cycloneText.classList.add('emphasized');
                }
                //document.querySelector('.ab-test-hard-paywall-subtitle').innerText = cancelAnytime;
            }
            else {  //sample?
                //shouldnt happen
            }
          
            let url = new URL(button.href);
            // Update search params
            if (urlParams) {
              Object.keys(urlParams).forEach(function (key) {
                if (urlParams[key] === null) {
                  url.searchParams.delete(key)
                } else if (urlParams[key] !== undefined) {
                  url.searchParams.set(key, urlParams[key])
                }
              })
            }
            // Update path
            if (pagePath) {
                url.pathname = pagePath;
            }
            button.href = url.toString();
            button.setAttribute('data-product-name', pos);
            button.onclick = function (e) {
                sendGAEvent('click subscribe ' + pos + ' at ' + variantId)
            }
            return button;
        }

        //helper function to calculate days d.m. 
        const calculateDays = function(d, suffix) {
            let date = new Date();
            date.setDate(date.getDate() + d);
            let dd = date.getDate();
            let mm = date.getMonth()+1;
            let pvmSpan = false;
            if(suffix) {
                pvmSpan = dd.toString() + '.' + mm.toString() + '. ' + suffix;
            }
            else {
                pvmSpan = dd.toString() + '.' + mm.toString() + '.'
            }
            return pvmSpan;
        }

        //helper function to insert style
        const insertStyle = function(containerdiv) {
            let style = `
                    :root {
                        --main-color: #191919;
                        --underline-color: #787878;
                        --line-color: #E9EAED;
                        --main-font: 'Helsingin', Arial, sans-serif;
                    }
                        
                    .ab-test-paywall-container {
                        display: flex;
                        flex-direction: column;
                        width: 100%;
                        max-width: calc(100% - 16px);
                    }

                    .ab-test-paywall-container [data-ab="hard-paywall-title"] {
                        font-size: 26px;
                        margin-bottom: 16px;
                        text-align: center;
                    }

                    .ab-test-paywall-product {
                        display: flex;
                        flex-direction: column;
                        align-items: baseline;
                        font-size: 16px;
                        font-family: var(--main-font);
                        margin: 0 auto;
                        border-top: 1px solid var(--line-color);
                        padding: 12px 0px;
                        cursor: pointer;
                        width: 100%;
                        border: 1px solid #000;
                        border-radius: 4px;
                        padding:0;
                        margin-bottom: 8px;
                        background: #F8F8F8;
                    }

                    .ab-test-paywall-product[product="Kaikki"] {
                        background: #FFF6E5;
                    }

                    .ab-product-container {
                        display: flex;
                        flex-direction: row;
                        align-items: baseline;
                        padding: 12px 12px 8px;
                        width: 100%;
                    }

                    .ab-product-ribbon {
                        background: rgb(203,158,51);
                        background: linear-gradient(90deg, rgba(203,158,51,1) 0%, rgba(252,234,148,1) 25%, rgba(237,208,106,1) 50%, rgba(252,234,148,1) 75%, rgba(203,158,51,1) 100%);
                        height: 26px;
                        text-align: center;
                        margin: 0 auto;
                        width: 100%;
                        font-size: 14px;
                        font-weight: 600;
                        padding-top: 2px;
                    }

                    .ab-test-paywall-delimeter {
                        overflow: hidden;
                        margin-top: 0;
                        margin-bottom: 8px;

                        text-align: center;
                        font-family: var(--main-font);
                        font-size: 14px;
                        font-style: normal;
                        font-weight: 500;
                        line-height: normal;
                        letter-spacing: 0.36px;
                    }
                    
                    .ab-test-paywall-delimeter:before, .ab-test-paywall-delimeter:after {
                        background-color: #ccc;
                        content: "";
                        display: inline-block;
                        height: 0.5px;
                        position: relative;
                        vertical-align: middle;
                        width: 50%;
                    }

                    .ab-test-paywall-delimeter:before {
                        right: 8px;
                        margin-left: -50%;
                    }
    
                    .ab-test-paywall-delimeter:after {
                        left: 8px;
                        margin-right: -50%;
                    }

                    .ab-test-paywall-product .ab-product-content {
                        display: flex;
                        flex-direction: column;
                        margin-left: 12px;
                        width: 100%;
                    }

                    .ab-test-paywall-product .ab-radio {
                        transform: scale(1.6);
                        accent-color: var(--main-color);
                        cursor: pointer;
                    }

                    @supports (-moz-appearance:none) {
                        .ab-test-paywall-product .ab-radio {
                            transform: scale(1.5);
                        }
                    }

                    .ab-test-paywall-product .ab-product-title {
                        font-weight: 600;
                        padding-bottom: 4px;
                        font-size: 14px;
                    }

                    .ab-test-paywall-product .ab-product-title > span {
                        font-size: 14px;
                        font-weight: 600;
                        float: right;
                        letter-spacing: -0.5px;
                    }

                    .ab-test-paywall-product .ab-product-title > span > span {
                        font-size: 12px;
                        font-weight: 300;
                        color: #666;
                        text-decoration: line-through;
                        padding-left: 4px;
                        letter-spacing: 0;
                    }

                    .ab-test-paywall-product .ab-product-text {
                        font-size: 12px;
                        margin-top: 2px;
                        color: #555;
                        text-align: left;
                    }

                    .ab-test-paywall-product .ab-product-text > span {
                        margin-right: 8px;
                    }

                    .ab-test-paywall-product .ab-product-text svg {
                        fill: #191919;
                        display: inline;
                        margin-right: 2px;
                        vertical-align: baseline;
                        height: 10px;
                    }

                    .ab-test-paywall-additional-info {
                        font-family: var(--main-font);
                        font-size: 15px;
                        font-weight: 600;
                        line-height: 1.2;
                        text-align: center;
                        margin-bottom: 16px;
                        color: #777;
                        text-decoration: line-through;
                    }

                    .ab-test-paywall-additional-info.emphasized {
                        color: #191919;
                        text-decoration: none;
                    }

                    [data-ab="hard-paywall-subtitle"] {
                        font-size: 15px;
                        font-family: var(--main-font);
                        margin-top: 12px;
                        margin-bottom: 32px;
                        text-align: center;
                    }

                    [data-ab="hard-paywall-subscribe-button"] {
                        margin: 12px auto 4px;
                        width: 260px;
                        font-family: var(--main-font);
                        font-size: 16px;
                        font-weight: 600;
                    }

                    [data-ab="hard-paywall-subscribe-button"]:active {
                        margin: 12px auto 5px;
                        width: 258px;
                    }

                    [data-ab="hard-paywall-login-link"] {
                        text-decoration: underline;
                        font-size: 14px;   
                        margin-bottom: 24px;
                        margin-top: 16px;
                    }

                    [data-ab="hard-paywall-offering"] {
                        max-width: 480px;
                    }

                    /* dark mode support */
                    .sndp-dark .ab-test-paywall-product {
                        border: 1px solid #ccc;
                        background: #262626;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-text svg {
                        fill: #AFAFAF;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-title > span, .sndp-dark .ab-test-paywall-product .ab-product-text {
                        color: #fff;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-title > span > span {
                        color: #AFAFAF;
                    }

                    .sndp-dark .ab-product-ribbon {
                        color: #000;
                    }

                    .sndp-dark .ab-test-paywall-additional-info {
                        color: #aaa;
                    }

                    .sndp-dark .ab-test-paywall-additional-info.emphasized {
                        color: #fff;
                    }
                    
                    @media (min-width: 380px) {
                        .ab-test-paywall-container {
                            max-width: 350px;
                        }

                        .ab-test-paywall-product .ab-product-text {
                            font-size: 14px;
                            margin-top: 4px;
                        }

                        .ab-test-paywall-product .ab-product-title, .ab-test-paywall-product .ab-product-title > span {
                            font-size: 16px;
                            letter-spacing: 0;
                        }

                        .ab-test-paywall-product .ab-product-title > span > span {
                            font-size: 14px;
                            padding-left: 8px;
                        }

                        .ab-test-paywall-product .ab-product-content {
                            margin-left: 16px;
                        }

                        .ab-test-paywall-product .ab-product-text svg {
                            margin-right: 4px;
                            height: 12px;
                        }

                        .ab-test-paywall-product .ab-product-text > span {
                            margin-right: 12px;
                        }
                    }
            `;
            
            if(document.location.pathname.indexOf('/visio/') > -1 ||
            document.location.pathname.indexOf('/teknologia/') > -1 ||
            document.location.pathname.indexOf('/talous/') > -1 ||
            document.location.pathname.indexOf('/autot/') > -1) {
            style += `	
                    .ab-test-paywall-product {
                        background: #F5E6DC;
                    }
            
                    .ab-test-paywall-grid .ab-grid-choose-button {
                        background: #b7384b;
                    }

                    .ab-test-paywall-product .ab-radio {
                        accent-color: #b7384b;
                    }

                    .ab-test-paywall-grid .ab-grid-choose-button:hover, .ab-test-paywall-grid .ab-grid-choose-button:active, .ab-test-paywall-grid .ab-grid-choose-button:focus {
                        background: #752f35;
                    }
                `;
            }
                        
            let styleSheet = document.createElement("style");
            styleSheet.type = "text/css";
            containerdiv.appendChild(styleSheet);
            styleSheet.innerText = style;
        };

        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-test-paywall-modified');
            let title = document.querySelector('[data-ab="' + paywallType + '-paywall-title"]');
            let subtitle = document.querySelector('[data-ab="' + paywallType + '-paywall-subtitle"]');
            let button = document.querySelector('[data-ab="' + paywallType + '-paywall-subscribe-button"]');
            let secondaryButton = document.querySelector('[data-ab="' + paywallType + '-paywall-secondary-subscribe-button"]');
            let brazeModifiedPaywall = document.querySelector('.ab-test-paywall-modified-by-braze');
            if(brazeModifiedPaywall) {
                //sendGAEvent('script failed, paywall already modified by Braze');
            }
            else if(experimentExists) {
                //sendGAEvent('script failed, paywall already modified');
            } else if(paywall && title && button) {
                if(button.innerText.trim() === currentDefaultButtonText) { //actual changes here
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
                    title.classList.add('ab-test-paywall-modified', namelower);

                    if(secondaryButton) { //katso muut tarjoukset button on HS
                        secondaryButton.style.display = 'none';
                    }

                    let loginLink = paywall.querySelector('[data-ab="' + paywallType + '-paywall-login-link"]');
                    if(loginLink) {
                        let paywallIndicator = paywall.querySelector('[data-ab="' + paywallType + '-paywall-logo"]').parentNode;
                        paywallIndicator.insertBefore(loginLink, paywallIndicator.childNodes[2]); //insert in between paywall indicators
                    }

                    //create container div - which contains all the elements
                    let containerdiv = createElem('div', 'ab-test-paywall-container', false);

                    //change subscribe button url and text
                    button = changeButtonUrlAndText(button, 'Kaikki');

                    //main date until in title
                    if(commonDateUntil) {
                        let pvmSpan = calculateDays(commonDateUntil, 'asti');
                        title.innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
                    }

                    let checkIconSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14" fill="none"><path d="M6.05367 8.43079L4.50494 6.88207C4.41264 6.78976 4.29662 6.74254 4.15687 6.74041C4.01713 6.73826 3.89897 6.78548 3.80239 6.88207C3.70581 6.97865 3.65752 7.09574 3.65752 7.23334C3.65752 7.37094 3.70581 7.48803 3.80239 7.5846L5.63187 9.41409C5.75238 9.5346 5.89298 9.59486 6.05367 9.59486C6.21435 9.59486 6.35494 9.5346 6.47545 9.41409L10.1844 5.70512C10.2767 5.61282 10.324 5.4968 10.3261 5.35705C10.3282 5.21731 10.281 5.09915 10.1844 5.00257C10.0878 4.90599 9.97076 4.8577 9.83316 4.8577C9.69556 4.8577 9.57847 4.90599 9.48189 5.00257L6.05367 8.43079ZM7.00094 13.3333C6.12498 13.3333 5.30163 13.1671 4.53087 12.8347C3.7601 12.5022 3.08965 12.051 2.5195 11.4812C1.94935 10.9113 1.49798 10.2411 1.16539 9.47067C0.832798 8.70026 0.666504 7.87708 0.666504 7.00112C0.666504 6.12517 0.832726 5.30181 1.16517 4.53105C1.49762 3.76029 1.94878 3.08983 2.51867 2.51969C3.08857 1.94953 3.75873 1.49816 4.52915 1.16557C5.29957 0.832982 6.12275 0.666687 6.9987 0.666687C7.87466 0.666687 8.69802 0.83291 9.46877 1.16535C10.2395 1.4978 10.91 1.94897 11.4801 2.51885C12.0503 3.08875 12.5017 3.75892 12.8343 4.52934C13.1668 5.29975 13.3331 6.12293 13.3331 6.99889C13.3331 7.87484 13.1669 8.6982 12.8345 9.46895C12.502 10.2397 12.0509 10.9102 11.481 11.4803C10.9111 12.0505 10.2409 12.5019 9.47049 12.8344C8.70008 13.167 7.87689 13.3333 7.00094 13.3333ZM6.99982 12.3333C8.48871 12.3333 9.74982 11.8167 10.7832 10.7833C11.8165 9.75001 12.3332 8.48889 12.3332 7C12.3332 5.51112 11.8165 4.25 10.7832 3.21667C9.74982 2.18334 8.48871 1.66667 6.99982 1.66667C5.51093 1.66667 4.24982 2.18334 3.21649 3.21667C2.18315 4.25 1.66649 5.51112 1.66649 7C1.66649 8.48889 2.18315 9.75001 3.21649 10.7833C4.24982 11.8167 5.51093 12.3333 6.99982 12.3333Z"/></svg>';
                    let readingRightsForOneSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="2 2 32 32" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M18.3725 13.5C20.0293 13.5 21.3725 12.1569 21.3725 10.5C21.3725 8.84315 20.0293 7.5 18.3725 7.5C16.7156 7.5 15.3725 8.84315 15.3725 10.5C15.3725 12.1569 16.7156 13.5 18.3725 13.5ZM18.3725 16.5C21.6862 16.5 24.3725 13.8137 24.3725 10.5C24.3725 7.18629 21.6862 4.5 18.3725 4.5C15.0588 4.5 12.3725 7.18629 12.3725 10.5C12.3725 13.8137 15.0588 16.5 18.3725 16.5ZM18.3725 18C23.8903 18 27.2436 20.6846 28.948 23.6222C28.9709 23.6617 28.9918 23.7017 29.0107 23.7423C29.3011 24.1997 29.3328 24.7992 29.0421 25.3002C27.3377 28.2379 23.8903 31.1253 18.3725 31.1253C12.8547 31.1253 9.40724 28.2379 7.70281 25.3002C7.41216 24.7992 7.44389 24.1999 7.73416 23.7425C7.7531 23.7019 7.77402 23.6617 7.79695 23.6222C9.50137 20.6846 12.8547 18 18.3725 18ZM10.7754 24.5282C12.1114 26.3666 14.5065 28.1253 18.3725 28.1253C22.2385 28.1253 24.6335 26.3666 25.9696 24.5282C24.6675 22.6761 22.3285 21 18.3725 21C14.4164 21 12.0774 22.6761 10.7754 24.5282Z"></path></svg>';
                    let readingRightsForFourSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="13" viewBox="0 0 14 13" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.5809 3.16667C7.5809 4.63943 6.387 5.83333 4.91424 5.83333C3.44148 5.83333 2.24757 4.63943 2.24757 3.16667C2.24757 1.69391 3.44148 0.5 4.91424 0.5C6.387 0.5 7.5809 1.69391 7.5809 3.16667ZM6.24757 3.16667C6.24757 3.90305 5.65062 4.5 4.91424 4.5C4.17786 4.5 3.5809 3.90305 3.5809 3.16667C3.5809 2.43029 4.17786 1.83333 4.91424 1.83333C5.65062 1.83333 6.24757 2.43029 6.24757 3.16667Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.61447 8.99877C8.85695 7.69314 7.3666 6.5 4.91424 6.5C2.46188 6.5 0.97153 7.69314 0.214008 8.99877C0.20382 9.01633 0.194523 9.03416 0.186103 9.05221C0.0570957 9.2555 0.0429897 9.52189 0.17217 9.74454C0.929692 11.0502 2.46188 12.3334 4.91425 12.3334C7.36661 12.3334 8.8988 11.0502 9.65632 9.74454C9.78552 9.52186 9.77139 9.25543 9.64234 9.05214C9.63393 9.03411 9.62464 9.0163 9.61447 8.99877ZM4.91425 11.0001C3.19602 11.0001 2.13155 10.2185 1.53775 9.40141C2.11643 8.57826 3.15599 7.83333 4.91424 7.83333C6.67249 7.83333 7.71205 8.57827 8.29073 9.40142C7.69693 10.2185 6.63246 11.0001 4.91425 11.0001Z"></path><path d="M8.58091 5.83333C8.1137 5.83333 7.67455 5.71318 7.29267 5.50209C7.60603 5.183 7.85567 4.80114 8.021 4.37709C8.19125 4.45598 8.38094 4.5 8.58091 4.5C9.31729 4.5 9.91424 3.90305 9.91424 3.16667C9.91424 2.43029 9.31729 1.83333 8.58091 1.83333C8.38094 1.83333 8.19125 1.87736 8.021 1.95624C7.85567 1.5322 7.60603 1.15033 7.29267 0.831247C7.67455 0.620154 8.1137 0.5 8.58091 0.5C10.0537 0.5 11.2476 1.69391 11.2476 3.16667C11.2476 4.63943 10.0537 5.83333 8.58091 5.83333Z"></path><path d="M9.66834 10.8844C9.21539 11.4261 8.63188 11.9239 7.91194 12.3003C8.12684 12.322 8.34979 12.3334 8.58092 12.3334C11.0333 12.3334 12.5655 11.0502 13.323 9.74454C13.4522 9.52186 13.4381 9.25543 13.309 9.05214C13.3006 9.03411 13.2913 9.0163 13.2811 8.99877C12.5236 7.69314 11.0333 6.5 8.58091 6.5C8.36457 6.5 8.15572 6.50929 7.95419 6.52711C8.67207 6.90013 9.24931 7.39617 9.6959 7.94617C10.7985 8.18463 11.5135 8.77001 11.9574 9.40142C11.5006 10.0299 10.7654 10.6374 9.66834 10.8844Z"></path></svg>';
                    let facsimileSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="15" viewBox="0 0 16 15" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M15.0282 0.519266C14.9956 0.319292 14.822 0.166664 14.6128 0.166664H3.13458L3.06631 0.172173C2.86634 0.20479 2.71371 0.378338 2.71371 0.587534L2.71295 3.94837L0.838847 3.94897L0.768529 3.95481C0.562854 3.98937 0.408842 4.1729 0.41839 4.38847L0.818935 13.4318L0.847872 13.5654C1.0317 14.3071 1.55045 14.7823 2.27412 14.7823H13.6125L13.7284 14.7778C14.455 14.7212 15.0337 14.1365 15.0337 13.4132V0.587534L15.0282 0.519266ZM3.55469 1.0084H14.1912L14.192 13.4132L14.1868 13.4837C14.1491 13.7378 13.9103 13.9406 13.6125 13.9406H2.27412L2.18767 13.9352C1.90852 13.8994 1.72045 13.6867 1.65272 13.3339L1.27816 4.79011H2.71295L2.71371 12.0658L2.71922 12.1341C2.75184 12.334 2.92539 12.4867 3.13458 12.4867L3.20285 12.4812C3.40282 12.4485 3.55545 12.275 3.55545 12.0658L3.55469 1.0084Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.25632 2.46232H12.3172C12.5496 2.46232 12.7381 2.65075 12.7381 2.88319V7.47449C12.7381 7.70693 12.5496 7.89536 12.3172 7.89536H9.25632C9.02388 7.89536 8.83545 7.70693 8.83545 7.47449V2.88319C8.83545 2.65075 9.02388 2.46232 9.25632 2.46232ZM11.8963 7.05362V3.30406H9.67719V7.05362H11.8963Z"></path><path d="M7.34328 4.75797V5.59971H5.04763V4.75797H7.34328Z"></path><path d="M7.34328 2.46232V3.30406H5.04763V2.46232H7.34328Z"></path><path d="M7.34328 7.05362V7.89536H5.04763V7.05362H7.34328Z"></path><path d="M12.6998 9.34927V10.191H5.04763V9.34927H12.6998Z"></path><path d="M12.6998 11.6449V12.4867H5.04763V11.6449H12.6998Z"></path></svg>';

                    let product1 = createProductElement('Kaikki', 'HS +Kaikki <span>1 kk 0 € <span>(norm. 24,99 €/kk)</span></span>', checkIconSvg + 'HS Digi+<br/>' + checkIconSvg + 'IS Extra+, Ruutu+ ja Supla+<br/>' + checkIconSvg + '13 muuta uutismediaa ja 15 aikakauslehteä', button);
                    let product2 = createProductElement('Digi+', 'HS Digi+ <span>2 kk 0 € <span>(norm. 20,90 €/kk)</span></span>', readingRightsForFourSvg + '<span>Lukuoikeus neljälle</span> ' + facsimileSvg + '<span>Näköislehti</span>', button);
                    let product3 = createProductElement('Digi', 'HS Digi <span>2 kk 0 € <span>(norm. 14,90 €/kk)<span></span>', readingRightsForOneSvg + '<span>Lukuoikeus yhdelle</span>', button);
                    
                    subtitle.innerText = 'Voit irtisanoa tilauksen koska tahansa.';
                    subtitle.classList.remove('paywall__ingress');

                    //append elements to container one by one
                    containerdiv.appendChild(title);
                    containerdiv.appendChild(product1);

                    //delimeter element with TAI and border
                    let delimeter = createElem('div', 'ab-test-paywall-delimeter', '<span>TAI</span>');
                    containerdiv.appendChild(delimeter);
                    
                    containerdiv.appendChild(product2);                   
                    containerdiv.appendChild(product3);

                    if(cycloneDateUntil) { //cyclone subtitle
                        let pvmSpan = calculateDays(cycloneDateUntil, 'asti');
                        let cycloneText = createElem('div', 'paywall__text-block ab-test-paywall-additional-info', 'Lisäksi voit maksuttoman jakson jälkeen jatkaa tilausta 40 % alennuksella ' + pvmSpan);
                        containerdiv.appendChild(cycloneText);
                    }

                    containerdiv.appendChild(button);
                    containerdiv.appendChild(subtitle);

                    insertStyle(containerdiv);
                    paywall.insertBefore(containerdiv, paywall.childNodes[1]); //insert as 2nd element on paywall after paywall indicator	

                    if(feedTitle) { //rss feed under paywall element and this is the title of that feed
                        let paywallOffering = document.querySelector('.ab-test-hard-paywall-offering');
                        if(paywallOffering) {
                            paywallOffering.innerText = feedTitle;
                        }
                    }

                    confirmExperiment();
                    return true;
                }
                else {
                    sendGAEvent('script failed, primary button text unexpected');
                }
            } else {
                sendGAEvent('script failed, paywall html unexpected');
            }
        };

        doExperimentChanges();
    };
} catch(e) {
    console.log(e)

  let err = e
  let err_split = e.stack.split('\n')
  let err_line = false
  if (err_split[1]) {
    err_line = err_split[1].split('>:')
  }
  if (err_line[1]) {
    err = err_line[1]
  }
  sendGAEvent('script error: ' + err)
}
 },'js-HyjG44fKq0PwABQSsP9u-1726217370': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if(!requireCdx) { testing = true; } //set this to true if not in conductrics for easier testing

let experimentId = 'Agent';
let variantId = 'NA';
if(cdx && cdx.agent) {
    experimentId = cdx.agent;
    if(cdx.sel().c) {
        variantId = cdx.sel().c;
    }
}

const experimentName = experimentId + ' myyntitikkeri';
const variantName = variantId + ': sykloni';
const oldTickerText = 'HS Digi maksutta kuukaudeksi.';
const aid = 'GUMO4SZGFXCLY';
const pagePath = '/hs-mini-tutustu-v6';
const offer = 3;
const days = 30;
const cycloneDays = 210;



//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    const changeTickerLink = function (tickerLink) {
        let urlParams = {
            'aid': aid,
            'ref': 'myyntitikkeri',
            'showPaymentPeriodList': null,
            'offer': null,
            'variant': null
        };

        let url = new URL(tickerLink.href);
        
        if (urlParams) {
            Object.keys(urlParams).forEach(function(key) {
                if (urlParams[key] === null) {
                    url.searchParams.delete(key);
                } else if (urlParams[key] !== undefined) {
                    url.searchParams.set(key, urlParams[key]);
                }
            });
        }
        if (pagePath) {
            let path = url.pathname.split('/');
            path.pop();
            path = path.join('/') + pagePath;
            url.pathname = path;
        }
        return url.toString();
    };

    const changeTickerText = function (tickerText) {
        let date = new Date();
        date.setDate(date.getDate() + days);

        let dd = date.getDate();
        let mm = date.getMonth()+1;

        let cycloneDate = new Date();
        cycloneDate.setDate(cycloneDate.getDate() + cycloneDays);
        let day = cycloneDate.getDate();
        let month = cycloneDate.getMonth()+1; 

        let newTickerText = 'Lue maksutta ' + dd.toString() + '.' + mm.toString() + '. asti. Voit jatkaa tilausta -50 % hinnalla ' + day.toString() + '.' + month.toString() + '. asti.';
        return newTickerText;
    };
    
    const doExperimentChanges = function () {
        let experimentExists = document.querySelector('.ticker-modified-by-conductrics');
        let ticker = document.querySelector('.ticker.ticker--promo-10, .ticker.ticker--promo-20');
        if(experimentExists) {
            //sendGAEvent('script failed, exp already exists');
        } else if(ticker) {
			let tickerLink = ticker.parentNode;
			let tickerText = ticker.querySelector('.ticker__title span:not(.ticker__storylogo)');
			if(tickerLink.href.indexOf('https://www.hs.fi/u/oma/tilaa/hs-digi-ticker?aid=G3SLUQYNQ63NV') < 0) {
				tickerLink = false;
			}
            if(tickerLink && tickerText) {
                if(tickerText.innerText.indexOf(oldTickerText) > -1) { //check that tickerText.innerText contains oldTickerText as a substring
                    //actual changes here
					let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
                    ticker.classList.add('ticker-modified-by-conductrics', namelower);

                    tickerText.innerText = changeTickerText(tickerText);
                    tickerLink.href = changeTickerLink(tickerLink);

                  	console.log(cdx);
                    if(requireCdx) {
                        cdx.confirm(true);
                    }
                    //dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': 'change offer at myyntitikkeri', 'eventLabel': experimentName + ' ' + variantName});
                }
                else {
                    sendGAEvent('script failed: ticker text unexpected');
                }
            }
            else {
                sendGAEvent('script failed: ticker html unexpected');
            }
    
            dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
		} else {
            sendGAEvent('script failed, ticker n/a');
        }
    };

    doExperimentChanges();
} catch(e) {
    //this is needed in ticker-agents. If e does not contain text "confirm" or "cdx", then call the sendGAEvent function
    if(e.toString().indexOf('confirm') < 0 && e.toString().indexOf('cdx') < 0) {
        sendGAEvent('script error: ' + e);
    }
}
 },'js-XIocLrJLNX94jLuSenSQ-1727874134': function (cdx) { const experimentId = 'HS24-23';
const variantId = 'debug';
const experimentName = experimentId + ' subscription sharing';
const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
let remaining = false;

let gtmCont = window.google_tag_manager['GTM-5NBQVZ5'];
if(gtmCont) {
	if (typeof(gtmCont.dataLayer.get('user.subscriptionDetails.subscriptionSharing')) !== 'undefined') {
		remaining = gtmCont.dataLayer.get('user.subscriptionDetails.subscriptionSharing.remaining');
		remaining = 'remaining: ' + remaining;
	}
    else {
      remaining = 'remaining: N/A';
    }
}

if(remaining) {
    if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || [] }
    dataLayer.push({event: 'eventInfo',eventCategory: 'Conductrics',eventAction: 'conductrics_event',eventLabel: stringIdPlusVariant + remaining})
}
 },'js-clyBGosbOwjWekUJtlnL': function (cdx) { //if article publishDate older than 6 hours
function checkPublishDate(hours) {
  var publishedDate = false;
  var now = new Date();
  var wantedhours = 60 * 60 * 1000 * hours;
  var d = window.dataLayer;
  for(var i = 0; i<d.length;i++) {
    if(d[i].page && d[i].page.publishedDate) {
      publishedDate = d[i].page.publishedDate;
    }
  }

  if(publishedDate) {
    if(publishedDate < now-wantedhours) {
      //console.log('article older than 6 hours');
      return true;
    }
    else {
      //console.log('article younger than 6 hours');
      return false;
    }
  }
  else {
    //console.log('no published date');
    return false;
  }
  return false;
}

if(checkPublishDate(6)) { //6
	return true;
}
return false;
 },'js-WzEdgyKyh8OFgTnwCfE0-1730893819': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if (!requireCdx) { testing = true; }
const experimentId = 'HS24-26b';
const variantId = 'A';
const experimentName = experimentId + ' softwall dynaaminen muuri';
const variantName = variantId + ' default';
const currentDefaultButtonText = 'Kokeile Hesaria 2 viikkoa maksutta!'; //default title

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    if(true) {
        //actual code begins
        
        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-test-softwall-title-modified');
            let mainElement = document.querySelector('.ab-test-metered-softwall'); //main element to look for
            if(experimentExists) {
                //sendGAEvent('exp already exists');
            } else if(mainElement) {
                let softwallTitle = document.querySelector('.ab-test-metered-softwall-title');
                let softwallButton = document.querySelector('.ab-test-metered-softwall-order-link').parentNode;
                if(softwallButton.href.indexOf('https://www.hs.fi/api/safe/v1/web/subscription-funnel/hs-digi-nayte') < 0) {
                    softwallButton = false;
                }

                if(mainElement && softwallTitle && softwallButton) { //---------actual changes here
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
                    softwallTitle.classList.add('ab-test-softwall-title-modified', namelower, 'modified-by-conductrics');
                    if(requireCdx) {
                        cdx.confirm(true);
                    }
                    return true;
                }
                else {
                    sendGAEvent('script error: html invalid');
                }
            } else {
                sendGAEvent('script failed, element n/a');
            }
        };

        doExperimentChanges(); //finally call the function to do the changes
    };
} catch(err) {
    sendGAEvent('script error: ' + err);
}
 },'js-n7tENWaxEdGhjkJiS4Dc-1727767963': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if (!requireCdx) { testing = true; }
const experimentId = 'HS24-26';
const variantId = 'B';
const experimentName = experimentId + ' softwall dynaaminen muuri';
const variantName = variantId + ' HS Digi';
const currentDefaultButtonText = 'Kokeile Hesaria 2 viikkoa maksutta!'; //default title

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    if(requireCdx === false || window.conductrics_checkIfEligibileForP2p(cdx.trait('isLoggedIn'), cdx.trait('p2p_lightgbm'), cdx.trait('p2p'))) {
        //actual code begins

        //content variables 
        let order_aid = 'G35ZRTPY9MVWL';
        let order_ref = 'vainomuuri';
        let order_offer = '3';
        let order_pagePath = '/hs-mini-tutustu';

        let logoInSvg = '<circle cx="12.5" cy="12" r="12" fill="#00194C"/><path fill-rule="evenodd" clip-rule="evenodd" d="M7.11395 7.16037H8.57295C8.62628 7.16037 9.07295 7.14237 8.89428 7.65137C8.70295 8.1957 8.25128 9.29403 8.46561 9.93703C8.53695 10.187 8.76661 10.4907 9.31028 10.464H10.8373C11.1136 10.4464 11.4089 10.437 11.5696 9.93703C11.6409 9.68703 11.4089 8.66903 10.9983 7.65137C10.8909 7.40137 10.8909 7.15137 11.2303 7.15137H12.6093C13.0556 7.15137 12.9666 7.91903 12.9666 8.41903C12.9666 9.4727 12.5736 13.6514 12.8416 15.294C13.0379 16.4904 13.3056 16.8477 12.5556 16.8477H11.1006C10.6006 16.8477 10.5649 16.3657 10.6899 16.169C11.1186 15.4904 11.3686 13.9907 11.3686 13.4727C11.3686 12.9727 11.2856 12.316 10.6723 12.316H8.27395C7.63128 12.3517 7.47061 12.9727 7.45261 13.2227C7.38128 13.7407 7.38128 14.7407 7.98828 16.0797C8.16695 16.4904 8.38128 16.8477 7.88128 16.8477H6.31028C5.48895 16.8477 5.50661 14.9907 5.72095 14.2407C6.34595 11.919 7.02461 11.9547 7.27461 9.66903C7.31028 9.3477 7.27461 8.66903 6.89961 7.90137C6.77461 7.65137 6.72128 7.16937 7.11395 7.16037Z" fill="white"/><path fill-rule="evenodd" clip-rule="evenodd" d="M16.8044 7.15856H18.6604C18.9271 7.14689 19.1757 7.30656 19.1757 7.60889C19.1757 8.10622 19.1757 8.20089 19.1224 8.57389C19.0691 8.91156 18.9271 8.96456 18.3941 8.78722C17.8254 8.59156 16.3144 7.52156 15.5427 8.34322C15.3297 8.56956 15.3011 9.10289 15.5781 9.47456C16.0807 10.1486 17.2477 10.5712 17.7227 10.8609C18.5871 11.3879 18.6751 11.4609 18.9721 11.8732C19.6884 12.8682 19.6117 15.4976 17.9947 16.4216C17.4084 16.7412 16.8577 16.8479 16.2714 16.8479H14.4767C14.0681 16.8479 13.8301 16.6712 13.8017 16.4216C13.7367 15.8469 13.7781 15.5279 13.8551 15.0716C13.9001 14.8036 13.9807 14.6419 14.4767 14.8406C15.2464 15.1486 15.7931 15.3966 16.4847 15.5512C16.9391 15.6532 17.7077 15.6209 18.0424 14.9529C18.3627 14.3139 18.1724 13.6852 17.5507 13.3656C15.9694 12.5659 15.2231 12.1219 14.7257 11.6242C14.2104 11.1266 13.9854 10.6769 14.0564 9.55722C14.0917 8.98889 14.8151 7.15856 16.8044 7.15856Z" fill="white"/>';
        let pvmCopyLaskePaivia = 30; //p.k. korvataan päivämäärällä joka lasketaan tästä
        let titleText = 'Tämä ja kaikki muut Hesarin jutut maksutta p.k. asti.'; // p.k. korvataan

        let productName = 'HS Digi';
        let price = '0 €';
        let normPrice = 'norm. 12,50 € / kk';
        let cancelAnytime = '<svg viewBox="0 0 20 20" width="15" height="15" stroke="inherit" data-reactid="71"><path d="M9 15h2V9H9v6zm1-15C4.5 0 0 4.5 0 10s4.5 10 10 10 10-4.5 10-10S15.5 0 10 0zm0 18c-4.4 0-8-3.6-8-8s3.6-8 8-8 8 3.6 8 8-3.6 8-8 8zM9 7h2V5H9v2z" fill-rule="evenodd"></path></svg> Voit peruuttaa koska tahansa';
        let primaryButtonText = 'Kokeile maksutta';

        //try { //not needed if inside checkIfEligibileForP2p
        let art = window.location.pathname.substring(window.location.pathname.indexOf('art-')+4);
        let tcid_orig = art.replace('.html', '');
        let mainElement = document.querySelector('.ab-test-metered-softwall'); //main element to look for
        
        const changeText = function () {
            let date = new Date();
            date.setDate(date.getDate() + pvmCopyLaskePaivia);

            let dd = date.getDate();
            let mm = date.getMonth()+1;
            let dateString = dd.toString() + '.' + mm.toString() + '.';

            let newText = titleText.replace('p.k.', dateString);
            return newText;
        };

        const addProductDetails = function () {
            let div = document.createElement('div');
            div.classList.add('ab-product-container');

            let pTitle = document.createElement('p');
            pTitle.innerText = productName;
            pTitle.classList.add('ab-product-title');

            let pPrice = document.createElement('p');
            pPrice.innerText = price;
            pPrice.classList.add('ab-product-price');

            let pNormPrice = document.createElement('p');
            pNormPrice.innerText = normPrice;
            pNormPrice.classList.add('ab-product-norm-price');

            let pCancelAnytime = document.createElement('p');
            pCancelAnytime.innerHTML = cancelAnytime;
            pCancelAnytime.classList.add('ab-product-cancel-anytime');

            div.appendChild(pTitle);
            div.appendChild(pPrice);
            div.appendChild(pNormPrice);
            div.appendChild(pCancelAnytime);

            return div;
        };

        const addLogo = function () {
            let div = document.createElement('div');
            div.classList.add('ab-logo-container');
            let logo = document.createElementNS("http://www.w3.org/2000/svg", "svg");
            logo.setAttribute('width', '50');
            logo.setAttribute('height', '48');
            logo.setAttribute('viewBox', '0 0 25 24');
            logo.classList.add('ab-logo-element');
            logo.innerHTML = logoInSvg;
            div.appendChild(logo);
            let span = document.createElement('span');
            span.innerText = 'Tilaajille';
            span.classList.add('ab-for-subscribers');
            div.appendChild(span);
            return div;
        };

        const changeLinkUrl = function (button) {
            let urlParams = {
                'aid': order_aid,
                'ref': order_ref,
                'offer': order_offer,
                'showPaymentPeriodList': null,
                'variant': null
            };

            let url = new URL(button.href);

            if (urlParams) {
                Object.keys(urlParams).forEach(function(key) {
                    if (urlParams[key] === null) {
                        url.searchParams.delete(key);
                    } else if (urlParams[key] !== undefined) {
                        url.searchParams.set(key, urlParams[key]);
                    }
                });
            }
            if (order_pagePath) {
                let path = url.pathname.split('/');
                path.pop();
                path = path.join('/') + order_pagePath;
                url.pathname = path;
            }
            if(primaryButtonText) {
                let buttonLabel = button.querySelector('.cursor-pointer');
                buttonLabel.innerText = primaryButtonText;
            }

            button.onclick = function(e) {
                //e.preventDefault();
                sendGAEvent('click subscribe väinömuuri');
            };

            return url.toString();
        };

        const setStyles = function () {
            let style = `			
                :root {
                    --main-color: #4196A4; /*#41a492;*/
                    --grey-color: #666;
                    --hover-color: #ebf4f5;
                    --font-family-header: Sanomat,Georgia,Baskerville,serif;
                    --font-family-text: Helsingin, Helvetica, Arial, sans-serif;
                }

                .ab-test-metered-softwall {
                    transition: none;
                    background-color: #fff;
                    color: #222;
                }

                .ab-logo-container {
                    position: absolute;
                    top: -24px;
                }

                .ab-logo-element {
                    margin: 0 auto;
                }

                .ab-for-subscribers {
                    text-transform: uppercase;
                    font-size: 12px;
                    font-family: var(--font-family-text);
                    background: #fff;
                    z-index: 1;
                    position: relative;
                    padding: 0 16px;
                }

                .ab-first-div {
                    padding: 20px 0;
                    margin-top: 40px;
                    border-top: 1px solid #ccc;
                    margin-left: 16px;
                    margin-right: 16px;
                }

                .ab-softwall-container {
                    position: relative;
                    flex-direction: column;
                }

                .ab-product-container {
                    margin: 0 auto;
                    text-align: center;
                    line-height: 1.2;
                }

                .ab-product-title {
                    font-weight: 700;
                    font-size: 18px;
                    line-height: inherit;
                    margin-bottom: 4px;
                }

                .ab-product-price {
                    font-family: var(--font-family-header);
                    font-weight: 800;
                    font-size: 32px;
                    line-height: inherit;
                    margin-bottom: 4px;
                }

                .ab-product-norm-price {
                    position: relative;
                    font-weight: 500;
                    font-size: 13px;
                    line-height: inherit;
                    margin-bottom: 4px;
                    color: var(--grey-color);
                    display:none;
                }

                .ab-product-norm-price:before {
                    border-top: 1px solid var(--grey-color);
                    position: absolute;
                    content: "";
                    left: 0;
                    top: 50%;
                    right: 0;
                    border-top: 1px solid var(--underline-color);
                    opacity: 1;
                    -webkit-transform: rotate(-5deg);
                    transform: rotate(-5deg);
                    width: 110px;
                    margin: 0 auto;           
                }

                .ab-product-cancel-anytime {
                    font-weight: 400;
                    font-size: 13px;
                    line-height: inherit;
                    margin-top: 8px;
                    margin-bottom: 4px;
                }

                .ab-product-cancel-anytime svg {
                    display: inline-block;
                    fill: var(--main-color);
                    width: 12px;
                    height: 12px;
                    vertical-align: baseline;
                }

                .ab-test-metered-softwall-title, .ab-test-metered-softwall-description {
                    text-align: center;
                    margin: 0 auto 8px;
                    color: inherit;
                }

                .ab-test-metered-softwall-title {
                    padding: 0;
                    font-size: 22px;
                }

                .ab-test-metered-softwall-description {
                    display: none;
                }

                .ab-button-div {
                    margin-top: 8px;
                    justify-content: center;
                }

                .ab-button-div .button {
                    transition: all 200ms;
                    min-width: max-content;
                }

                .ab-second-div {
                    margin-bottom: 8px;
                    flex-direction: column;
                }

                .ab-button-div .ab-test-metered-softwall-order-link {
                    background-color: var(--main-color);
                    color: #fff;
                    border: 1px solid var(--main-color);
                }

                .ab-test-metered-softwall-order-link:hover, .ab-test-metered-softwall-order-link:active, .ab-test-metered-softwall-order-link:focus {
                    background-color: var(--hover-color);
                    color: var(--main-color);
                }

                .ab-button-div .ab-test-metered-softwall-login-link {
                    color: var(--main-color);
                    border: 1px solid var(--main-color);
                }

                .ab-test-metered-softwall-login-link:hover, .ab-test-metered-softwall-login-link:active, .ab-test-metered-softwall-login-link:focus {
                    background-color: var(--hover-color);
                }

                .ab-test-metered-softwall-close-button {
                    position: absolute;
                    top: 16px;
                    right: 16px;
                    display: none;
                }

                .ab-test-metered-softwall-close-button > .icon {
                    color: #222;
                }

                @media (min-width: 576px) {
                    .ab-test-metered-softwall-title {
                        font-size: 24px;
                    }

                    .ab-product-container {
                        margin: 8px auto;
                    }

                    .ab-product-norm-price {
                        display: block;
                    }

                    .ab-button-div {
                        margin-top: 8px;
                    }

                    .ab-button-div .button {
                        min-width: 170px;
                    }
                }
            `;

            let styleSheet = document.createElement("style");
            styleSheet.type = "text/css";
            styleSheet.innerText = style;
            return styleSheet;
        };

        const actualChanges = function (mainElement, softwallTitle, softwallButton) {
            mainElement.appendChild(setStyles()); //add styles
            softwallButton.href = changeLinkUrl(softwallButton); //change product ordering link
            softwallTitle.innerText = changeText(); //change title

            mainElement.insertBefore(addLogo(), mainElement.childNodes[0]); //insert brand logo as first element
            let secondDiv = document.querySelector('.ab-second-div');
            secondDiv.appendChild(addProductDetails());

            dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
            dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': 'change offer at mittarimuuri', 'eventLabel': experimentName + ' ' + variantId});
            return true;
        };

        const changeHtmlClassNames = function (elem) {
            //if errors here, it returns false and other changes are not made
            let firstDiv = elem.querySelector('.ab-test-metered-softwall .toast__container--inner');
            firstDiv.classList.add('ab-softwall-container', 'ab-first-div');

            let secondDiv = elem.querySelector('.ab-test-metered-softwall .softwall__row');
            secondDiv.classList.add('justify-center', 'flex-col', 'ab-second-div');

            let buttonDiv = elem.querySelector('.ab-test-metered-softwall .softwall__buttons');
            buttonDiv.classList.add('justify-center', 'ab-button-div');
            return true;
        };

        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-test-softwall-title-modified');
            if(experimentExists) {
                //sendGAEvent('exp already exists');
            } else if(mainElement) {
                let softwallTitle = document.querySelector('.ab-test-metered-softwall-title');
                let softwallButton = document.querySelector('.ab-test-metered-softwall-order-link').parentNode;
                if(softwallButton.href.indexOf('https://www.hs.fi/api/safe/v1/web/subscription-funnel/hs-digi-nayte') < 0) {
                    softwallButton = false;
                }

                if(mainElement && softwallTitle && softwallButton) { //---------actual changes here
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
                    softwallTitle.classList.add('ab-test-softwall-title-modified', namelower, 'modified-by-conductrics');

                    if(changeHtmlClassNames(mainElement)) {
                        if(actualChanges(mainElement, softwallTitle, softwallButton)) {
                            if(requireCdx) {
                                cdx.confirm(true);
                            }
                            return true;
                        }
                    }
                }
                else {
                    sendGAEvent('script error: html invalid');
                }
            } else {
                sendGAEvent('script failed, element n/a');
            }
        };

        doExperimentChanges(); //finally call the function to do the changes
    };
} catch(err) {
    sendGAEvent('script error: ' + err);
}
 },'js-a2py3iSlPvPprKhZEwAc-1727768866': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if (!requireCdx) { testing = true; }
const experimentId = 'HS24-26';
const variantId = 'C';
const experimentName = experimentId + ' softwall dynaaminen muuri';
const variantName = variantId + ' radio buttons norm';
const currentDefaultButtonText = 'Kokeile Hesaria 2 viikkoa maksutta!'; //default title
const miniPath = '/hs-mini-tutustu-2';
const digiPath = '/hs-digi-tutustu-2';
const miniAID = 'G4NJ6U3GD29SZ';
const digiAID = 'G8Y9FR6YLRZG3';
let pvmCopyLaskePaivia = 60; //p.k. korvataan päivämäärällä joka lasketaan tästä
let titleText = 'Lue maksutta p.k. asti.'; // p.k. korvataan
const cycloneDateUntil = false;

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    const changeButtonUrlAndText = function (button, pos) {          
        let urlParams = false;
        let pagePath = false;

        if(pos === 'Digi') {
          pagePath = miniPath;
          urlParams = {
            embedded: null,
            aid: miniAID,
            ref: 'vainomuuri',
            showPaymentPeriodList: null,
            offer: 3,
            variant: null
          }

          button.innerText = 'Tutustu HS Digi 2 kk 0 €';
        }
        else {
            pagePath = digiPath;
            urlParams = {
              embedded: null,
              aid: digiAID,
              ref: 'vainomuuri',
              showPaymentPeriodList: null,
              offer: null,
              variant: null
            }
            
           button.innerText = 'Tutustu HS Digi+ 2 kk 0 €';
        }

        button.classList.add('button', 'button--component', 'button--md', 'button--primary-neg', 'ab-test-metered-softwall-order-link');
      
        let url = new URL(button.href);
        // Update search params
        if (urlParams) {
          Object.keys(urlParams).forEach(function (key) {
            if (urlParams[key] === null) {
              url.searchParams.delete(key)
            } else if (urlParams[key] !== undefined) {
              url.searchParams.set(key, urlParams[key])
            }
          })
        }
        // Update path
        if (pagePath) {
            let path = url.pathname.split('/');
            path.pop();
            path = path.join('/') + pagePath;
            /*
            if(useOldFunnel && !path.includes('/api/safe/v1/web/subscription-funnel')) {
                path = '/api/safe/v1/web/subscription-funnel' + path; //from new to old funnel
            }
            if(useOldFunnel && path.includes('/shopping-ui/')) {
                path = path.replace('/shopping-ui/', '/');
            }
            */
            
            url.pathname = path;
        }
        button.href = url.toString();
        button.setAttribute('data-product-name', pos);
        return button;
    }

    const createElem = function(tag, classes, text) {
        let elem = document.createElement(tag);
        if(classes) {
            //split classes by space
            classes = classes.split(' ');
            for(let i = 0; i < classes.length; i++) {
                elem.classList.add(classes[i]);
            }
        }
        if(text) {
            elem.innerHTML = text;
        }
        return elem;
    }

    const createProductElement = function(productname, title, features, button) {
        console.log(button);
        let product = createElem('label', 'ab-test-paywall-product', false);
        //product.setAttribute('for', 'radio_'+productname);
        let check = createElem('input', 'ab-radio', false);
        check.type = 'radio';
        check.name = 'product';
        //check.id = 'radio_'+productname;
        if(title.includes('HS Digi+')) {
            check.checked = 'checked';
            product.classList.add('selected');
        }

        let productcontent = createElem('div', 'ab-product-content', false);
        let producttitle = createElem('p', 'ab-product-title', title);
        let producttext = createElem('p', 'ab-product-text', features);

        product.appendChild(check);
        productcontent.appendChild(producttitle);
        productcontent.appendChild(producttext);
        product.appendChild(productcontent);
        check.onchange = function(e) {
            //sendGAEvent('click product ' + productname);
            let products = document.querySelectorAll('.ab-test-paywall-product');
            products.forEach(function(p) {
                p.classList.remove('selected');
            });
            product.classList.add('selected');
            changeButtonUrlAndText(button, productname);
        }
        return product;
    }

    if(requireCdx === false || window.conductrics_checkIfEligibileForP2p(cdx.trait('isLoggedIn'), cdx.trait('p2p_lightgbm'), cdx.trait('p2p'))) {
        //actual code begins

        let logoInSvg = '<circle cx="12.5" cy="12" r="12" fill="#00194C"/><path fill-rule="evenodd" clip-rule="evenodd" d="M7.11395 7.16037H8.57295C8.62628 7.16037 9.07295 7.14237 8.89428 7.65137C8.70295 8.1957 8.25128 9.29403 8.46561 9.93703C8.53695 10.187 8.76661 10.4907 9.31028 10.464H10.8373C11.1136 10.4464 11.4089 10.437 11.5696 9.93703C11.6409 9.68703 11.4089 8.66903 10.9983 7.65137C10.8909 7.40137 10.8909 7.15137 11.2303 7.15137H12.6093C13.0556 7.15137 12.9666 7.91903 12.9666 8.41903C12.9666 9.4727 12.5736 13.6514 12.8416 15.294C13.0379 16.4904 13.3056 16.8477 12.5556 16.8477H11.1006C10.6006 16.8477 10.5649 16.3657 10.6899 16.169C11.1186 15.4904 11.3686 13.9907 11.3686 13.4727C11.3686 12.9727 11.2856 12.316 10.6723 12.316H8.27395C7.63128 12.3517 7.47061 12.9727 7.45261 13.2227C7.38128 13.7407 7.38128 14.7407 7.98828 16.0797C8.16695 16.4904 8.38128 16.8477 7.88128 16.8477H6.31028C5.48895 16.8477 5.50661 14.9907 5.72095 14.2407C6.34595 11.919 7.02461 11.9547 7.27461 9.66903C7.31028 9.3477 7.27461 8.66903 6.89961 7.90137C6.77461 7.65137 6.72128 7.16937 7.11395 7.16037Z" fill="white"/><path fill-rule="evenodd" clip-rule="evenodd" d="M16.8044 7.15856H18.6604C18.9271 7.14689 19.1757 7.30656 19.1757 7.60889C19.1757 8.10622 19.1757 8.20089 19.1224 8.57389C19.0691 8.91156 18.9271 8.96456 18.3941 8.78722C17.8254 8.59156 16.3144 7.52156 15.5427 8.34322C15.3297 8.56956 15.3011 9.10289 15.5781 9.47456C16.0807 10.1486 17.2477 10.5712 17.7227 10.8609C18.5871 11.3879 18.6751 11.4609 18.9721 11.8732C19.6884 12.8682 19.6117 15.4976 17.9947 16.4216C17.4084 16.7412 16.8577 16.8479 16.2714 16.8479H14.4767C14.0681 16.8479 13.8301 16.6712 13.8017 16.4216C13.7367 15.8469 13.7781 15.5279 13.8551 15.0716C13.9001 14.8036 13.9807 14.6419 14.4767 14.8406C15.2464 15.1486 15.7931 15.3966 16.4847 15.5512C16.9391 15.6532 17.7077 15.6209 18.0424 14.9529C18.3627 14.3139 18.1724 13.6852 17.5507 13.3656C15.9694 12.5659 15.2231 12.1219 14.7257 11.6242C14.2104 11.1266 13.9854 10.6769 14.0564 9.55722C14.0917 8.98889 14.8151 7.15856 16.8044 7.15856Z" fill="white"/>';        //let cancelAnytime = '<svg viewBox="0 0 20 20" width="15" height="15" stroke="inherit" data-reactid="71"><path d="M9 15h2V9H9v6zm1-15C4.5 0 0 4.5 0 10s4.5 10 10 10 10-4.5 10-10S15.5 0 10 0zm0 18c-4.4 0-8-3.6-8-8s3.6-8 8-8 8 3.6 8 8-3.6 8-8 8zM9 7h2V5H9v2z" fill-rule="evenodd"></path></svg> Voit irtisanoa tilauksen koska tahansa';
        let cancelAnytime = 'Voit irtisanoa tilauksen koska tahansa';

        let art = window.location.pathname.substring(window.location.pathname.indexOf('art-')+4);
        let tcid_orig = art.replace('.html', '');
        let mainElement = document.querySelector('.ab-test-metered-softwall'); //main element to look for
        
        const changeText = function () {
            let date = new Date();
            date.setDate(date.getDate() + pvmCopyLaskePaivia);

            let dd = date.getDate();
            let mm = date.getMonth()+1;
            let dateString = dd.toString() + '.' + mm.toString() + '.';

            let newText = titleText.replace('p.k.', dateString);
            return newText;
        };

        const addLogoAndLogin = function (loginLink) {
            let div = document.createElement('div');
            div.classList.add('ab-logo-container');
            let logo = document.createElementNS("http://www.w3.org/2000/svg", "svg");
            logo.setAttribute('width', '50');
            logo.setAttribute('height', '48');
            logo.setAttribute('viewBox', '0 0 25 24');
            logo.classList.add('ab-logo-element');
            logo.innerHTML = logoInSvg;
            div.appendChild(logo);

            if(loginLink) {
                loginLink.innerHTML = 'Oletko jo tilaaja? <span>Kirjaudu tästä.</span>';
                loginLink.classList.add('ab-test-metered-softwall-login-link');
                div.appendChild(loginLink);
            }

            let span = document.createElement('span');
            span.innerText = 'Uusille tilaajille';
            span.classList.add('ab-for-subscribers', 'paywall__text-with-lines-around');
            div.appendChild(span);
            return div;
        };

        const setStyles = function () {
            let style = `			
                :root {
                    --main-color: #3860ff; /*#41a492;*/
                    --grey-color: #666;
                    --hover-color: #3051d8;
                    --font-family-header: Sanomat,Georgia,Baskerville,serif;
                    --font-family-text: Helsingin, Helvetica, Arial, sans-serif;
                    --line-color: #999;
                }

                .ab-test-metered-softwall {
                    transition: none;
                    background-color: #fff;
                    color: #222;
                    display: flex;
                    flex-direction: column;
                    align-items: center;
                    font-family: var(--font-family-text);
                }

                .ab-logo-container {
                    margin-top: -24px;
                    display: flex;
                    flex-direction: column;
                    align-items: center;
                    gap: 12px;
                    width: 100%;
                }

                .ab-logo-element {
                    margin: 0 auto;
                }

                .ab-for-subscribers {
                    text-transform: uppercase;
                    font-size: 12px;
                    font-family: var(--font-family-text);
                    background: #fff;
                    z-index: 1;
                    position: relative;
                    padding: 0 16px;
                    width: calc(100% - 32px);
                    text-align: center;
                    overflow: hidden;
                }

                .paywall__text-with-lines-around:after, .paywall__text-with-lines-around:before {
                    height: 1px;
                }

                .ab-first-div {
                    margin-left: 16px;
                    margin-right: 16px;
                    padding-top: 8px;
                    padding-bottom: 8px;
                }

                .ab-softwall-container {
                    position: relative;
                    flex-direction: column;
                    width: auto;
                }

                .ab-test-paywall-product {
                    display: flex;
                    flex-direction: row;
                    align-items: baseline;
                    font-size: 16px;
                    font-family: 'Helsingin', Arial, sans-serif;
                    margin: 4px auto;
                    border: 1px solid var(--line-color);
                    padding: 6px 8px;
                    cursor: pointer;
                    min-width: 240px;
                }

                .ab-test-paywall-product.selected {
                    border-left: 5px solid var(--main-color);
                    padding-left: 5px;
                }

                .ab-test-paywall-product.selected .ab-radio {
                    margin-left: 5px;
                }

                .ab-test-paywall-product:last-of-type {
                    margin-bottom: 0;
                }

                .ab-test-paywall-product .ab-product-content {
                    display: flex;
                    flex-direction: column;
                    margin-left: 16px;
                    width: 240px;
                }

                .ab-test-paywall-product .ab-radio {
                    transform: scale(1.6);
                    accent-color: var(--main-color);
                    cursor: pointer;
                    margin-left: 6px;
                }

                .ab-test-paywall-product .ab-product-title {
                    font-weight: 600;
                }

                .ab-test-paywall-product .ab-product-title > span {
                    text-decoration: line-through;
                    font-size: 13px;
                    font-weight: 300;
                    color: #666;
                    float: right;
                    margin-top: 3px;
                }

                .ab-test-paywall-product .ab-product-text {
                    font-size: 12px;
                    margin-top: 2px;
                    color: #555;
                }

                .ab-test-paywall-product .ab-product-text svg {
                    fill: #191919;
                    display: inline;
                    margin-right: 5px;
                    vertical-align: baseline;
                    height: 12px;
                }

                .ab-test-paywall-additional-info {
                    font-size: 15px;
                    font-weight: 400;
                    margin-top: 0;
                    line-height: 1.2;
                    margin-bottom: 12px;
                }

                .ab-test-paywall-additional-info span {
                    /* no line break */
                    white-space: nowrap;
                }

                .ab-product-cancel-anytime {
                    font-weight: 400;
                    font-size: 13px;
                    line-height: inherit;
                    margin-top: 8px;
                    margin-bottom: 4px;
                }

                .ab-product-cancel-anytime svg {
                    display: inline-block;
                    fill: var(--main-color);
                    width: 12px;
                    height: 12px;
                    vertical-align: baseline;
                }

                .ab-test-metered-softwall-title, .ab-test-metered-softwall-description {
                    text-align: center;
                    margin: 0 auto 8px;
                    color: inherit;
                }

                .ab-test-metered-softwall-title {
                    padding: 0;
                    font-size: 22px;
                }

                .ab-test-metered-softwall-description {
                    display: none;
                }

                .ab-button-div {
                    margin-top: 8px;
                    justify-content: center;
                    flex-direction: column;
                }

                .ab-button-div .button {
                    transition: all 200ms;
                    min-width: max-content;
                }

                .ab-second-div {
                    margin-bottom: 8px;
                    flex-direction: column;
                }

                .ab-button-div .ab-test-metered-softwall-order-link {
                    background-color: var(--main-color);
                    color: #fff;
                    border: 1px solid var(--main-color);
                    min-width: 240px;
                }

                .ab-test-metered-softwall-order-link:hover, .ab-test-metered-softwall-order-link:active, .ab-test-metered-softwall-order-link:focus {
                    background-color: var(--hover-color);
                    color: #fff;
                }

                .ab-test-metered-softwall-login-link {
                    color: #191919;
                    display: inline-block;
                    font-size: 14px;
                }

                .ab-test-metered-softwall-login-link span {
                    color: var(--main-color);
                }

                .ab-test-metered-softwall-close-button {
                    position: absolute;
                    top: 16px;
                    right: 16px;
                    display: none;
                }

                .ab-test-metered-softwall-close-button > .icon {
                    color: #222;
                }

                .sndp-dark .ab-test-metered-softwall {
                    border-top: 1px solid #777;
                }

                .sndp-dark .ab-test-metered-softwall-login-link span {
                    color: #6080ff;
                }

                .sndp-dark .ab-test-metered-softwall, .sndp-dark .ab-for-subscribers {
                    color: #fff;
                    background-color: #292929;    
                }

                .sndp-dark .ab-test-metered-softwall-login-link {
                    color: inherit;
                }

                .sndp-dark .ab-test-paywall-product {
                    background: #000;
                }

                .sndp-dark .ab-test-paywall-product .ab-product-text, .sndp-dark .ab-test-paywall-product .ab-product-title > span {
                    color: #c9c9c9;
                }

                .sndp-dark .ab-test-paywall-product .ab-product-text svg {
                    fill: #c9c9c9;
                }

                .sndp-dark .paywall__text-with-lines-around:after, .sndp-dark .paywall__text-with-lines-around:before {
                    background: #777;
                }

                @media (min-width: 576px) {
                    .ab-test-metered-softwall-title {
                        font-size: 24px;
                        margin-bottom: 12px;
                    }

                    .ab-test-paywall-additional-info {
                        margin-bottom: 16px;
                    }

                    .ab-test-paywall-product {
                        padding: 8px 12px;
                    }

                    .ab-test-paywall-product .ab-product-content {
                        width: 260px;
                        margin-left: 20px;
                    }

                    .ab-product-cancel-anytime {
                        margin-top: 12px;
                        margin-bottom: 16px;
                    }

                    .ab-test-paywall-product.selected .ab-radio {
                        margin-left: 9px;
                    }
                }
            `;

            let styleSheet = document.createElement("style");
            styleSheet.type = "text/css";
            styleSheet.innerText = style;
            return styleSheet;
        };

        const actualChanges = function (mainElement, softwallTitle, softwallButton) {
            mainElement.appendChild(setStyles()); //add styles
            softwallButton = changeButtonUrlAndText(softwallButton, 'Digi+');
            softwallButton.onclick = function (e) {
                let productname = softwallButton.getAttribute('data-product-name');
                sendGAEvent('click subscribe ' + productname + ' at ' + variantId)
            }
            softwallTitle.innerText = changeText(); //change title

            let loginLink = false;
            if(document.querySelector('.ab-test-metered-softwall-login-link')) {
                loginLink = document.querySelector('.ab-test-metered-softwall-login-link').parentNode;
            }
            
            mainElement.insertBefore(addLogoAndLogin(loginLink), mainElement.childNodes[0]); //insert brand logo as first element
            let secondDiv = document.querySelector('.ab-second-div');

            if(cycloneDateUntil) {
                let date = new Date();
                date.setDate(date.getDate() + cycloneDateUntil);
                let dd = date.getDate();
                let mm = date.getMonth()+1;
                let pvmText = dd.toString() + '.' + mm.toString() + '.';
                let cycloneText = createElem('div', 'paywall__text-block ab-test-paywall-additional-info', 'Maksuttoman jakson jälkeen voit jatkaa <span>tilausta -50 % hinnalla</span> <span>' + pvmText + ' asti.</span>');
                secondDiv.appendChild(cycloneText);
            }

            let readingRightsForOneSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="2 2 32 32" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M18.3725 13.5C20.0293 13.5 21.3725 12.1569 21.3725 10.5C21.3725 8.84315 20.0293 7.5 18.3725 7.5C16.7156 7.5 15.3725 8.84315 15.3725 10.5C15.3725 12.1569 16.7156 13.5 18.3725 13.5ZM18.3725 16.5C21.6862 16.5 24.3725 13.8137 24.3725 10.5C24.3725 7.18629 21.6862 4.5 18.3725 4.5C15.0588 4.5 12.3725 7.18629 12.3725 10.5C12.3725 13.8137 15.0588 16.5 18.3725 16.5ZM18.3725 18C23.8903 18 27.2436 20.6846 28.948 23.6222C28.9709 23.6617 28.9918 23.7017 29.0107 23.7423C29.3011 24.1997 29.3328 24.7992 29.0421 25.3002C27.3377 28.2379 23.8903 31.1253 18.3725 31.1253C12.8547 31.1253 9.40724 28.2379 7.70281 25.3002C7.41216 24.7992 7.44389 24.1999 7.73416 23.7425C7.7531 23.7019 7.77402 23.6617 7.79695 23.6222C9.50137 20.6846 12.8547 18 18.3725 18ZM10.7754 24.5282C12.1114 26.3666 14.5065 28.1253 18.3725 28.1253C22.2385 28.1253 24.6335 26.3666 25.9696 24.5282C24.6675 22.6761 22.3285 21 18.3725 21C14.4164 21 12.0774 22.6761 10.7754 24.5282Z"></path></svg>';
            let readingRightsForFourSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="13" viewBox="0 0 14 13" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.5809 3.16667C7.5809 4.63943 6.387 5.83333 4.91424 5.83333C3.44148 5.83333 2.24757 4.63943 2.24757 3.16667C2.24757 1.69391 3.44148 0.5 4.91424 0.5C6.387 0.5 7.5809 1.69391 7.5809 3.16667ZM6.24757 3.16667C6.24757 3.90305 5.65062 4.5 4.91424 4.5C4.17786 4.5 3.5809 3.90305 3.5809 3.16667C3.5809 2.43029 4.17786 1.83333 4.91424 1.83333C5.65062 1.83333 6.24757 2.43029 6.24757 3.16667Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.61447 8.99877C8.85695 7.69314 7.3666 6.5 4.91424 6.5C2.46188 6.5 0.97153 7.69314 0.214008 8.99877C0.20382 9.01633 0.194523 9.03416 0.186103 9.05221C0.0570957 9.2555 0.0429897 9.52189 0.17217 9.74454C0.929692 11.0502 2.46188 12.3334 4.91425 12.3334C7.36661 12.3334 8.8988 11.0502 9.65632 9.74454C9.78552 9.52186 9.77139 9.25543 9.64234 9.05214C9.63393 9.03411 9.62464 9.0163 9.61447 8.99877ZM4.91425 11.0001C3.19602 11.0001 2.13155 10.2185 1.53775 9.40141C2.11643 8.57826 3.15599 7.83333 4.91424 7.83333C6.67249 7.83333 7.71205 8.57827 8.29073 9.40142C7.69693 10.2185 6.63246 11.0001 4.91425 11.0001Z"></path><path d="M8.58091 5.83333C8.1137 5.83333 7.67455 5.71318 7.29267 5.50209C7.60603 5.183 7.85567 4.80114 8.021 4.37709C8.19125 4.45598 8.38094 4.5 8.58091 4.5C9.31729 4.5 9.91424 3.90305 9.91424 3.16667C9.91424 2.43029 9.31729 1.83333 8.58091 1.83333C8.38094 1.83333 8.19125 1.87736 8.021 1.95624C7.85567 1.5322 7.60603 1.15033 7.29267 0.831247C7.67455 0.620154 8.1137 0.5 8.58091 0.5C10.0537 0.5 11.2476 1.69391 11.2476 3.16667C11.2476 4.63943 10.0537 5.83333 8.58091 5.83333Z"></path><path d="M9.66834 10.8844C9.21539 11.4261 8.63188 11.9239 7.91194 12.3003C8.12684 12.322 8.34979 12.3334 8.58092 12.3334C11.0333 12.3334 12.5655 11.0502 13.323 9.74454C13.4522 9.52186 13.4381 9.25543 13.309 9.05214C13.3006 9.03411 13.2913 9.0163 13.2811 8.99877C12.5236 7.69314 11.0333 6.5 8.58091 6.5C8.36457 6.5 8.15572 6.50929 7.95419 6.52711C8.67207 6.90013 9.24931 7.39617 9.6959 7.94617C10.7985 8.18463 11.5135 8.77001 11.9574 9.40142C11.5006 10.0299 10.7654 10.6374 9.66834 10.8844Z"></path></svg>';
            let facsimileSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="15" viewBox="0 0 16 15" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M15.0282 0.519266C14.9956 0.319292 14.822 0.166664 14.6128 0.166664H3.13458L3.06631 0.172173C2.86634 0.20479 2.71371 0.378338 2.71371 0.587534L2.71295 3.94837L0.838847 3.94897L0.768529 3.95481C0.562854 3.98937 0.408842 4.1729 0.41839 4.38847L0.818935 13.4318L0.847872 13.5654C1.0317 14.3071 1.55045 14.7823 2.27412 14.7823H13.6125L13.7284 14.7778C14.455 14.7212 15.0337 14.1365 15.0337 13.4132V0.587534L15.0282 0.519266ZM3.55469 1.0084H14.1912L14.192 13.4132L14.1868 13.4837C14.1491 13.7378 13.9103 13.9406 13.6125 13.9406H2.27412L2.18767 13.9352C1.90852 13.8994 1.72045 13.6867 1.65272 13.3339L1.27816 4.79011H2.71295L2.71371 12.0658L2.71922 12.1341C2.75184 12.334 2.92539 12.4867 3.13458 12.4867L3.20285 12.4812C3.40282 12.4485 3.55545 12.275 3.55545 12.0658L3.55469 1.0084Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.25632 2.46232H12.3172C12.5496 2.46232 12.7381 2.65075 12.7381 2.88319V7.47449C12.7381 7.70693 12.5496 7.89536 12.3172 7.89536H9.25632C9.02388 7.89536 8.83545 7.70693 8.83545 7.47449V2.88319C8.83545 2.65075 9.02388 2.46232 9.25632 2.46232ZM11.8963 7.05362V3.30406H9.67719V7.05362H11.8963Z"></path><path d="M7.34328 4.75797V5.59971H5.04763V4.75797H7.34328Z"></path><path d="M7.34328 2.46232V3.30406H5.04763V2.46232H7.34328Z"></path><path d="M7.34328 7.05362V7.89536H5.04763V7.05362H7.34328Z"></path><path d="M12.6998 9.34927V10.191H5.04763V9.34927H12.6998Z"></path><path d="M12.6998 11.6449V12.4867H5.04763V11.6449H12.6998Z"></path></svg>';

            let product1 = createProductElement('Digi+', 'HS Digi+ 2 kk 0 € <span>(norm. 19,50 €/kk)</span>', readingRightsForFourSvg + 'Lukuoikeus neljälle &nbsp;' + facsimileSvg + 'Näköislehti', softwallButton);
            let product2 = createProductElement('Digi', 'HS Digi 2 kk 0 € <span>(norm. 12,50 €/kk)<span>', readingRightsForOneSvg + 'Lukuoikeus yhdelle', softwallButton);
            secondDiv.appendChild(product1);
            secondDiv.appendChild(product2);

            let buttonDiv = document.querySelector('.ab-button-div');
            let cancelAnytimeText = createElem('p', 'ab-product-cancel-anytime', cancelAnytime);
            buttonDiv.appendChild(cancelAnytimeText);

            dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
            dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': 'change offer at mittarimuuri', 'eventLabel': experimentName + ' ' + variantId});
            return true;
        };

        const changeHtmlClassNames = function (elem) {
            //if errors here, it returns false and other changes are not made
            let firstDiv = elem.querySelector('.ab-test-metered-softwall .toast__container--inner');
            firstDiv.classList.add('ab-softwall-container', 'ab-first-div');

            let secondDiv = elem.querySelector('.ab-test-metered-softwall .softwall__row');
            secondDiv.classList.add('justify-center', 'flex-col', 'ab-second-div');

            let buttonDiv = elem.querySelector('.ab-test-metered-softwall .softwall__buttons');
            buttonDiv.classList.add('justify-center', 'ab-button-div');
            return true;
        };

        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-test-softwall-title-modified');
            if(experimentExists) {
                //sendGAEvent('exp already exists');
            } else if(mainElement) {
                let softwallTitle = document.querySelector('.ab-test-metered-softwall-title');
                let softwallButton = document.querySelector('.ab-test-metered-softwall-order-link').parentNode;
                if(softwallButton.href.indexOf('https://www.hs.fi/api/safe/v1/web/subscription-funnel/hs-digi-nayte') < 0) {
                    softwallButton = false;
                }

                if(mainElement && softwallTitle && softwallButton) { //---------actual changes here
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
                    softwallTitle.classList.add('ab-test-softwall-title-modified', namelower, 'modified-by-conductrics');

                    if(changeHtmlClassNames(mainElement)) {
                        if(actualChanges(mainElement, softwallTitle, softwallButton)) {
                            if(requireCdx) {
                                cdx.confirm(true);
                            }
                            return true;
                        }
                    }
                }
                else {
                    sendGAEvent('script error: html invalid');
                }
            } else {
                sendGAEvent('script failed, element n/a');
            }
        };

        doExperimentChanges(); //finally call the function to do the changes
    };
} catch(e) {
  console.log(e)

  let err = e
  let err_split = e.stack.split('\n')
  let err_line = false
  if (err_split[1]) {
    err_line = err_split[1].split('>:')
  }
  if (err_line[1]) {
    err = err_line[1]
  }
  sendGAEvent('script error: ' + err)
}
 },'js-qv7B6CyVUSQ3aA4sqRCd-1732264930': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if (!requireCdx) { testing = true; }
const experimentId = 'HS24-26b';
const variantId = 'D';
const experimentName = experimentId + ' softwall dynaaminen muuri';
const variantName = variantId + ' radio buttons cyclone';
const currentDefaultButtonText = 'Kokeile Hesaria 2 viikkoa maksutta!'; //default title
const miniPath = '/hs-mini-tutustu-v62';
const digiPath = '/hs-digi-tutustu-v62';
const miniAID = 'GZD55BXVOHBUW';
const digiAID = 'GZR44IJHODXQI';
let pvmCopyLaskePaivia = 60; //p.k. korvataan päivämäärällä joka lasketaan tästä
let titleText = 'Lue maksutta p.k. asti.'; // p.k. korvataan
const cycloneDateUntil = 240;

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    const changeButtonUrlAndText = function (button, pos) {          
        let urlParams = false;
        let pagePath = false;

        if(pos === 'Digi') {
          pagePath = miniPath;
          urlParams = {
            embedded: null,
            aid: miniAID,
            ref: 'vainomuuri',
            showPaymentPeriodList: null,
            offer: 3,
            variant: null
          }

          button.innerText = 'Tutustu HS Digi 2 kk 0 €';
        }
        else {
            pagePath = digiPath;
            urlParams = {
              embedded: null,
              aid: digiAID,
              ref: 'vainomuuri',
              showPaymentPeriodList: null,
              offer: null,
              variant: null
            }
            
           button.innerText = 'Tutustu HS Digi+ 2 kk 0 €';
        }

        button.classList.add('button', 'button--component', 'button--md', 'button--primary-neg', 'ab-test-metered-softwall-order-link');
      
        let url = new URL(button.href);
        // Update search params
        if (urlParams) {
          Object.keys(urlParams).forEach(function (key) {
            if (urlParams[key] === null) {
              url.searchParams.delete(key)
            } else if (urlParams[key] !== undefined) {
              url.searchParams.set(key, urlParams[key])
            }
          })
        }
        // Update path
        if (pagePath) {
            let path = url.pathname.split('/');
            path.pop();
            path = path.join('/') + pagePath;
            /*
            if(useOldFunnel && !path.includes('/api/safe/v1/web/subscription-funnel')) {
                path = '/api/safe/v1/web/subscription-funnel' + path; //from new to old funnel
            }
            if(useOldFunnel && path.includes('/shopping-ui/')) {
                path = path.replace('/shopping-ui/', '/');
            }
            */
            
            url.pathname = path;
        }
        button.href = url.toString();
        button.setAttribute('data-product-name', pos);
        return button;
    }

    const createElem = function(tag, classes, text) {
        let elem = document.createElement(tag);
        if(classes) {
            //split classes by space
            classes = classes.split(' ');
            for(let i = 0; i < classes.length; i++) {
                elem.classList.add(classes[i]);
            }
        }
        if(text) {
            elem.innerHTML = text;
        }
        return elem;
    }

    const createProductElement = function(productname, title, features, button) {
        let product = createElem('label', 'ab-test-paywall-product', false);
        //product.setAttribute('for', 'radio_'+productname);
        let check = createElem('input', 'ab-radio', false);
        check.type = 'radio';
        check.name = 'product';
        //check.id = 'radio_'+productname;
        if(title.includes('HS Digi+')) {
            check.checked = 'checked';
            product.classList.add('selected');
        }

        let productcontent = createElem('div', 'ab-product-content', false);
        let producttitle = createElem('p', 'ab-product-title', title);
        let producttext = createElem('p', 'ab-product-text', features);

        product.appendChild(check);
        productcontent.appendChild(producttitle);
        productcontent.appendChild(producttext);
        product.appendChild(productcontent);
        check.onchange = function(e) {
            //sendGAEvent('click product ' + productname);
            let products = document.querySelectorAll('.ab-test-paywall-product');
            products.forEach(function(p) {
                p.classList.remove('selected');
            });
            product.classList.add('selected');
            changeButtonUrlAndText(button, productname);
        }
        return product;
    }

    if(true) {
        //actual code begins

        let logoInSvg = '<circle cx="12.5" cy="12" r="12" fill="#00194C"/><path fill-rule="evenodd" clip-rule="evenodd" d="M7.11395 7.16037H8.57295C8.62628 7.16037 9.07295 7.14237 8.89428 7.65137C8.70295 8.1957 8.25128 9.29403 8.46561 9.93703C8.53695 10.187 8.76661 10.4907 9.31028 10.464H10.8373C11.1136 10.4464 11.4089 10.437 11.5696 9.93703C11.6409 9.68703 11.4089 8.66903 10.9983 7.65137C10.8909 7.40137 10.8909 7.15137 11.2303 7.15137H12.6093C13.0556 7.15137 12.9666 7.91903 12.9666 8.41903C12.9666 9.4727 12.5736 13.6514 12.8416 15.294C13.0379 16.4904 13.3056 16.8477 12.5556 16.8477H11.1006C10.6006 16.8477 10.5649 16.3657 10.6899 16.169C11.1186 15.4904 11.3686 13.9907 11.3686 13.4727C11.3686 12.9727 11.2856 12.316 10.6723 12.316H8.27395C7.63128 12.3517 7.47061 12.9727 7.45261 13.2227C7.38128 13.7407 7.38128 14.7407 7.98828 16.0797C8.16695 16.4904 8.38128 16.8477 7.88128 16.8477H6.31028C5.48895 16.8477 5.50661 14.9907 5.72095 14.2407C6.34595 11.919 7.02461 11.9547 7.27461 9.66903C7.31028 9.3477 7.27461 8.66903 6.89961 7.90137C6.77461 7.65137 6.72128 7.16937 7.11395 7.16037Z" fill="white"/><path fill-rule="evenodd" clip-rule="evenodd" d="M16.8044 7.15856H18.6604C18.9271 7.14689 19.1757 7.30656 19.1757 7.60889C19.1757 8.10622 19.1757 8.20089 19.1224 8.57389C19.0691 8.91156 18.9271 8.96456 18.3941 8.78722C17.8254 8.59156 16.3144 7.52156 15.5427 8.34322C15.3297 8.56956 15.3011 9.10289 15.5781 9.47456C16.0807 10.1486 17.2477 10.5712 17.7227 10.8609C18.5871 11.3879 18.6751 11.4609 18.9721 11.8732C19.6884 12.8682 19.6117 15.4976 17.9947 16.4216C17.4084 16.7412 16.8577 16.8479 16.2714 16.8479H14.4767C14.0681 16.8479 13.8301 16.6712 13.8017 16.4216C13.7367 15.8469 13.7781 15.5279 13.8551 15.0716C13.9001 14.8036 13.9807 14.6419 14.4767 14.8406C15.2464 15.1486 15.7931 15.3966 16.4847 15.5512C16.9391 15.6532 17.7077 15.6209 18.0424 14.9529C18.3627 14.3139 18.1724 13.6852 17.5507 13.3656C15.9694 12.5659 15.2231 12.1219 14.7257 11.6242C14.2104 11.1266 13.9854 10.6769 14.0564 9.55722C14.0917 8.98889 14.8151 7.15856 16.8044 7.15856Z" fill="white"/>';        //let cancelAnytime = '<svg viewBox="0 0 20 20" width="15" height="15" stroke="inherit" data-reactid="71"><path d="M9 15h2V9H9v6zm1-15C4.5 0 0 4.5 0 10s4.5 10 10 10 10-4.5 10-10S15.5 0 10 0zm0 18c-4.4 0-8-3.6-8-8s3.6-8 8-8 8 3.6 8 8-3.6 8-8 8zM9 7h2V5H9v2z" fill-rule="evenodd"></path></svg> Voit irtisanoa tilauksen koska tahansa';
        let cancelAnytime = 'Voit irtisanoa tilauksen koska tahansa';

        let art = window.location.pathname.substring(window.location.pathname.indexOf('art-')+4);
        let tcid_orig = art.replace('.html', '');
        let mainElement = document.querySelector('.ab-test-metered-softwall'); //main element to look for
        
        const changeText = function () {
            let date = new Date();
            date.setDate(date.getDate() + pvmCopyLaskePaivia);

            let dd = date.getDate();
            let mm = date.getMonth()+1;
            let dateString = dd.toString() + '.' + mm.toString() + '.';

            let newText = titleText.replace('p.k.', dateString);
            return newText;
        };

        const addLogoAndLogin = function (loginLink) {
            let div = document.createElement('div');
            div.classList.add('ab-logo-container');
            let logo = document.createElementNS("http://www.w3.org/2000/svg", "svg");
            logo.setAttribute('width', '50');
            logo.setAttribute('height', '48');
            logo.setAttribute('viewBox', '0 0 25 24');
            logo.classList.add('ab-logo-element');
            logo.innerHTML = logoInSvg;
            div.appendChild(logo);

            if(loginLink) {
                loginLink.innerHTML = 'Oletko jo tilaaja? <span>Kirjaudu tästä.</span>';
                loginLink.classList.add('ab-test-metered-softwall-login-link');
                div.appendChild(loginLink);
            }

            let span = document.createElement('span');
            span.innerText = 'Uusille tilaajille';
            span.classList.add('ab-for-subscribers', 'paywall__text-with-lines-around');
            div.appendChild(span);
            return div;
        };

        const setStyles = function () {
            let style = `			
                :root {
                    --main-color: #3860ff; /*#41a492;*/
                    --grey-color: #666;
                    --hover-color: #3051d8;
                    --font-family-header: Sanomat,Georgia,Baskerville,serif;
                    --font-family-text: Helsingin, Helvetica, Arial, sans-serif;
                    --line-color: #999;
                }

                .ab-test-metered-softwall {
                    transition: none;
                    background-color: #fff;
                    color: #222;
                    display: flex;
                    flex-direction: column;
                    align-items: center;
                    font-family: var(--font-family-text);
                }

                .ab-logo-container {
                    margin-top: -24px;
                    display: flex;
                    flex-direction: column;
                    align-items: center;
                    gap: 12px;
                    width: 100%;
                }

                .ab-logo-element {
                    margin: 0 auto;
                }

                .ab-for-subscribers {
                    text-transform: uppercase;
                    font-size: 12px;
                    font-family: var(--font-family-text);
                    background: #fff;
                    z-index: 1;
                    position: relative;
                    padding: 0 16px;
                    width: calc(100% - 32px);
                    text-align: center;
                    overflow: hidden;
                }

                .paywall__text-with-lines-around:after, .paywall__text-with-lines-around:before {
                    height: 1px;
                }

                .ab-first-div {
                    margin-left: 16px;
                    margin-right: 16px;
                    padding-top: 8px;
                    padding-bottom: 8px;
                }

                .ab-softwall-container {
                    position: relative;
                    flex-direction: column;
                    width: auto;
                }

                .ab-test-paywall-product {
                    display: flex;
                    flex-direction: row;
                    align-items: baseline;
                    font-size: 16px;
                    font-family: 'Helsingin', Arial, sans-serif;
                    margin: 4px auto;
                    border: 1px solid var(--line-color);
                    padding: 6px 8px;
                    cursor: pointer;
                    min-width: 240px;
                }

                .ab-test-paywall-product.selected {
                    border-left: 5px solid var(--main-color);
                    padding-left: 5px;
                }

                .ab-test-paywall-product.selected .ab-radio {
                    margin-left: 5px;
                }

                .ab-test-paywall-product:last-of-type {
                    margin-bottom: 0;
                }

                .ab-test-paywall-product .ab-product-content {
                    display: flex;
                    flex-direction: column;
                    margin-left: 16px;
                    width: 240px;
                }

                .ab-test-paywall-product .ab-radio {
                    transform: scale(1.6);
                    accent-color: var(--main-color);
                    cursor: pointer;
                    margin-left: 6px;
                }

                @supports (-moz-appearance:none) {
                    .ab-test-paywall-product .ab-radio {
                        transform: scale(1.4);
                    }
                }

                .ab-test-paywall-product .ab-product-title {
                    font-weight: 600;
                }

                .ab-test-paywall-product .ab-product-title > span {
                    text-decoration: line-through;
                    font-size: 13px;
                    font-weight: 300;
                    color: #666;
                    float: right;
                    margin-top: 3px;
                }

                .ab-test-paywall-product .ab-product-text {
                    font-size: 12px;
                    margin-top: 2px;
                    color: #555;
                }

                .ab-test-paywall-product .ab-product-text svg {
                    fill: #191919;
                    display: inline;
                    margin-right: 5px;
                    vertical-align: baseline;
                    height: 12px;
                }

                .ab-test-paywall-additional-info {
                    font-size: 15px;
                    font-weight: 400;
                    margin-top: 0;
                    line-height: 1.2;
                    margin-bottom: 12px;
                    text-align: center;
                }

                .ab-test-paywall-additional-info span {
                    /* no line break */
                    white-space: nowrap;
                }

                .ab-product-cancel-anytime {
                    font-weight: 400;
                    font-size: 13px;
                    line-height: inherit;
                    margin-top: 8px;
                    margin-bottom: 4px;
                }

                .ab-product-cancel-anytime svg {
                    display: inline-block;
                    fill: var(--main-color);
                    width: 12px;
                    height: 12px;
                    vertical-align: baseline;
                }

                .ab-test-metered-softwall-title, .ab-test-metered-softwall-description {
                    text-align: center;
                    margin: 0 auto 8px;
                    color: inherit;
                }

                .ab-test-metered-softwall-title {
                    padding: 0;
                    font-size: 22px;
                }

                .ab-test-metered-softwall-description {
                    display: none;
                }

                .ab-button-div {
                    margin-top: 8px;
                    justify-content: center;
                    flex-direction: column;
                }

                .ab-button-div .button {
                    transition: all 200ms;
                    min-width: max-content;
                }

                .ab-second-div {
                    margin-bottom: 8px;
                    flex-direction: column;
                }

                .ab-button-div .ab-test-metered-softwall-order-link {
                    background-color: var(--main-color);
                    color: #fff;
                    border: 1px solid var(--main-color);
                    min-width: 240px;
                }

                .ab-test-metered-softwall-order-link:hover, .ab-test-metered-softwall-order-link:active, .ab-test-metered-softwall-order-link:focus {
                    background-color: var(--hover-color);
                    color: #fff;
                }

                .ab-test-metered-softwall-login-link {
                    color: #191919;
                    display: inline-block;
                    font-size: 14px;
                }

                .ab-test-metered-softwall-login-link span {
                    color: var(--main-color);
                }

                .ab-test-metered-softwall-close-button {
                    position: absolute;
                    top: 16px;
                    right: 16px;
                    display: none;
                }

                .ab-test-metered-softwall-close-button > .icon {
                    color: #222;
                }

                .sndp-dark .ab-test-metered-softwall {
                    border-top: 1px solid #777;
                }

                .sndp-dark .ab-test-metered-softwall-login-link span {
                    color: #6080ff;
                }

                .sndp-dark .ab-test-metered-softwall, .sndp-dark .ab-for-subscribers {
                    color: #fff;
                    background-color: #292929;    
                }

                .sndp-dark .ab-test-metered-softwall-login-link {
                    color: inherit;
                }

                .sndp-dark .ab-test-paywall-product {
                    background: #000;
                }

                .sndp-dark .ab-test-paywall-product .ab-product-text, .sndp-dark .ab-test-paywall-product .ab-product-title > span {
                    color: #c9c9c9;
                }

                .sndp-dark .ab-test-paywall-product .ab-product-text svg {
                    fill: #c9c9c9;
                }

                .sndp-dark .paywall__text-with-lines-around:after, .sndp-dark .paywall__text-with-lines-around:before {
                    background: #777;
                }

                @media (min-width: 576px) {
                    .ab-test-metered-softwall-title {
                        font-size: 24px;
                        margin-bottom: 12px;
                    }

                    .ab-test-paywall-additional-info {
                        margin-bottom: 16px;
                    }

                    .ab-test-paywall-product {
                        padding: 8px 12px;
                    }

                    .ab-test-paywall-product .ab-product-content {
                        width: 260px;
                        margin-left: 20px;
                    }

                    .ab-product-cancel-anytime {
                        margin-top: 12px;
                        margin-bottom: 16px;
                    }

                    .ab-test-paywall-product.selected .ab-radio {
                        margin-left: 9px;
                    }
                }
            `;

            let styleSheet = document.createElement("style");
            styleSheet.type = "text/css";
            styleSheet.innerText = style;
            return styleSheet;
        };

        const actualChanges = function (mainElement, softwallTitle, softwallButton) {
            mainElement.appendChild(setStyles()); //add styles
            softwallButton = changeButtonUrlAndText(softwallButton, 'Digi+');
            softwallButton.onclick = function (e) {
                let productname = softwallButton.getAttribute('data-product-name');
                sendGAEvent('click subscribe ' + productname + ' at ' + variantId)
            }
            softwallTitle.innerText = changeText(); //change title

            let loginLink = false;
            if(document.querySelector('.ab-test-metered-softwall-login-link')) {
                loginLink = document.querySelector('.ab-test-metered-softwall-login-link').parentNode;
            }

            mainElement.insertBefore(addLogoAndLogin(loginLink), mainElement.childNodes[0]); //insert brand logo as first element
            let secondDiv = document.querySelector('.ab-second-div');

            if(cycloneDateUntil) {
                let date = new Date();
                date.setDate(date.getDate() + cycloneDateUntil);
                let dd = date.getDate();
                let mm = date.getMonth()+1;
                let pvmText = dd.toString() + '.' + mm.toString() + '.';
                let cycloneText = createElem('div', 'paywall__text-block ab-test-paywall-additional-info', 'Maksuttoman jakson jälkeen voit jatkaa <span>tilausta -50 % hinnalla</span> <span>' + pvmText + ' asti.</span>');
                secondDiv.appendChild(cycloneText);
            }

            let readingRightsForOneSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="2 2 32 32" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M18.3725 13.5C20.0293 13.5 21.3725 12.1569 21.3725 10.5C21.3725 8.84315 20.0293 7.5 18.3725 7.5C16.7156 7.5 15.3725 8.84315 15.3725 10.5C15.3725 12.1569 16.7156 13.5 18.3725 13.5ZM18.3725 16.5C21.6862 16.5 24.3725 13.8137 24.3725 10.5C24.3725 7.18629 21.6862 4.5 18.3725 4.5C15.0588 4.5 12.3725 7.18629 12.3725 10.5C12.3725 13.8137 15.0588 16.5 18.3725 16.5ZM18.3725 18C23.8903 18 27.2436 20.6846 28.948 23.6222C28.9709 23.6617 28.9918 23.7017 29.0107 23.7423C29.3011 24.1997 29.3328 24.7992 29.0421 25.3002C27.3377 28.2379 23.8903 31.1253 18.3725 31.1253C12.8547 31.1253 9.40724 28.2379 7.70281 25.3002C7.41216 24.7992 7.44389 24.1999 7.73416 23.7425C7.7531 23.7019 7.77402 23.6617 7.79695 23.6222C9.50137 20.6846 12.8547 18 18.3725 18ZM10.7754 24.5282C12.1114 26.3666 14.5065 28.1253 18.3725 28.1253C22.2385 28.1253 24.6335 26.3666 25.9696 24.5282C24.6675 22.6761 22.3285 21 18.3725 21C14.4164 21 12.0774 22.6761 10.7754 24.5282Z"></path></svg>';
            let readingRightsForFourSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="13" viewBox="0 0 14 13" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.5809 3.16667C7.5809 4.63943 6.387 5.83333 4.91424 5.83333C3.44148 5.83333 2.24757 4.63943 2.24757 3.16667C2.24757 1.69391 3.44148 0.5 4.91424 0.5C6.387 0.5 7.5809 1.69391 7.5809 3.16667ZM6.24757 3.16667C6.24757 3.90305 5.65062 4.5 4.91424 4.5C4.17786 4.5 3.5809 3.90305 3.5809 3.16667C3.5809 2.43029 4.17786 1.83333 4.91424 1.83333C5.65062 1.83333 6.24757 2.43029 6.24757 3.16667Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.61447 8.99877C8.85695 7.69314 7.3666 6.5 4.91424 6.5C2.46188 6.5 0.97153 7.69314 0.214008 8.99877C0.20382 9.01633 0.194523 9.03416 0.186103 9.05221C0.0570957 9.2555 0.0429897 9.52189 0.17217 9.74454C0.929692 11.0502 2.46188 12.3334 4.91425 12.3334C7.36661 12.3334 8.8988 11.0502 9.65632 9.74454C9.78552 9.52186 9.77139 9.25543 9.64234 9.05214C9.63393 9.03411 9.62464 9.0163 9.61447 8.99877ZM4.91425 11.0001C3.19602 11.0001 2.13155 10.2185 1.53775 9.40141C2.11643 8.57826 3.15599 7.83333 4.91424 7.83333C6.67249 7.83333 7.71205 8.57827 8.29073 9.40142C7.69693 10.2185 6.63246 11.0001 4.91425 11.0001Z"></path><path d="M8.58091 5.83333C8.1137 5.83333 7.67455 5.71318 7.29267 5.50209C7.60603 5.183 7.85567 4.80114 8.021 4.37709C8.19125 4.45598 8.38094 4.5 8.58091 4.5C9.31729 4.5 9.91424 3.90305 9.91424 3.16667C9.91424 2.43029 9.31729 1.83333 8.58091 1.83333C8.38094 1.83333 8.19125 1.87736 8.021 1.95624C7.85567 1.5322 7.60603 1.15033 7.29267 0.831247C7.67455 0.620154 8.1137 0.5 8.58091 0.5C10.0537 0.5 11.2476 1.69391 11.2476 3.16667C11.2476 4.63943 10.0537 5.83333 8.58091 5.83333Z"></path><path d="M9.66834 10.8844C9.21539 11.4261 8.63188 11.9239 7.91194 12.3003C8.12684 12.322 8.34979 12.3334 8.58092 12.3334C11.0333 12.3334 12.5655 11.0502 13.323 9.74454C13.4522 9.52186 13.4381 9.25543 13.309 9.05214C13.3006 9.03411 13.2913 9.0163 13.2811 8.99877C12.5236 7.69314 11.0333 6.5 8.58091 6.5C8.36457 6.5 8.15572 6.50929 7.95419 6.52711C8.67207 6.90013 9.24931 7.39617 9.6959 7.94617C10.7985 8.18463 11.5135 8.77001 11.9574 9.40142C11.5006 10.0299 10.7654 10.6374 9.66834 10.8844Z"></path></svg>';
            let facsimileSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="15" viewBox="0 0 16 15" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M15.0282 0.519266C14.9956 0.319292 14.822 0.166664 14.6128 0.166664H3.13458L3.06631 0.172173C2.86634 0.20479 2.71371 0.378338 2.71371 0.587534L2.71295 3.94837L0.838847 3.94897L0.768529 3.95481C0.562854 3.98937 0.408842 4.1729 0.41839 4.38847L0.818935 13.4318L0.847872 13.5654C1.0317 14.3071 1.55045 14.7823 2.27412 14.7823H13.6125L13.7284 14.7778C14.455 14.7212 15.0337 14.1365 15.0337 13.4132V0.587534L15.0282 0.519266ZM3.55469 1.0084H14.1912L14.192 13.4132L14.1868 13.4837C14.1491 13.7378 13.9103 13.9406 13.6125 13.9406H2.27412L2.18767 13.9352C1.90852 13.8994 1.72045 13.6867 1.65272 13.3339L1.27816 4.79011H2.71295L2.71371 12.0658L2.71922 12.1341C2.75184 12.334 2.92539 12.4867 3.13458 12.4867L3.20285 12.4812C3.40282 12.4485 3.55545 12.275 3.55545 12.0658L3.55469 1.0084Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.25632 2.46232H12.3172C12.5496 2.46232 12.7381 2.65075 12.7381 2.88319V7.47449C12.7381 7.70693 12.5496 7.89536 12.3172 7.89536H9.25632C9.02388 7.89536 8.83545 7.70693 8.83545 7.47449V2.88319C8.83545 2.65075 9.02388 2.46232 9.25632 2.46232ZM11.8963 7.05362V3.30406H9.67719V7.05362H11.8963Z"></path><path d="M7.34328 4.75797V5.59971H5.04763V4.75797H7.34328Z"></path><path d="M7.34328 2.46232V3.30406H5.04763V2.46232H7.34328Z"></path><path d="M7.34328 7.05362V7.89536H5.04763V7.05362H7.34328Z"></path><path d="M12.6998 9.34927V10.191H5.04763V9.34927H12.6998Z"></path><path d="M12.6998 11.6449V12.4867H5.04763V11.6449H12.6998Z"></path></svg>';

            let product1 = createProductElement('Digi+', 'HS Digi+ 2 kk 0 € <span>(norm. 20,90 €/kk)</span>', readingRightsForFourSvg + 'Lukuoikeus neljälle &nbsp;' + facsimileSvg + 'Näköislehti', softwallButton);
            let product2 = createProductElement('Digi', 'HS Digi 2 kk 0 € <span>(norm. 14,90 €/kk)<span>', readingRightsForOneSvg + 'Lukuoikeus yhdelle', softwallButton);
            secondDiv.appendChild(product1);
            secondDiv.appendChild(product2);

            let buttonDiv = document.querySelector('.ab-button-div');
            let cancelAnytimeText = createElem('p', 'ab-product-cancel-anytime', cancelAnytime);
            buttonDiv.appendChild(cancelAnytimeText);

            dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
            dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': 'change offer at mittarimuuri', 'eventLabel': experimentName + ' ' + variantId});
            return true;
        };

        const changeHtmlClassNames = function (elem) {
            //if errors here, it returns false and other changes are not made
            let firstDiv = elem.querySelector('.ab-test-metered-softwall .toast__container--inner');
            firstDiv.classList.add('ab-softwall-container', 'ab-first-div');

            let secondDiv = elem.querySelector('.ab-test-metered-softwall .softwall__row');
            secondDiv.classList.add('justify-center', 'flex-col', 'ab-second-div');

            let buttonDiv = elem.querySelector('.ab-test-metered-softwall .softwall__buttons');
            buttonDiv.classList.add('justify-center', 'ab-button-div');
            return true;
        };

        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-test-softwall-title-modified');
            if(experimentExists) {
                //sendGAEvent('exp already exists');
            } else if(mainElement) {
                let softwallTitle = document.querySelector('.ab-test-metered-softwall-title');
                let softwallButton = document.querySelector('.ab-test-metered-softwall-order-link').parentNode;
                if(softwallButton.href.indexOf('https://www.hs.fi/api/safe/v1/web/subscription-funnel/hs-digi-nayte') < 0) {
                    softwallButton = false;
                }

                if(mainElement && softwallTitle && softwallButton) { //---------actual changes here
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
                    softwallTitle.classList.add('ab-test-softwall-title-modified', namelower, 'modified-by-conductrics');

                    if(changeHtmlClassNames(mainElement)) {
                        if(actualChanges(mainElement, softwallTitle, softwallButton)) {
                            if(requireCdx) {
                                cdx.confirm(true);
                            }
                            return true;
                        }
                    }
                }
                else {
                    sendGAEvent('script error: html invalid');
                }
            } else {
                sendGAEvent('script failed, element n/a');
            }
        };

        doExperimentChanges(); //finally call the function to do the changes
    };
} catch(e) {
    if(e.toString().indexOf('confirm') < 0 && e.toString().indexOf('cdx') < 0) {
        console.log(e);
    
		let err = e;
		let err_split = e.stack.split("\n");
		let err_line = false;
		if(err_split[1]) {
			err_line = err_split[1].split('>:');
		}
		if(err_line[1]) {
			err = err_line[1];
		}
		sendGAEvent('script error: ' + err);
    }
}
 },'js-H0IG0pjG57SZDdRWgK2X-1732277208': function (cdx) { (function(w, t, f) {
  var s='script',o='_giosg',h='https://service.giosg.com',e,n;e=t.createElement(s);e.async=1;e.src=h+'/live/';
  w[o]=w[o]||function(){(w[o]._e=w[o]._e||[]).push(arguments)};w[o]._c=f;w[o]._h=h;n=t.getElementsByTagName(s)[0];n.parentNode.insertBefore(e,n);
})(window,document,5502);

window.showGiosgHSfeedback4 = true;

 },'js-xxxdldtcM437KDOxUyLG-1724140755': function (cdx) { (function(w, t, f) {
  var s='script',o='_giosg',h='https://service.giosg.com',e,n;e=t.createElement(s);e.async=1;e.src=h+'/live/';
  w[o]=w[o]||function(){(w[o]._e=w[o]._e||[]).push(arguments)};w[o]._c=f;w[o]._h=h;n=t.getElementsByTagName(s)[0];n.parentNode.insertBefore(e,n);
})(window,document,5502);

window.showGiosgHSnqs = true;

 },'js-WzEdgyKyh8OFgTnwCfE0-1738669457': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if (!requireCdx) { testing = true; }
const experimentId = 'HS25-36';
const variantId = 'A';
const experimentName = experimentId + ' Kovamuuri turbonappi';
const variantName = variantId + ' control';
let currentDefaultButtonTextOnHardPaywall = 'Tilaa HS Digi+ 1. kk 0 €'; //nykyisen napin teksti
let currentDefaultButtonTextOnArchivedPaywall = 'Lue 2 viikkoa maksutta'; //nykyisen napin teksti
const paywallType = 'hard'; // hard or archived
const newAID = 'GD5H3I8W3M6J3';
const pagePath = '/shopping-ui/hs-digi-tutustu';
const feedTitle = 'Hesarin digitilauksella pääset lukemaan rajoituksetta tämän ja yli 400 uutta timanttiartikkelia kuukaudessa';
const newDateUntil = 30;

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    if(true) {
        //helper function to create any html element
        const createElem = function(tag, classes, text) {
            let elem = document.createElement(tag);
            if(classes) {
                //split classes by space
                classes = classes.split(' ');
                for(let i = 0; i < classes.length; i++) {
                    elem.classList.add(classes[i]);
                }
            }
            if(text) {
                elem.innerHTML = text;
            }
            return elem;
        }

        function replaceText(node, newText) {  
            if (node.nodeType === Node.TEXT_NODE) {  
                node.nodeValue = newText;  
            } else {  
                node.childNodes.forEach((child) => replaceText(child, newText));  
            }  
        }  

        const changeButtonUrlAndText = function(button) {
            let urlParams = {
                'embedded': null,
                'offer': null,
                'aid': newAID,
                'ref': null,
                'showPaymentPeriodList': null,
                'variant': null
            };

            let url = new URL(button.href);
            // Update search params
            if (urlParams) {
                Object.keys(urlParams).forEach(function(key) {
                    if (urlParams[key] === null) {
                        url.searchParams.delete(key);
                    } else if (urlParams[key] !== undefined) {
                        url.searchParams.set(key, urlParams[key]);
                    }
                });
            }
            // Update path
            if (pagePath) {
                url.pathname = pagePath;
            }
            button.href = url.toString();

            replaceText(button, currentDefaultButtonTextOnHardPaywall); //finds the child text node and replaces it
            return button;
        };
    
        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-test-paywall-modified');
            let paywall = document.querySelector('.ab-test-hard-paywall, .ab-test-archived-paywall');
            let title = document.querySelector('.ab-test-hard-paywall-title, .ab-test-archived-paywall-title');
            let subtitle = document.querySelector('.ab-test-hard-paywall-subtitle, .ab-test-archived-paywall-subtitle');
            let hardButton = document.querySelector('.ab-test-hard-paywall-subscribe-button');
            let archivedButton = document.querySelector('.ab-test-archived-paywall-subscribe-button');
            let secondaryButton = document.querySelector('.ab-test-hard-paywall-secondary-subscribe-button, .ab-test-archived-paywall-secondary-subscribe-button');
            if(experimentExists) {
                sendGAEvent('script failed, paywall already modified');
            } else if(title && (hardButton || archivedButton)) { 
                if((hardButton && hardButton.innerText.trim() === currentDefaultButtonTextOnHardPaywall) || (archivedButton && archivedButton.innerText.trim() === currentDefaultButtonTextOnArchivedPaywall)) { //actual changes here
                    let button = hardButton || archivedButton;
                    button = changeButtonUrlAndText(button);
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;

                    subtitle.innerText = 'Voit irtisanoa tilauksen koska tahansa';

                    title.classList.add('ab-test-paywall-modified', namelower);
                    if(newDateUntil) {
                        let date = new Date();
                        date.setDate(date.getDate() + newDateUntil);
                        let dd = date.getDate();
                        let mm = date.getMonth()+1;
                        let pvmSpan = createElem('span', 'ab-date-span', dd.toString() + '.' + mm.toString() + '. asti');
                        title.innerText = 'Lue maksutta ';
                        title.appendChild(pvmSpan);
                    }
                    
                    title.classList.add('ab-test-paywall-modified', namelower);
            
                    dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
                    //dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': 'change offer to sample at timanttimuuri', 'eventLabel': experimentName + ' ' + variantName});
                    
                    if(feedTitle) {
                        let paywallOffering = document.querySelector('.ab-test-hard-paywall-offering, .ab-test-archived-paywall-offering');
                        if(paywallOffering) {
                            paywallOffering.innerText = feedTitle;
                        }
                    }

                    if(requireCdx) {
                        cdx.confirm(true);
                    }
                    return true;
                }
                else {
                    sendGAEvent('script failed, primary button text unexpected');
                }
            } else {
                sendGAEvent('script failed, paywall html unexpected');
            }
        };

        doExperimentChanges();
    }
} catch(err) {   
    sendGAEvent('script error: ' + err);
}
 },'js-n7tENWaxEdGhjkJiS4Dc-1739272204': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if (!requireCdx) { testing = true; }
const experimentId = 'HS25-36';
const variantId = 'B';
const experimentName = experimentId + ' Kovamuuri turbonappi';
const variantName = variantId + ' sykloni radios vanha 2kk';
let currentDefaultButtonTextOnHardPaywall = 'Tilaa HS Digi+ 1. kk 0 €'; //nykyisen napin teksti
let currentDefaultButtonTextOnArchivedPaywall = 'Lue 2 viikkoa maksutta'; //nykyisen napin teksti
const commonDateUntil = 60; //false or number of days
const miniDateUntil = 60;
const digiDateUntil = 60;
const cycloneDateUntil = 180;
const miniAID = 'GMJQNNLF4XKGD'; //HS Digi
const digiAID = 'G3X5ZQT6TGCKG'; //HS Digi+
const discountPercentage = '40';
const miniPath = '/api/safe/v1/web/subscription-funnel/hs-mini-tutustu-v624';
const digiPath = '/api/safe/v1/web/subscription-funnel/hs-digi-tutustu-v624';
const showProductFeatures = true;
const feedTitle = 'Hesarin digitilauksella pääset lukemaan rajoituksetta tämän ja yli 400 uutta timanttiartikkelia kuukaudessa';

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    if(true) {
        const createElem = function(tag, classes, text) {
            let elem = document.createElement(tag);
            if(classes) {
                //split classes by space
                classes = classes.split(' ');
                for(let i = 0; i < classes.length; i++) {
                    elem.classList.add(classes[i]);
                }
            }
            if(text) {
                elem.innerHTML = text;
            }
            return elem;
        }

        const createProductElement = function(productname, title, features, button) {
            let product = createElem('label', 'ab-test-paywall-product', false);
            //product.setAttribute('for', 'radio_'+productname);
            let check = createElem('input', 'ab-radio', false);
            check.type = 'radio';
            check.name = 'product';
            //check.id = 'radio_'+productname;
            if(title.includes('HS Digi+')) {
                check.checked = 'checked';
            }
            let productcontent = createElem('div', 'ab-product-content', false);
            let producttitle = createElem('p', 'ab-product-title', title);
            let producttext = createElem('p', 'ab-product-text', features);

            product.appendChild(check);
            productcontent.appendChild(producttitle);
            productcontent.appendChild(producttext);
            product.appendChild(productcontent);
            check.onchange = function(e) {
                //sendGAEvent('click product ' + productname);
                changeButtonUrlAndText(button, productname);
            }
            return product;
        }

        const changeButtonUrlAndText = function (button, pos) {          
            let urlParams = false;
            let pagePath = false;

            if(pos === 'Digi') {
              pagePath = miniPath;
              urlParams = {
                embedded: null,
                aid: miniAID,
                ref: 'maksumuuri_kova_saannot',
                showPaymentPeriodList: null,
                offer: 3,
                variant: null
              }

              button.innerText = 'Tutustu HS Digi 2 kk 0 €';
            }
            else {
                pagePath = digiPath;
                urlParams = {
                  embedded: null,
                  aid: digiAID,
                  ref: 'maksumuuri_kova_saannot',
                  showPaymentPeriodList: null,
                  offer: null,
                  variant: null
                }
                
                button.innerText = 'Tutustu HS Digi+ 2 kk 0 €';
            }
          
            let url = new URL(button.href);
            // Update search params
            if (urlParams) {
              Object.keys(urlParams).forEach(function (key) {
                if (urlParams[key] === null) {
                  url.searchParams.delete(key)
                } else if (urlParams[key] !== undefined) {
                  url.searchParams.set(key, urlParams[key])
                }
              })
            }
            // Update path
            if (pagePath) {
                url.pathname = pagePath;
            }
            button.href = url.toString();
            button.setAttribute('data-product-name', pos);
            button.onclick = function (e) {
                sendGAEvent('click subscribe ' + pos + ' at ' + variantId)
            }
            return button;
        } 

        const insertStyle = function(containerdiv) {
            let style = `
                    :root {
                        --main-color: #27818F; /*#41a492;*/
                        --underline-color: #787878;
                        --line-color: #E9EAED;
                    }
                        
                    .ab-test-paywall-container {
                        display: flex;
                        flex-direction: column;
                        box-shadow: 0px 4px 8px 4px rgba(0, 0, 0, 0.2);
                        border: solid 0.8px rgba(0, 0, 0, 0.05);
                        background-color: #fff;
                        border-radius: 8px;
                        width: 100%;
                        max-width: 400px;
                        padding: 16px;
                    }

                    .ab-test-paywall-container .ab-test-hard-paywall-title, 
                    .ab-test-paywall-container .ab-test-archived-paywall-title {
                        font-size: 26px;
                        margin-bottom: 20px;
                        text-align: center;
                    }

                    .ab-test-paywall-product {
                        display: flex;
                        flex-direction: row;
                        align-items: baseline;
                        font-size: 16px;
                        font-family: 'Helsingin', Arial, sans-serif;
                        margin: 0 auto;
                        border-top: 1px solid var(--line-color);
                        padding: 12px 0px;
                        cursor: pointer;
                        min-width: 240px;
                    }

                    .ab-test-paywall-product:last-of-type {
                        border-bottom: 1px solid var(--line-color);
                    }

                    .ab-test-paywall-product .ab-product-content {
                        display: flex;
                        flex-direction: column;
                        margin-left: 20px;
                        width: 240px;
                    }

                    .ab-test-paywall-product .ab-radio {
                        transform: scale(1.8);
                        accent-color: var(--main-color);
                        cursor: pointer;
                    }

                    @supports (-moz-appearance:none) {
                        .ab-test-paywall-product .ab-radio {
                            transform: scale(1.5);
                        }
                    }

                    .ab-test-paywall-product .ab-product-title {
                        font-weight: 500;
                    }

                    .ab-test-paywall-product .ab-product-title > span {
                        text-decoration: line-through;
                        font-size: 14px;
                        font-weight: 300;
                        color: #666;
                        float: right;
                        margin-top: 1px;
                    }

                    .ab-test-paywall-product .ab-product-text {
                        font-size: 14px;
                        margin-top: 8px;
                        color: #555;
                        text-align: left;
                    }

                    .ab-test-paywall-product .ab-product-text svg {
                        fill: #191919;
                        display: inline;
                        margin-right: 5px;
                        vertical-align: baseline;
                    }

                    .ab-test-paywall-additional-info {
                        font-size: 15px;
                        font-weight: 600;
                        margin-top: 16px;
                        line-height: 1.2;
                        text-align: center;
                    }

                    .ab-test-hard-paywall-subtitle, .ab-test-archived-paywall-subtitle {
                        font-size: 15px;
                        font-family: 'Helsingin', Arial, sans-serif;
                        margin-top: 12px;
                        margin-bottom: 0;
                        text-align: center;
                    }

                    .ab-test-hard-paywall-subscribe-button, .ab-test-archived-paywall-subscribe-button {
                        margin: 12px auto 4px;
                        width: 260px;
                        font-family: 'Helsingin', Arial, sans-serif;
                        font-size: 16px;
                    }

                    .ab-test-hard-paywall-subscribe-button:active, .ab-test-archived-paywall-subscribe-button:active {
                        margin: 12px auto 5px;
                        width: 258px;
                    }

                    .ab-test-hard-paywall-login-button, .ab-test-archived-paywall-login-button {
                        margin-top: 24px;
                        position: relative;
                        width: 240px;
                        text-decoration: none !important;
                        padding: 9px;
                    }

                    .ab-test-hard-paywall-offering, .ab-test-archived-paywall-offering {
                        font-weight: 400;
                        max-width: 480px;
                    }

                    /* dark mode support */
                    .sndp-dark .ab-test-paywall-container {
                        border: solid 1px rgba(255, 255, 255, 0.3);
                        background: #151515;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-text svg {
                        fill: #fff;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-title > span, .sndp-dark .ab-test-paywall-product .ab-product-text {
                        color: #ddd;
                    }
            `;
            
            if(document.location.pathname.indexOf('/visio/') > -1 ||
            document.location.pathname.indexOf('/teknologia/') > -1 ||
            document.location.pathname.indexOf('/talous/') > -1 ||
            document.location.pathname.indexOf('/autot/') > -1) {
            style += `	
                    .ab-test-paywall-grid .ab-grid-choose-button {
                        background: #b7384b;
                    }

                    .ab-test-paywall-product .ab-radio {
                        accent-color: #b7384b;
                    }

                    .ab-test-paywall-grid .ab-grid-choose-button:hover, .ab-test-paywall-grid .ab-grid-choose-button:active, .ab-test-paywall-grid .ab-grid-choose-button:focus {
                        background: #752f35;
                    }
                `;
            }
                        
            let styleSheet = document.createElement("style");
            styleSheet.type = "text/css";
            containerdiv.appendChild(styleSheet);
            styleSheet.innerText = style;
        };

        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-test-paywall-modified');
            let paywall = document.querySelector('.ab-test-hard-paywall, .ab-test-archived-paywall');
            let title = document.querySelector('.ab-test-hard-paywall-title, .ab-test-archived-paywall-title');
            let subtitle = document.querySelector('.ab-test-hard-paywall-subtitle, .ab-test-archived-paywall-subtitle');
            let hardButton = document.querySelector('.ab-test-hard-paywall-subscribe-button');
            let archivedButton = document.querySelector('.ab-test-archived-paywall-subscribe-button');
            let secondaryButton = document.querySelector('.ab-test-hard-paywall-secondary-subscribe-button, .ab-test-archived-paywall-secondary-subscribe-button');
            if(experimentExists) {
                //sendGAEvent('script failed, paywall already modified');
            } else if(title && (hardButton || archivedButton)) { 
                if((hardButton && hardButton.innerText.trim() === currentDefaultButtonTextOnHardPaywall) || (archivedButton && archivedButton.innerText.trim() === currentDefaultButtonTextOnArchivedPaywall)) { //actual changes here
                    let button = hardButton || archivedButton;
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
                    title.classList.add('ab-test-paywall-modified', namelower);

                    let containerdiv = createElem('div', 'ab-test-paywall-container', false);

                    button = changeButtonUrlAndText(button, 'Digi+');

                    if(commonDateUntil) {
                        let date = new Date();
                        date.setDate(date.getDate() + commonDateUntil);
                        let dd = date.getDate();
                        let mm = date.getMonth()+1;
                        let pvmSpan = createElem('span', 'ab-date-span', dd.toString() + '.' + mm.toString() + '. asti');
                        title.innerText = 'Lue maksutta ';
                        title.appendChild(pvmSpan);
                    }

                    let readingRightsForOneSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="2 2 32 32" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M18.3725 13.5C20.0293 13.5 21.3725 12.1569 21.3725 10.5C21.3725 8.84315 20.0293 7.5 18.3725 7.5C16.7156 7.5 15.3725 8.84315 15.3725 10.5C15.3725 12.1569 16.7156 13.5 18.3725 13.5ZM18.3725 16.5C21.6862 16.5 24.3725 13.8137 24.3725 10.5C24.3725 7.18629 21.6862 4.5 18.3725 4.5C15.0588 4.5 12.3725 7.18629 12.3725 10.5C12.3725 13.8137 15.0588 16.5 18.3725 16.5ZM18.3725 18C23.8903 18 27.2436 20.6846 28.948 23.6222C28.9709 23.6617 28.9918 23.7017 29.0107 23.7423C29.3011 24.1997 29.3328 24.7992 29.0421 25.3002C27.3377 28.2379 23.8903 31.1253 18.3725 31.1253C12.8547 31.1253 9.40724 28.2379 7.70281 25.3002C7.41216 24.7992 7.44389 24.1999 7.73416 23.7425C7.7531 23.7019 7.77402 23.6617 7.79695 23.6222C9.50137 20.6846 12.8547 18 18.3725 18ZM10.7754 24.5282C12.1114 26.3666 14.5065 28.1253 18.3725 28.1253C22.2385 28.1253 24.6335 26.3666 25.9696 24.5282C24.6675 22.6761 22.3285 21 18.3725 21C14.4164 21 12.0774 22.6761 10.7754 24.5282Z"></path></svg>';
                    let readingRightsForFourSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="13" viewBox="0 0 14 13" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.5809 3.16667C7.5809 4.63943 6.387 5.83333 4.91424 5.83333C3.44148 5.83333 2.24757 4.63943 2.24757 3.16667C2.24757 1.69391 3.44148 0.5 4.91424 0.5C6.387 0.5 7.5809 1.69391 7.5809 3.16667ZM6.24757 3.16667C6.24757 3.90305 5.65062 4.5 4.91424 4.5C4.17786 4.5 3.5809 3.90305 3.5809 3.16667C3.5809 2.43029 4.17786 1.83333 4.91424 1.83333C5.65062 1.83333 6.24757 2.43029 6.24757 3.16667Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.61447 8.99877C8.85695 7.69314 7.3666 6.5 4.91424 6.5C2.46188 6.5 0.97153 7.69314 0.214008 8.99877C0.20382 9.01633 0.194523 9.03416 0.186103 9.05221C0.0570957 9.2555 0.0429897 9.52189 0.17217 9.74454C0.929692 11.0502 2.46188 12.3334 4.91425 12.3334C7.36661 12.3334 8.8988 11.0502 9.65632 9.74454C9.78552 9.52186 9.77139 9.25543 9.64234 9.05214C9.63393 9.03411 9.62464 9.0163 9.61447 8.99877ZM4.91425 11.0001C3.19602 11.0001 2.13155 10.2185 1.53775 9.40141C2.11643 8.57826 3.15599 7.83333 4.91424 7.83333C6.67249 7.83333 7.71205 8.57827 8.29073 9.40142C7.69693 10.2185 6.63246 11.0001 4.91425 11.0001Z"></path><path d="M8.58091 5.83333C8.1137 5.83333 7.67455 5.71318 7.29267 5.50209C7.60603 5.183 7.85567 4.80114 8.021 4.37709C8.19125 4.45598 8.38094 4.5 8.58091 4.5C9.31729 4.5 9.91424 3.90305 9.91424 3.16667C9.91424 2.43029 9.31729 1.83333 8.58091 1.83333C8.38094 1.83333 8.19125 1.87736 8.021 1.95624C7.85567 1.5322 7.60603 1.15033 7.29267 0.831247C7.67455 0.620154 8.1137 0.5 8.58091 0.5C10.0537 0.5 11.2476 1.69391 11.2476 3.16667C11.2476 4.63943 10.0537 5.83333 8.58091 5.83333Z"></path><path d="M9.66834 10.8844C9.21539 11.4261 8.63188 11.9239 7.91194 12.3003C8.12684 12.322 8.34979 12.3334 8.58092 12.3334C11.0333 12.3334 12.5655 11.0502 13.323 9.74454C13.4522 9.52186 13.4381 9.25543 13.309 9.05214C13.3006 9.03411 13.2913 9.0163 13.2811 8.99877C12.5236 7.69314 11.0333 6.5 8.58091 6.5C8.36457 6.5 8.15572 6.50929 7.95419 6.52711C8.67207 6.90013 9.24931 7.39617 9.6959 7.94617C10.7985 8.18463 11.5135 8.77001 11.9574 9.40142C11.5006 10.0299 10.7654 10.6374 9.66834 10.8844Z"></path></svg>';
                    let facsimileSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="15" viewBox="0 0 16 15" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M15.0282 0.519266C14.9956 0.319292 14.822 0.166664 14.6128 0.166664H3.13458L3.06631 0.172173C2.86634 0.20479 2.71371 0.378338 2.71371 0.587534L2.71295 3.94837L0.838847 3.94897L0.768529 3.95481C0.562854 3.98937 0.408842 4.1729 0.41839 4.38847L0.818935 13.4318L0.847872 13.5654C1.0317 14.3071 1.55045 14.7823 2.27412 14.7823H13.6125L13.7284 14.7778C14.455 14.7212 15.0337 14.1365 15.0337 13.4132V0.587534L15.0282 0.519266ZM3.55469 1.0084H14.1912L14.192 13.4132L14.1868 13.4837C14.1491 13.7378 13.9103 13.9406 13.6125 13.9406H2.27412L2.18767 13.9352C1.90852 13.8994 1.72045 13.6867 1.65272 13.3339L1.27816 4.79011H2.71295L2.71371 12.0658L2.71922 12.1341C2.75184 12.334 2.92539 12.4867 3.13458 12.4867L3.20285 12.4812C3.40282 12.4485 3.55545 12.275 3.55545 12.0658L3.55469 1.0084Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.25632 2.46232H12.3172C12.5496 2.46232 12.7381 2.65075 12.7381 2.88319V7.47449C12.7381 7.70693 12.5496 7.89536 12.3172 7.89536H9.25632C9.02388 7.89536 8.83545 7.70693 8.83545 7.47449V2.88319C8.83545 2.65075 9.02388 2.46232 9.25632 2.46232ZM11.8963 7.05362V3.30406H9.67719V7.05362H11.8963Z"></path><path d="M7.34328 4.75797V5.59971H5.04763V4.75797H7.34328Z"></path><path d="M7.34328 2.46232V3.30406H5.04763V2.46232H7.34328Z"></path><path d="M7.34328 7.05362V7.89536H5.04763V7.05362H7.34328Z"></path><path d="M12.6998 9.34927V10.191H5.04763V9.34927H12.6998Z"></path><path d="M12.6998 11.6449V12.4867H5.04763V11.6449H12.6998Z"></path></svg>';

                    let product1 = createProductElement('Digi+', 'HS Digi+ 2 kk 0 € <span>(norm. 20,90 €/kk)</span>', readingRightsForFourSvg + 'Lukuoikeus neljälle &nbsp;' + facsimileSvg + 'Näköislehti', button);
                    let product2 = createProductElement('Digi', 'HS Digi 2 kk 0 € <span>(norm. 14,90 €/kk)<span>', readingRightsForOneSvg + 'Lukuoikeus yhdelle', button);
                    
                    subtitle.innerText = 'Voit irtisanoa tilauksen koska tahansa.';
                    subtitle.classList.remove('paywall__ingress');

                    if(secondaryButton) {
                        secondaryButton.style.display = 'none';
                        let loginLink = paywall.querySelector('.ab-test-hard-paywall-login-link');
                        if(loginLink) {
                            let parent = loginLink.parentElement;
                            parent.classList.remove('mt-16');
                            loginLink.classList.add('flex', 'items-center', 'justify-center', 'button', 'button--md', 'button--secondary', 'my-8', 'ab-test-hard-paywall-login-button');
                            loginLink.classList.remove('button-textlink-10');
                            loginLink.innerText = 'Olen jo tilaaja';
                            parent.appendChild(loginLink);
                        }
                    }

                    containerdiv.appendChild(title);
                    containerdiv.appendChild(product1);
                    containerdiv.appendChild(product2);
                    
                    if(cycloneDateUntil) {
                        let date = new Date();
                        date.setDate(date.getDate() + cycloneDateUntil);
                        let dd = date.getDate();
                        let mm = date.getMonth()+1;
                        let pvmText = dd.toString() + '.' + mm.toString() + '.';
                        let cycloneText = createElem('div', 'paywall__text-block ab-test-paywall-additional-info', 'Maksuttoman jakson jälkeen voit jatkaa tilausta -' + discountPercentage + ' % hinnalla ' + pvmText + ' asti.');
                        containerdiv.appendChild(cycloneText);
                    }

                    containerdiv.appendChild(button);
                    containerdiv.appendChild(subtitle);

                    insertStyle(containerdiv);
                    paywall.insertBefore(containerdiv, paywall.childNodes[1]); //insert as 2nd element on paywall after paywall indicator	
            
                    dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});

                    let hardPaywall = document.querySelector('.ab-test-hard-paywall-title')
                    let archivedPaywall = document.querySelector('.ab-test-archived-paywall-title');
                    if(hardPaywall) {
                        dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': 'change offer to cyclone at timanttimuuri', 'eventLabel': experimentName + ' ' + variantName});
                    }
                    else if(archivedPaywall) {
                        dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': 'change offer to cyclone at arkistomuuri', 'eventLabel': experimentName + ' ' + variantName});
                    }

                    if(feedTitle) {
                        let paywallOffering = document.querySelector('.ab-test-hard-paywall-offering');
                        if(paywallOffering) {
                            paywallOffering.innerText = feedTitle;
                        }
                    }
                    
                    if(requireCdx) {
                        cdx.confirm(true);
                    }
                    return true;
                }
                else {
                    sendGAEvent('script failed, primary button text unexpected');
                }
            } else {
                sendGAEvent('script failed, paywall html unexpected');
            }
        };

        doExperimentChanges();
    };
} catch(e) {
    console.log(e)

  let err = e
  let err_split = e.stack.split('\n')
  let err_line = false
  if (err_split[1]) {
    err_line = err_split[1].split('>:')
  }
  if (err_line[1]) {
    err = err_line[1]
  }
  sendGAEvent('script error: ' + e)
}
 },'js-cC5HrEjwIB6DIgcpLmzf-1739272204': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if (!requireCdx) { testing = true; }
const experimentId = 'HS25-36';
const variantId = 'C';
const experimentName = experimentId + ' Kovamuuri turbonappi';
const variantName = variantId + ' sykloni radios uusi 2kk';
let currentDefaultButtonTextOnHardPaywall = 'Tilaa HS Digi+ 1. kk 0 €'; //nykyisen napin teksti
let currentDefaultButtonTextOnArchivedPaywall = 'Lue 2 viikkoa maksutta'; //nykyisen napin teksti
const commonDateUntil = 60; //false or number of days
const miniDateUntil = 60;
const digiDateUntil = 60;
const cycloneDateUntil = 180;
const miniAID = 'GCGD5VW265RTH'; //HS Digi
const digiAID = 'GZ6NPB89MKN4H'; //HS Digi+
const miniPath = '/api/safe/v1/web/subscription-funnel/hs-mini-tutustu-v624';
const digiPath = '/api/safe/v1/web/subscription-funnel/hs-digi-tutustu-v624';
const feedTitle = 'Hesarin digitilauksella pääset lukemaan rajoituksetta tämän ja yli 400 uutta timanttiartikkelia kuukaudessa';
const defaultProduct = 'Digi+'; //which product is pre-selected

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    if(true) {
        //helper function to create any html element
        const createElem = function(tag, classes, text) {
            let elem = document.createElement(tag);
            if(classes) {
                //split classes by space
                classes = classes.split(' ');
                for(let i = 0; i < classes.length; i++) {
                    elem.classList.add(classes[i]);
                }
            }
            if(text) {
                elem.innerHTML = text;
            }
            return elem;
        }

        //helper function to create product element 
        const createProductElement = function(productname, title, features, button) {
            let product = createElem('label', 'ab-test-paywall-product', false);
            product.setAttribute('product', productname);
            if(productname === defaultProduct) { //this is the default option
                product.classList.add('selected'); //mark it selected
            }
            let container = createElem('div', 'ab-product-container', false);

            let check = createElem('input', 'ab-radio', false);
            check.type = 'radio';
            check.name = 'product';
            if(productname === defaultProduct) {
                check.checked = 'checked';
            }
            let productcontent = createElem('div', 'ab-product-content', false);
            let producttitle = createElem('p', 'ab-product-title', title);

            container.appendChild(check);
            productcontent.appendChild(producttitle);

            if(features) {
                let producttext = createElem('p', 'ab-product-text', features);
                productcontent.appendChild(producttext);
            }
            
            container.appendChild(productcontent);
            product.appendChild(container);
            check.onchange = function(e) {
                //sendGAEvent('click product ' + productname);
                changeButtonUrlAndText(button, productname);
            }
            return product;
        }

        //helper function to change button url and text
        const changeButtonUrlAndText = function (button, pos) {          
            let urlParams = false;
            let pagePath = false;
            //ab-test-hard-paywall-subtitle
            let cancelAnytime = 'Voit irtisanoa tilauksen koska tahansa.';
            let allProductElements = document.querySelectorAll('.ab-test-paywall-product');
            allProductElements.forEach(function (element) {
                element.classList.remove('selected');
                if(element.getAttribute('product') === pos) {
                    element.classList.add('selected');
                }
            });

            if(pos === 'Digi') {
              pagePath = miniPath;
              urlParams = {
                embedded: null,
                aid: miniAID,
                ref: 'maksumuuri_kova_eiot',
                showPaymentPeriodList: null,
                offer: 3,
                variant: null
              }

              button.innerHTML = 'Tilaa HS ' + pos + ' &nbsp; 2 kk 0 €';
              //let pvmSpan = calculateDays(60, ' asti');
              //document.querySelector('.ab-test-hard-paywall-title').innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
              //document.querySelector('.ab-test-hard-paywall-subtitle').innerText = cancelAnytime;
            }
            else if(pos === 'Digi+') {
                pagePath = digiPath;
                urlParams = {
                  embedded: null,
                  aid: digiAID,
                  ref: 'maksumuuri_kova_eiot',
                  showPaymentPeriodList: null,
                  offer: null,
                  variant: null
                }
  
                button.innerHTML = 'Tilaa HS ' + pos + ' &nbsp; 2 kk 0 €';
                //document.querySelector('.ab-test-hard-paywall-subtitle').innerText = cancelAnytime;
                //let pvmSpan = calculateDays(60, ' asti');
                //document.querySelector('.ab-test-hard-paywall-title').innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
            }
            else {  //sample?
                //shouldnt happen
            }
          
            let url = new URL(button.href);
            // Update search params
            if (urlParams) {
              Object.keys(urlParams).forEach(function (key) {
                if (urlParams[key] === null) {
                  url.searchParams.delete(key)
                } else if (urlParams[key] !== undefined) {
                  url.searchParams.set(key, urlParams[key])
                }
              })
            }
            // Update path
            if (pagePath) {
                url.pathname = pagePath;
            }
            button.href = url.toString();
            button.setAttribute('data-product-name', pos);
            button.onclick = function (e) {
                sendGAEvent('click subscribe ' + pos + ' at ' + variantId)
            }
            return button;
        }

        //helper function to calculate days d.m. 
        const calculateDays = function(d, suffix) {
            let date = new Date();
            date.setDate(date.getDate() + d);
            let dd = date.getDate();
            let mm = date.getMonth()+1;
            let pvmSpan = false;
            if(suffix) {
                pvmSpan = dd.toString() + '.' + mm.toString() + '. ' + suffix;
            }
            else {
                pvmSpan = dd.toString() + '.' + mm.toString() + '.'
            }
            return pvmSpan;
        }

        //helper function to insert style
        const insertStyle = function(containerdiv) {
            let style = `
                    :root {
                        --main-color: #191919;
                        --underline-color: #787878;
                        --line-color: #E9EAED;
                        --main-font: 'Helsingin', Arial, sans-serif;
                    }
                        
                    .ab-test-paywall-container {
                        display: flex;
                        flex-direction: column;
                        width: 100%;
                        max-width: calc(100% - 16px);
                    }

                    .ab-test-paywall-container .ab-test-hard-paywall-title, .ab-test-paywall-container .ab-test-archived-paywall-title {
                        font-size: 26px;
                        margin-bottom: 16px;
                        text-align: center;
                    }

                    .ab-test-paywall-product {
                        display: flex;
                        flex-direction: column;
                        align-items: baseline;
                        font-size: 16px;
                        font-family: var(--main-font);
                        margin: 0 auto;
                        border-top: 1px solid var(--line-color);
                        padding: 12px 0px;
                        cursor: pointer;
                        width: 100%;
                        border: 1px solid #000;
                        border-radius: 4px;
                        padding:0;
                        margin-bottom: 8px;
                        background: #F8F8F8;
                    }

                    .ab-test-paywall-product[product="Kaikki"] {
                        background: #FFF6E5;
                    }

                    .ab-product-container {
                        display: flex;
                        flex-direction: row;
                        align-items: baseline;
                        padding: 12px 12px 8px;
                        width: 100%;
                    }

                    .ab-test-paywall-delimeter {
                        overflow: hidden;
                        margin-top: 0;
                        margin-bottom: 8px;

                        text-align: center;
                        font-family: var(--main-font);
                        font-size: 14px;
                        font-style: normal;
                        font-weight: 500;
                        line-height: normal;
                        letter-spacing: 0.36px;
                    }
                    
                    .ab-test-paywall-delimeter:before, .ab-test-paywall-delimeter:after {
                        background-color: #ccc;
                        content: "";
                        display: inline-block;
                        height: 0.5px;
                        position: relative;
                        vertical-align: middle;
                        width: 50%;
                    }

                    .ab-test-paywall-delimeter:before {
                        right: 8px;
                        margin-left: -50%;
                    }
    
                    .ab-test-paywall-delimeter:after {
                        left: 8px;
                        margin-right: -50%;
                    }

                    .ab-test-paywall-product .ab-product-content {
                        display: flex;
                        flex-direction: column;
                        margin-left: 12px;
                        width: 100%;
                    }

                    .ab-test-paywall-product .ab-radio {
                        transform: scale(1.6);
                        accent-color: var(--main-color);
                        cursor: pointer;
                    }

                    @supports (-moz-appearance:none) {
                        .ab-test-paywall-product .ab-radio {
                            transform: scale(1.5);
                        }
                    }

                    .ab-test-paywall-product .ab-product-title {
                        font-weight: 600;
                        padding-bottom: 4px;
                        font-size: 14px;
                    }

                    .ab-test-paywall-product .ab-product-title > span {
                        font-size: 14px;
                        font-weight: 600;
                        float: right;
                        letter-spacing: -0.5px;
                    }

                    .ab-test-paywall-product .ab-product-title > span > span {
                        font-size: 12px;
                        font-weight: 300;
                        color: #666;
                        text-decoration: line-through;
                        padding-left: 4px;
                        letter-spacing: 0;
                    }

                    .ab-test-paywall-product .ab-product-text {
                        font-size: 12px;
                        margin-top: 2px;
                        color: #555;
                        text-align: left;
                    }

                    .ab-test-paywall-product .ab-product-text > span {
                        margin-right: 8px;
                    }

                    .ab-test-paywall-product .ab-product-text svg {
                        fill: #191919;
                        display: inline;
                        margin-right: 2px;
                        vertical-align: baseline;
                        height: 10px;
                    }

                    .ab-test-paywall-additional-info {
                        font-family: var(--main-font);
                        font-size: 15px;
                        font-weight: 600;
                        line-height: 1.2;
                        text-align: center;
                        margin-bottom: 16px;
                    }

                    .ab-test-hard-paywall-subtitle, .ab-test-archived-paywall-subtitle {
                        font-size: 15px;
                        font-family: var(--main-font);
                        margin-top: 12px;
                        margin-bottom: 32px;
                        text-align: center;
                    }

                    .ab-test-hard-paywall-subscribe-button, .ab-test-archived-paywall-subscribe-button {
                        margin: 12px auto 4px;
                        width: 260px;
                        font-family: var(--main-font);
                        font-size: 16px;
                        font-weight: 600;
                    }

                    .ab-test-hard-paywall-subscribe-button:active, .ab-test-archived-paywall-subscribe-button:active {
                        margin: 12px auto 5px;
                        width: 258px;
                    }

                    .ab-test-hard-paywall-login-link, .ab-test-archived-paywall-login-link {
                        text-decoration: underline;
                        font-size: 14px;   
                        margin-bottom: 24px;
                        margin-top: 16px;
                        text-align: center;
                    }

                    .ab-test-archived-paywall-login-link {
                        margin-top: 0;
                        margin-bottom: 36px;
                    }

                    .ab-test-hard-paywall-offering, .ab-test-archived-paywall-offering {
                        max-width: 480px;
                    }

                    /* dark mode support */
                    .sndp-dark .ab-test-paywall-product {
                        border: 1px solid #ccc;
                        background: #262626;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-text svg {
                        fill: #AFAFAF;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-title > span, .sndp-dark .ab-test-paywall-product .ab-product-text {
                        color: #fff;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-title > span > span {
                        color: #AFAFAF;
                    }
                    
                    @media (min-width: 380px) {
                        .ab-test-paywall-container {
                            max-width: 350px;
                        }

                        .ab-test-paywall-product .ab-product-text {
                            font-size: 14px;
                            margin-top: 4px;
                        }

                        .ab-test-paywall-product .ab-product-title, .ab-test-paywall-product .ab-product-title > span {
                            font-size: 16px;
                            letter-spacing: 0;
                        }

                        .ab-test-paywall-product .ab-product-title > span > span {
                            font-size: 14px;
                            padding-left: 8px;
                        }

                        .ab-test-paywall-product .ab-product-content {
                            margin-left: 16px;
                        }

                        .ab-test-paywall-product .ab-product-text svg {
                            margin-right: 4px;
                            height: 12px;
                        }

                        .ab-test-paywall-product .ab-product-text > span {
                            margin-right: 12px;
                        }
                    }
            `;
            
            if(document.location.pathname.indexOf('/visio/') > -1 ||
            document.location.pathname.indexOf('/teknologia/') > -1 ||
            document.location.pathname.indexOf('/talous/') > -1 ||
            document.location.pathname.indexOf('/autot/') > -1) {
            style += `	
                    .ab-test-paywall-product {
                        background: #F5E6DC;
                    }
            
                    .ab-test-paywall-grid .ab-grid-choose-button {
                        background: #b7384b;
                    }

                    .ab-test-paywall-product .ab-radio {
                        accent-color: #b7384b;
                    }

                    .ab-test-paywall-grid .ab-grid-choose-button:hover, .ab-test-paywall-grid .ab-grid-choose-button:active, .ab-test-paywall-grid .ab-grid-choose-button:focus {
                        background: #752f35;
                    }
                `;
            }
                        
            let styleSheet = document.createElement("style");
            styleSheet.type = "text/css";
            containerdiv.appendChild(styleSheet);
            styleSheet.innerText = style;
        };

        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-test-paywall-modified');
            let paywall = document.querySelector('.ab-test-hard-paywall, .ab-test-archived-paywall');
            let title = document.querySelector('.ab-test-hard-paywall-title, .ab-test-archived-paywall-title');
            let subtitle = document.querySelector('.ab-test-hard-paywall-subtitle, .ab-test-archived-paywall-subtitle');
            let hardButton = document.querySelector('.ab-test-hard-paywall-subscribe-button');
            let archivedButton = document.querySelector('.ab-test-archived-paywall-subscribe-button');
            let secondaryButton = document.querySelector('.ab-test-hard-paywall-secondary-subscribe-button, .ab-test-archived-paywall-secondary-subscribe-button');
            if(experimentExists) {
                //sendGAEvent('script failed, paywall already modified');
            } else if(title && (hardButton || archivedButton)) { 
                if((hardButton && hardButton.innerText.trim() === currentDefaultButtonTextOnHardPaywall) || (archivedButton && archivedButton.innerText.trim() === currentDefaultButtonTextOnArchivedPaywall)) { //actual changes here
                    let button = hardButton || archivedButton;
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
                    title.classList.add('ab-test-paywall-modified', namelower);

                    if(secondaryButton) { //katso muut tarjoukset button on HS
                        secondaryButton.style.display = 'none';
                    }

                    //create container div - which contains all the elements
                    let containerdiv = createElem('div', 'ab-test-paywall-container', false);

                    let loginLink = paywall.querySelector('.ab-test-hard-paywall-login-link, .ab-test-archived-paywall-login-link');
                    if(loginLink) {
                        let logo = paywall.querySelector('.ab-test-hard-paywall-logo');
                        if(logo) {
                            let paywallIndicator = paywall.querySelector('.ab-test-hard-paywall-logo').parentNode;
                            if(paywallIndicator) {
                                paywallIndicator.insertBefore(loginLink, paywallIndicator.childNodes[2]); //insert in between paywall indicators
                            }
                        }
                        else {
                            containerdiv.appendChild(loginLink);
                        }
                    }

                    //change subscribe button url and text
                    button = changeButtonUrlAndText(button, 'Digi+');

                    //main date until in title
                    if(commonDateUntil) {
                        let pvmSpan = calculateDays(commonDateUntil, 'asti');
                        title.innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
                    }

                    //let checkIconSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14" fill="none"><path d="M6.05367 8.43079L4.50494 6.88207C4.41264 6.78976 4.29662 6.74254 4.15687 6.74041C4.01713 6.73826 3.89897 6.78548 3.80239 6.88207C3.70581 6.97865 3.65752 7.09574 3.65752 7.23334C3.65752 7.37094 3.70581 7.48803 3.80239 7.5846L5.63187 9.41409C5.75238 9.5346 5.89298 9.59486 6.05367 9.59486C6.21435 9.59486 6.35494 9.5346 6.47545 9.41409L10.1844 5.70512C10.2767 5.61282 10.324 5.4968 10.3261 5.35705C10.3282 5.21731 10.281 5.09915 10.1844 5.00257C10.0878 4.90599 9.97076 4.8577 9.83316 4.8577C9.69556 4.8577 9.57847 4.90599 9.48189 5.00257L6.05367 8.43079ZM7.00094 13.3333C6.12498 13.3333 5.30163 13.1671 4.53087 12.8347C3.7601 12.5022 3.08965 12.051 2.5195 11.4812C1.94935 10.9113 1.49798 10.2411 1.16539 9.47067C0.832798 8.70026 0.666504 7.87708 0.666504 7.00112C0.666504 6.12517 0.832726 5.30181 1.16517 4.53105C1.49762 3.76029 1.94878 3.08983 2.51867 2.51969C3.08857 1.94953 3.75873 1.49816 4.52915 1.16557C5.29957 0.832982 6.12275 0.666687 6.9987 0.666687C7.87466 0.666687 8.69802 0.83291 9.46877 1.16535C10.2395 1.4978 10.91 1.94897 11.4801 2.51885C12.0503 3.08875 12.5017 3.75892 12.8343 4.52934C13.1668 5.29975 13.3331 6.12293 13.3331 6.99889C13.3331 7.87484 13.1669 8.6982 12.8345 9.46895C12.502 10.2397 12.0509 10.9102 11.481 11.4803C10.9111 12.0505 10.2409 12.5019 9.47049 12.8344C8.70008 13.167 7.87689 13.3333 7.00094 13.3333ZM6.99982 12.3333C8.48871 12.3333 9.74982 11.8167 10.7832 10.7833C11.8165 9.75001 12.3332 8.48889 12.3332 7C12.3332 5.51112 11.8165 4.25 10.7832 3.21667C9.74982 2.18334 8.48871 1.66667 6.99982 1.66667C5.51093 1.66667 4.24982 2.18334 3.21649 3.21667C2.18315 4.25 1.66649 5.51112 1.66649 7C1.66649 8.48889 2.18315 9.75001 3.21649 10.7833C4.24982 11.8167 5.51093 12.3333 6.99982 12.3333Z" fill="#191919"/></svg>';
                    let readingRightsForOneSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="2 2 32 32" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M18.3725 13.5C20.0293 13.5 21.3725 12.1569 21.3725 10.5C21.3725 8.84315 20.0293 7.5 18.3725 7.5C16.7156 7.5 15.3725 8.84315 15.3725 10.5C15.3725 12.1569 16.7156 13.5 18.3725 13.5ZM18.3725 16.5C21.6862 16.5 24.3725 13.8137 24.3725 10.5C24.3725 7.18629 21.6862 4.5 18.3725 4.5C15.0588 4.5 12.3725 7.18629 12.3725 10.5C12.3725 13.8137 15.0588 16.5 18.3725 16.5ZM18.3725 18C23.8903 18 27.2436 20.6846 28.948 23.6222C28.9709 23.6617 28.9918 23.7017 29.0107 23.7423C29.3011 24.1997 29.3328 24.7992 29.0421 25.3002C27.3377 28.2379 23.8903 31.1253 18.3725 31.1253C12.8547 31.1253 9.40724 28.2379 7.70281 25.3002C7.41216 24.7992 7.44389 24.1999 7.73416 23.7425C7.7531 23.7019 7.77402 23.6617 7.79695 23.6222C9.50137 20.6846 12.8547 18 18.3725 18ZM10.7754 24.5282C12.1114 26.3666 14.5065 28.1253 18.3725 28.1253C22.2385 28.1253 24.6335 26.3666 25.9696 24.5282C24.6675 22.6761 22.3285 21 18.3725 21C14.4164 21 12.0774 22.6761 10.7754 24.5282Z"></path></svg>';
                    let readingRightsForFourSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="13" viewBox="0 0 14 13" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.5809 3.16667C7.5809 4.63943 6.387 5.83333 4.91424 5.83333C3.44148 5.83333 2.24757 4.63943 2.24757 3.16667C2.24757 1.69391 3.44148 0.5 4.91424 0.5C6.387 0.5 7.5809 1.69391 7.5809 3.16667ZM6.24757 3.16667C6.24757 3.90305 5.65062 4.5 4.91424 4.5C4.17786 4.5 3.5809 3.90305 3.5809 3.16667C3.5809 2.43029 4.17786 1.83333 4.91424 1.83333C5.65062 1.83333 6.24757 2.43029 6.24757 3.16667Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.61447 8.99877C8.85695 7.69314 7.3666 6.5 4.91424 6.5C2.46188 6.5 0.97153 7.69314 0.214008 8.99877C0.20382 9.01633 0.194523 9.03416 0.186103 9.05221C0.0570957 9.2555 0.0429897 9.52189 0.17217 9.74454C0.929692 11.0502 2.46188 12.3334 4.91425 12.3334C7.36661 12.3334 8.8988 11.0502 9.65632 9.74454C9.78552 9.52186 9.77139 9.25543 9.64234 9.05214C9.63393 9.03411 9.62464 9.0163 9.61447 8.99877ZM4.91425 11.0001C3.19602 11.0001 2.13155 10.2185 1.53775 9.40141C2.11643 8.57826 3.15599 7.83333 4.91424 7.83333C6.67249 7.83333 7.71205 8.57827 8.29073 9.40142C7.69693 10.2185 6.63246 11.0001 4.91425 11.0001Z"></path><path d="M8.58091 5.83333C8.1137 5.83333 7.67455 5.71318 7.29267 5.50209C7.60603 5.183 7.85567 4.80114 8.021 4.37709C8.19125 4.45598 8.38094 4.5 8.58091 4.5C9.31729 4.5 9.91424 3.90305 9.91424 3.16667C9.91424 2.43029 9.31729 1.83333 8.58091 1.83333C8.38094 1.83333 8.19125 1.87736 8.021 1.95624C7.85567 1.5322 7.60603 1.15033 7.29267 0.831247C7.67455 0.620154 8.1137 0.5 8.58091 0.5C10.0537 0.5 11.2476 1.69391 11.2476 3.16667C11.2476 4.63943 10.0537 5.83333 8.58091 5.83333Z"></path><path d="M9.66834 10.8844C9.21539 11.4261 8.63188 11.9239 7.91194 12.3003C8.12684 12.322 8.34979 12.3334 8.58092 12.3334C11.0333 12.3334 12.5655 11.0502 13.323 9.74454C13.4522 9.52186 13.4381 9.25543 13.309 9.05214C13.3006 9.03411 13.2913 9.0163 13.2811 8.99877C12.5236 7.69314 11.0333 6.5 8.58091 6.5C8.36457 6.5 8.15572 6.50929 7.95419 6.52711C8.67207 6.90013 9.24931 7.39617 9.6959 7.94617C10.7985 8.18463 11.5135 8.77001 11.9574 9.40142C11.5006 10.0299 10.7654 10.6374 9.66834 10.8844Z"></path></svg>';
                    let facsimileSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="15" viewBox="0 0 16 15" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M15.0282 0.519266C14.9956 0.319292 14.822 0.166664 14.6128 0.166664H3.13458L3.06631 0.172173C2.86634 0.20479 2.71371 0.378338 2.71371 0.587534L2.71295 3.94837L0.838847 3.94897L0.768529 3.95481C0.562854 3.98937 0.408842 4.1729 0.41839 4.38847L0.818935 13.4318L0.847872 13.5654C1.0317 14.3071 1.55045 14.7823 2.27412 14.7823H13.6125L13.7284 14.7778C14.455 14.7212 15.0337 14.1365 15.0337 13.4132V0.587534L15.0282 0.519266ZM3.55469 1.0084H14.1912L14.192 13.4132L14.1868 13.4837C14.1491 13.7378 13.9103 13.9406 13.6125 13.9406H2.27412L2.18767 13.9352C1.90852 13.8994 1.72045 13.6867 1.65272 13.3339L1.27816 4.79011H2.71295L2.71371 12.0658L2.71922 12.1341C2.75184 12.334 2.92539 12.4867 3.13458 12.4867L3.20285 12.4812C3.40282 12.4485 3.55545 12.275 3.55545 12.0658L3.55469 1.0084Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.25632 2.46232H12.3172C12.5496 2.46232 12.7381 2.65075 12.7381 2.88319V7.47449C12.7381 7.70693 12.5496 7.89536 12.3172 7.89536H9.25632C9.02388 7.89536 8.83545 7.70693 8.83545 7.47449V2.88319C8.83545 2.65075 9.02388 2.46232 9.25632 2.46232ZM11.8963 7.05362V3.30406H9.67719V7.05362H11.8963Z"></path><path d="M7.34328 4.75797V5.59971H5.04763V4.75797H7.34328Z"></path><path d="M7.34328 2.46232V3.30406H5.04763V2.46232H7.34328Z"></path><path d="M7.34328 7.05362V7.89536H5.04763V7.05362H7.34328Z"></path><path d="M12.6998 9.34927V10.191H5.04763V9.34927H12.6998Z"></path><path d="M12.6998 11.6449V12.4867H5.04763V11.6449H12.6998Z"></path></svg>';

                    let product1 = createProductElement('Digi+', 'HS Digi+ <span>2 kk 0 € <span>(norm. 20,90 €/kk)</span></span>', readingRightsForFourSvg + '<span>Lukuoikeus neljälle</span> ' + facsimileSvg + '<span>Näköislehti</span>', button);
                    let product2 = createProductElement('Digi', 'HS Digi <span>2 kk 0 € <span>(norm. 14,90 €/kk)<span></span>', readingRightsForOneSvg + '<span>Lukuoikeus yhdelle</span>', button);
                    
                    subtitle.innerText = 'Voit irtisanoa tilauksen koska tahansa.';
                    subtitle.classList.remove('paywall__ingress');

                    //append elements to container one by one
                    containerdiv.appendChild(title);
                    
                    //delimeter element with TAI and border
                    /*let delimeter = createElem('div', 'ab-test-paywall-delimeter', '<span>TAI</span>');
                    containerdiv.appendChild(delimeter);*/

                    if(cycloneDateUntil) { //cyclone subtitle
                        let pvmSpan = calculateDays(cycloneDateUntil, 'asti');
                        let cycloneText = createElem('div', 'paywall__text-block ab-test-paywall-additional-info', 'Maksuttoman jakson jälkeen voit jatkaa tilausta -40 % hinnalla ' + pvmSpan);
                        containerdiv.appendChild(cycloneText);
                    }
                    
                    containerdiv.appendChild(product1);
                    containerdiv.appendChild(product2);

                    containerdiv.appendChild(button);
                    containerdiv.appendChild(subtitle);

                    insertStyle(containerdiv);
                    paywall.insertBefore(containerdiv, paywall.childNodes[1]); //insert as 2nd element on paywall after paywall indicator	
            
                    dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
                    
                    let hardPaywall = document.querySelector('.ab-test-hard-paywall-title')
                    let archivedPaywall = document.querySelector('.ab-test-archived-paywall-title');
                    if(hardPaywall) {
                        dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': 'change offer to cyclone at timanttimuuri', 'eventLabel': experimentName + ' ' + variantName});
                    }
                    else if(archivedPaywall) {
                        dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': 'change offer to cyclone at arkistomuuri', 'eventLabel': experimentName + ' ' + variantName});
                    }

                    if(feedTitle) { //rss feed under paywall element and this is the title of that feed
                        let paywallOffering = document.querySelector('.ab-test-hard-paywall-offering');
                        if(paywallOffering) {
                            paywallOffering.innerText = feedTitle;
                        }
                    }
                    
                    if(requireCdx) {
                        cdx.confirm(true);
                    }
                    return true;
                }
                else {
                    sendGAEvent('script failed, primary button text unexpected');
                }
            } else {
                sendGAEvent('script failed, paywall html unexpected');
            }
        };

        doExperimentChanges();
    };
} catch(e) {
    console.log(e)

  let err = e
  let err_split = e.stack.split('\n')
  let err_line = false
  if (err_split[1]) {
    err_line = err_split[1].split('>:')
  }
  if (err_line[1]) {
    err = err_line[1]
  }
  sendGAEvent('script error: ' + err)
}
 },'js-WzEdgyKyh8OFgTnwCfE0-1738660508': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if (!requireCdx) { testing = true; }
const experimentId = 'HS25-37';
const variantId = 'A';
const experimentName = experimentId + ' Timanttimuuri ei-ot';
const variantName = variantId + ' control';
let currentDefaultButtonText = 'Tilaa HS Digi+ 1. kk 0 €'; //nykyisen napin teksti
 //currentDefaultButtonText = 'Lue 2 viikkoa maksutta'; //nykyisen napin teksti
const paywallType = 'hard'; // hard or archived
const newAID = 'GBGT8CB9YKZUR';
const pagePath = false;
const feedTitle = 'Hesarin digitilauksella pääset lukemaan rajoituksetta tämän ja yli 400 uutta timanttiartikkelia kuukaudessa';

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    if(true) {       
        const changeButtonUrlAndText = function(button) {
            let urlParams = {
                'embedded': null,
                'offer': null,
                'aid': newAID,
                'ref': null,
                'showPaymentPeriodList': null,
                'variant': null
            };

            let url = new URL(button.href);
            // Update search params
            if (urlParams) {
                Object.keys(urlParams).forEach(function(key) {
                    if (urlParams[key] === null) {
                        url.searchParams.delete(key);
                    } else if (urlParams[key] !== undefined) {
                        url.searchParams.set(key, urlParams[key]);
                    }
                });
            }
            // Update path
            if (pagePath) {
                url.pathname = pagePath;
            }
            button.href = url.toString();
            return button;
        };
    
        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-test-paywall-modified');
            let title = document.querySelector('[data-ab="' + paywallType + '-paywall-title"]');
            let subtitle = document.querySelector('[data-ab="' + paywallType + '-paywall-subtitle"]');
            let button = document.querySelector('[data-ab="' + paywallType + '-paywall-subscribe-button"]');
            let secondaryButton = document.querySelector('[data-ab="' + paywallType + '-paywall-secondary-subscribe-button"]');
            if(experimentExists) {
                sendGAEvent('script failed, paywall already modified');
            } else if(title && button) { 
                if(button.innerText.trim() === currentDefaultButtonText) { //actual changes here
                    button = changeButtonUrlAndText(button);
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
                    
                    title.classList.add('ab-test-paywall-modified', namelower);
            
                    dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
                    //dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': 'change offer to sample at timanttimuuri', 'eventLabel': experimentName + ' ' + variantName});
                    
                    if(feedTitle) {
                        let paywallOffering = document.querySelector('[data-ab="' + paywallType + '-paywall-offering"]');
                        if(paywallOffering) {
                            paywallOffering.innerText = feedTitle;
                        }
                    }

                    if(requireCdx) {
                        cdx.confirm(true);
                    }
                    return true;
                }
                else {
                    sendGAEvent('script failed, primary button text unexpected');
                }
            } else {
                sendGAEvent('script failed, paywall html unexpected');
            }
        };

        doExperimentChanges();
    }
} catch(err) {   
    sendGAEvent('script error: ' + err);
}
 },'js-LAiIl91JykA4P4gEKCPI-1738660508': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if (!requireCdx) { testing = true; }
const experimentId = 'HS25-37';
const variantId = 'B';
const experimentName = experimentId + ' Timanttimuuri ei-ot';
const variantName = variantId + ' sample';
let currentDefaultButtonText = 'Tilaa HS Digi+ 1. kk 0 €'; //nykyisen napin teksti
 //currentDefaultButtonText = 'Lue 2 viikkoa maksutta'; //nykyisen napin teksti
const paywallType = 'hard'; // hard or archived
const newAID = 'GM9H298X5RVX4';
const feedTitle = 'Hesarin digitilauksella pääset lukemaan rajoituksetta tämän ja yli 400 uutta timanttiartikkelia kuukaudessa';
const newDateUntil = 14; //sample
const newButtonText = 'Lue 2 viikkoa maksutta'; //sample
let pagePath = '/shopping-ui/sample';

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    if(true) {
        const createElem = function(tag, classes, text) {
            let elem = document.createElement(tag);
            if(classes) {
                //split classes by space
                classes = classes.split(' ');
                for(let i = 0; i < classes.length; i++) {
                    elem.classList.add(classes[i]);
                }
            }
            if(text) {
                elem.innerHTML = text;
            }
            return elem;
        }

        //helper function to replace text in correct child node
        function replaceText(node, newText) {
            if (node.nodeType === Node.TEXT_NODE) {
                node.nodeValue = newText;
            } else {
                node.childNodes.forEach((child) => replaceText(child, newText));  
            }
        }
        
        const changeButtonUrlAndText = function(button) {
            let urlParams = {
                'embedded': null,
                'offer': null,
                'aid': newAID,
                'ref': null,
                'showPaymentPeriodList': null,
                'variant': null
            };

            let url = new URL(button.href);
            // Update search params
            if (urlParams) {
                Object.keys(urlParams).forEach(function(key) {
                    if (urlParams[key] === null) {
                        url.searchParams.delete(key);
                    } else if (urlParams[key] !== undefined) {
                        url.searchParams.set(key, urlParams[key]);
                    }
                });
            }
            // Update path
            if (pagePath) {
                url.pathname = pagePath;
            }
            button.href = url.toString();
           
            replaceText(button, newButtonText); //finds the child text node and replaces it
            
            return button;
        };
    
        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-test-paywall-modified');
            let title = document.querySelector('[data-ab="' + paywallType + '-paywall-title"]');
            let subtitle = document.querySelector('[data-ab="' + paywallType + '-paywall-subtitle"]');
            let button = document.querySelector('[data-ab="' + paywallType + '-paywall-subscribe-button"]');
            let secondaryButton = document.querySelector('[data-ab="' + paywallType + '-paywall-secondary-subscribe-button"]');
            if(experimentExists) {
                sendGAEvent('script failed, paywall already modified');
            } else if(title && button) { 
                if(button.innerText.trim() === currentDefaultButtonText) { //actual changes here
                    button = changeButtonUrlAndText(button);
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;

                    subtitle.innerText = 'Kahden viikon tutustumisjakso päättyy automaattisesti.';
                    
                    title.classList.add('ab-test-paywall-modified', namelower);
                    if(newDateUntil) {
                        let date = new Date();
                        date.setDate(date.getDate() + newDateUntil);
                        let dd = date.getDate();
                        let mm = date.getMonth()+1;
                        let pvmSpan = createElem('span', 'ab-date-span', dd.toString() + '.' + mm.toString() + '. asti');
                        title.innerText = 'Lue maksutta ';
                        title.appendChild(pvmSpan);
                    }

                    secondaryButton.classList.add('ab-test-paywall-modified', namelower);
                    secondaryButton.href = 'https://kampanjat.hs.fi/tilaa/?ref=kovamuuri';
            
                    dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
                    dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': 'change offer to sample at timanttimuuri', 'eventLabel': experimentName + ' ' + variantName});
                    
                    if(feedTitle) {
                        let paywallOffering = document.querySelector('[data-ab="' + paywallType + '-paywall-offering"]');
                        if(paywallOffering) {
                            paywallOffering.innerText = feedTitle;
                        }
                    }

                    if(requireCdx) {
                        cdx.confirm(true);
                    }
                    return true;
                }
                else {
                    sendGAEvent('script failed, primary button text unexpected');
                }
            } else {
                sendGAEvent('script failed, paywall html unexpected');
            }
        };

        doExperimentChanges();
    }
} catch(err) {   
    sendGAEvent('script error: ' + err);
}
 },'js-CuYBcurQuiPkaSmhUNKd-1740149250': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if (!requireCdx) { testing = true; }
const experimentId = 'HS25-37';
const variantId = 'C';
const experimentName = experimentId + ' Timanttimuuri ei-ot';
const variantName = variantId + ' radios sykloni and sample';
let currentDefaultButtonText = 'Tilaa HS Digi+ 1. kk 0 €'; //nykyisen napin teksti
 //currentDefaultButtonText = 'Lue 2 viikkoa maksutta'; //nykyisen napin teksti
const paywallType = 'hard'; // hard or archived
const commonDateUntil = 60; //false or number of days
const miniDateUntil = 60;
const digiDateUntil = 60;
const cycloneDateUntil = 180;
const miniAID = 'GNHRFO5M3Z3ZH'; //HS Digi
const digiAID = 'GIRGLZII8RB4G'; //HS Digi+
const miniPath = '/api/safe/v1/web/subscription-funnel/hs-mini-tutustu-v624';
const digiPath = '/api/safe/v1/web/subscription-funnel/hs-digi-tutustu-v624';
const samplePath = '/shopping-ui/sample';
const sampleAID = 'GFGQSTSB5LBJH';
const showProductFeatures = true;
const feedTitle = 'Hesarin digitilauksella pääset lukemaan rajoituksetta tämän ja yli 400 uutta timanttiartikkelia kuukaudessa';

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    if(true) {  
        //helper function to create any html element
        const createElem = function(tag, classes, text) {
            let elem = document.createElement(tag);
            if(classes) {
                //split classes by space
                classes = classes.split(' ');
                for(let i = 0; i < classes.length; i++) {
                    elem.classList.add(classes[i]);
                }
            }
            if(text) {
                elem.innerHTML = text;
            }
            return elem;
        }

        //helper function to create product element 
        const createProductElement = function(productname, title, features, button) {
            let product = createElem('label', 'ab-test-paywall-product', false);
            product.setAttribute('product', productname);
            if(productname === 'Digi+') { //this is the default option
                product.classList.add('selected'); //mark it selected
            }
            let check = createElem('input', 'ab-radio', false);
            check.type = 'radio';
            check.name = 'product';
            //check.id = 'radio_'+productname;  
            if(productname === 'Digi+') {
                check.checked = 'checked';
            }
            let productcontent = createElem('div', 'ab-product-content', false);
            let producttitle = createElem('p', 'ab-product-title', title);

            product.appendChild(check);
            productcontent.appendChild(producttitle);

            if(features) {
                let producttext = createElem('p', 'ab-product-text', features);
                productcontent.appendChild(producttext);
            }
            
            product.appendChild(productcontent);
            check.onchange = function(e) {
                //sendGAEvent('click product ' + productname);
                changeButtonUrlAndText(button, productname);
            }
            return product;
        }

        //helper function to change button url and text
        const changeButtonUrlAndText = function (button, pos) {          
            let urlParams = false;
            let pagePath = false;
            //ab-test-hard-paywall-subtitle
            let cancelAnytime = 'Voit irtisanoa tilauksen koska tahansa.';
            let allProductElements = document.querySelectorAll('.ab-test-paywall-product');
            allProductElements.forEach(function (element) {
                element.classList.remove('selected');
                if(element.getAttribute('product') === pos) {
                    element.classList.add('selected');
                }
            });

            if(pos === 'Digi') {
              pagePath = miniPath;
              urlParams = {
                embedded: null,
                aid: miniAID,
                ref: 'maksumuuri_kova_eiot',
                showPaymentPeriodList: null,
                offer: 3,
                variant: null
              }

              button.innerText = 'Tutustu HS ' + pos + ' 2 kk 0 €';
              document.querySelector('.ab-test-hard-paywall-subtitle').innerText = cancelAnytime;
            }
            else if(pos === 'Digi+') {
                pagePath = digiPath;
                urlParams = {
                  embedded: null,
                  aid: digiAID,
                  ref: 'maksumuuri_kova_eiot',
                  showPaymentPeriodList: null,
                  offer: null,
                  variant: null
                }
  
                button.innerText = 'Tutustu HS ' + pos + ' 2 kk 0 €';
                document.querySelector('.ab-test-hard-paywall-subtitle').innerText = cancelAnytime;
              }
            else {  //sample
                pagePath = samplePath;
                urlParams = {
                  embedded: null,
                  aid: sampleAID,
                  ref: 'maksumuuri_kova_eiot',
                  showPaymentPeriodList: null,
                  offer: null,
                  variant: null
                }
                
                button.innerText = 'Näytetilaus HS Digi+';

                //change subtitle for sample
                let subtitle = document.querySelector('.ab-test-hard-paywall-subtitle');
                let pvmSpan = calculateDays(14, false);
                subtitle.innerText = 'Tilaus päättyy automaattisesti ' + pvmSpan;
            }
          
            let url = new URL(button.href);
            // Update search params
            if (urlParams) {
              Object.keys(urlParams).forEach(function (key) {
                if (urlParams[key] === null) {
                  url.searchParams.delete(key)
                } else if (urlParams[key] !== undefined) {
                  url.searchParams.set(key, urlParams[key])
                }
              })
            }
            // Update path
            if (pagePath) {
                url.pathname = pagePath;
            }
            button.href = url.toString();
            button.setAttribute('data-product-name', pos);
            button.onclick = function (e) {
                sendGAEvent('click subscribe ' + pos + ' at ' + variantId)
            }
            return button;
        }

        //helper function to calculate days d.m. 
        const calculateDays = function(d, suffix) {
            let date = new Date();
            date.setDate(date.getDate() + d);
            let dd = date.getDate();
            let mm = date.getMonth()+1;
            let pvmSpan = false;
            if(suffix) {
                pvmSpan = dd.toString() + '.' + mm.toString() + '. ' + suffix;
            }
            else {
                pvmSpan = dd.toString() + '.' + mm.toString() + '.'
            }
            return pvmSpan;
        }

        //helper function to insert style
        const insertStyle = function(containerdiv) {
            let style = `
                    :root {
                        --main-color: #191919;
                        --underline-color: #787878;
                        --line-color: #E9EAED;
                        --main-font: 'Helsingin', Arial, sans-serif;
                    }
                        
                    .ab-test-paywall-container {
                        display: flex;
                        flex-direction: column;
                        width: 100%;
                        max-width: calc(100% - 16px);
                    }

                    .ab-test-paywall-container .ab-test-hard-paywall-title {
                        font-size: 26px;
                        margin-bottom: 16px;
                        text-align: center;
                    }

                    .ab-test-paywall-product {
                        display: flex;
                        flex-direction: row;
                        align-items: baseline;
                        font-size: 16px;
                        font-family: var(--main-font);
                        margin: 0 auto;
                        border-top: 1px solid var(--line-color);
                        padding: 12px 0px;
                        cursor: pointer;
                        width: 100%;
                        border: 1px solid #000;
                        border-radius: 4px;
                        padding: 12px 12px 8px;
                        margin-bottom: 8px;
                        background: #F8F8F8;
                    }

                    .ab-test-paywall-product.selected {
                        background: #fff;
                    }

                    .ab-test-paywall-delimeter {
                        overflow: hidden;
                        margin-top: 0;
                        margin-bottom: 8px;

                        text-align: center;
                        font-family: var(--main-font);
                        font-size: 14px;
                        font-style: normal;
                        font-weight: 500;
                        line-height: normal;
                        letter-spacing: 0.36px;
                    }
                    
                    .ab-test-paywall-delimeter:before, .ab-test-paywall-delimeter:after {
                        background-color: #ccc;
                        content: "";
                        display: inline-block;
                        height: 0.5px;
                        position: relative;
                        vertical-align: middle;
                        width: 50%;
                    }

                    .ab-test-paywall-delimeter:before {
                        right: 8px;
                        margin-left: -50%;
                    }
    
                    .ab-test-paywall-delimeter:after {
                        left: 8px;
                        margin-right: -50%;
                    }

                    .ab-test-paywall-product .ab-product-content {
                        display: flex;
                        flex-direction: column;
                        margin-left: 12px;
                        width: 100%;
                    }

                    .ab-test-paywall-product .ab-radio {
                        transform: scale(1.6);
                        accent-color: var(--main-color);
                        cursor: pointer;
                    }

                    @supports (-moz-appearance:none) {
                        .ab-test-paywall-product .ab-radio {
                            transform: scale(1.5);
                        }
                    }

                    .ab-test-paywall-product .ab-product-title {
                        font-weight: 600;
                        padding-bottom: 4px;
                        font-size: 14px;
                    }

                    .ab-test-paywall-product .ab-product-title > span {
                        font-size: 14px;
                        font-weight: 600;
                        float: right;
                        letter-spacing: -0.5px;
                    }

                    .ab-test-paywall-product .ab-product-title > span > span {
                        font-size: 12px;
                        font-weight: 300;
                        color: #666;
                        text-decoration: line-through;
                        padding-left: 4px;
                        letter-spacing: 0;
                    }

                    .ab-test-paywall-product .ab-product-text {
                        font-size: 12px;
                        margin-top: 2px;
                        color: #555;
                        text-align: left;
                    }

                    .ab-test-paywall-product .ab-product-text > span {
                        margin-right: 8px;
                    }

                    .ab-test-paywall-product .ab-product-text svg {
                        fill: #191919;
                        display: inline;
                        margin-right: 2px;
                        vertical-align: baseline;
                        height: 10px;
                    }

                    .ab-test-paywall-additional-info {
                        font-size: 15px;
                        font-weight: 600;
                        line-height: 1.2;
                        text-align: center;
                        margin-bottom: 16px;
                    }

                    .ab-test-hard-paywall-subtitle {
                        font-size: 15px;
                        font-family: var(--main-font);
                        margin-top: 12px;
                        margin-bottom: 32px;
                        text-align: center;
                    }

                    .ab-test-hard-paywall-subscribe-button {
                        margin: 12px auto 4px;
                        width: 260px;
                        font-family: var(--main-font);
                        font-size: 16px;
                    }

                    .ab-test-hard-paywall-subscribe-button:active {
                        margin: 12px auto 5px;
                        width: 258px;
                    }

                    .ab-test-hard-paywall-login-button {
                        margin-top: 24px;
                        position: relative;
                        width: 240px;
                        text-decoration: none !important;
                        padding: 9px;
                    }

                    .ab-test-hard-paywall-login-link {
                        text-decoration: underline;
                        font-size: 14px;   
                        margin-bottom: 24px;
                        margin-top: 16px;
                    }

                    .ab-test-hard-paywall-offering {
                        max-width: 480px;
                    }

                    /* dark mode support */
                    .sndp-dark .ab-test-paywall-product {
                        border: 1px solid #ccc;
                        background: #262626;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-text svg {
                        fill: #AFAFAF;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-title > span, .sndp-dark .ab-test-paywall-product .ab-product-text {
                        color: #fff;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-title > span > span {
                        color: #AFAFAF;
                    }
                    
                    @media (min-width: 360px) {
                        .ab-test-paywall-container {
                            max-width: 350px;
                        }

                        .ab-test-paywall-product .ab-product-text {
                            font-size: 14px;
                            margin-top: 4px;
                        }

                        .ab-test-paywall-product .ab-product-title, .ab-test-paywall-product .ab-product-title > span {
                            font-size: 16px;
                            letter-spacing: 0;
                        }

                        .ab-test-paywall-product .ab-product-title > span > span {
                            font-size: 14px;
                            padding-left: 8px;
                        }

                        .ab-test-paywall-product .ab-product-content {
                            margin-left: 16px;
                        }

                        .ab-test-paywall-product .ab-product-text svg {
                            margin-right: 4px;
                            height: 12px;
                        }

                        .ab-test-paywall-product .ab-product-text > span {
                            margin-right: 12px;
                        }
                    }
            `;
            
            if(document.location.pathname.indexOf('/visio/') > -1 ||
            document.location.pathname.indexOf('/teknologia/') > -1 ||
            document.location.pathname.indexOf('/talous/') > -1 ||
            document.location.pathname.indexOf('/autot/') > -1) {
            style += `	
                    .ab-test-paywall-product {
                        background: #F5E6DC;
                    }

                    .ab-test-paywall-product.selected {
                        background: #f9eee7;
                    }

                    .sndp-dark .ab-test-paywall-product.selected {
                        background: #262626;
                    }
            
                    .ab-test-paywall-grid .ab-grid-choose-button {
                        background: #b7384b;
                    }

                    .ab-test-paywall-product .ab-radio {
                        accent-color: #b7384b;
                    }

                    .ab-test-paywall-grid .ab-grid-choose-button:hover, .ab-test-paywall-grid .ab-grid-choose-button:active, .ab-test-paywall-grid .ab-grid-choose-button:focus {
                        background: #752f35;
                    }
                `;
            }
                        
            let styleSheet = document.createElement("style");
            styleSheet.type = "text/css";
            containerdiv.appendChild(styleSheet);
            styleSheet.innerText = style;
        };

        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-test-paywall-modified');
            let paywall = document.querySelector('.ab-test-' + paywallType + '-paywall');
            let title = document.querySelector('.ab-test-' + paywallType + '-paywall-title');
            let subtitle = document.querySelector('.ab-test-' + paywallType + '-paywall-subtitle');
            let button = document.querySelector('.ab-test-' + paywallType + '-paywall-subscribe-button');
            let secondaryButton = document.querySelector('.ab-test-' + paywallType + '-paywall-secondary-subscribe-button');
            let brazeModifiedPaywall = document.querySelector('.ab-test-paywall-modified-by-braze');
            if(brazeModifiedPaywall) {
                sendGAEvent('script failed, paywall already modified by Braze');
            }
            else if(experimentExists) {
                sendGAEvent('script failed, paywall already modified');
            } else if(title && button) { 
                if(button.innerText.trim() === currentDefaultButtonText) { //actual changes here
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
                    title.classList.add('ab-test-paywall-modified', namelower);

                    if(secondaryButton) { //katso muut tarjoukset button on HS
                        secondaryButton.style.display = 'none';
                    }

                    let loginLink = paywall.querySelector('.ab-test-hard-paywall-login-link');
                    if(loginLink) {
                        let paywallIndicator = paywall.querySelector('.paywall__indicator');
                        paywallIndicator.insertBefore(loginLink, paywallIndicator.childNodes[2]); //insert in between paywall indicators
                    }

                    //create container div - which contains all the elements
                    let containerdiv = createElem('div', 'ab-test-paywall-container', false);

                    //change subscribe button url and text
                    button = changeButtonUrlAndText(button, 'Digi+');

                    //main date until in title
                    if(commonDateUntil) {
                        let pvmSpan = calculateDays(commonDateUntil, 'asti');
                        title.innerText = 'Lue maksutta ' + pvmSpan;
                    }

                    let readingRightsForOneSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="2 2 32 32" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M18.3725 13.5C20.0293 13.5 21.3725 12.1569 21.3725 10.5C21.3725 8.84315 20.0293 7.5 18.3725 7.5C16.7156 7.5 15.3725 8.84315 15.3725 10.5C15.3725 12.1569 16.7156 13.5 18.3725 13.5ZM18.3725 16.5C21.6862 16.5 24.3725 13.8137 24.3725 10.5C24.3725 7.18629 21.6862 4.5 18.3725 4.5C15.0588 4.5 12.3725 7.18629 12.3725 10.5C12.3725 13.8137 15.0588 16.5 18.3725 16.5ZM18.3725 18C23.8903 18 27.2436 20.6846 28.948 23.6222C28.9709 23.6617 28.9918 23.7017 29.0107 23.7423C29.3011 24.1997 29.3328 24.7992 29.0421 25.3002C27.3377 28.2379 23.8903 31.1253 18.3725 31.1253C12.8547 31.1253 9.40724 28.2379 7.70281 25.3002C7.41216 24.7992 7.44389 24.1999 7.73416 23.7425C7.7531 23.7019 7.77402 23.6617 7.79695 23.6222C9.50137 20.6846 12.8547 18 18.3725 18ZM10.7754 24.5282C12.1114 26.3666 14.5065 28.1253 18.3725 28.1253C22.2385 28.1253 24.6335 26.3666 25.9696 24.5282C24.6675 22.6761 22.3285 21 18.3725 21C14.4164 21 12.0774 22.6761 10.7754 24.5282Z"></path></svg>';
                    let readingRightsForFourSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="13" viewBox="0 0 14 13" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.5809 3.16667C7.5809 4.63943 6.387 5.83333 4.91424 5.83333C3.44148 5.83333 2.24757 4.63943 2.24757 3.16667C2.24757 1.69391 3.44148 0.5 4.91424 0.5C6.387 0.5 7.5809 1.69391 7.5809 3.16667ZM6.24757 3.16667C6.24757 3.90305 5.65062 4.5 4.91424 4.5C4.17786 4.5 3.5809 3.90305 3.5809 3.16667C3.5809 2.43029 4.17786 1.83333 4.91424 1.83333C5.65062 1.83333 6.24757 2.43029 6.24757 3.16667Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.61447 8.99877C8.85695 7.69314 7.3666 6.5 4.91424 6.5C2.46188 6.5 0.97153 7.69314 0.214008 8.99877C0.20382 9.01633 0.194523 9.03416 0.186103 9.05221C0.0570957 9.2555 0.0429897 9.52189 0.17217 9.74454C0.929692 11.0502 2.46188 12.3334 4.91425 12.3334C7.36661 12.3334 8.8988 11.0502 9.65632 9.74454C9.78552 9.52186 9.77139 9.25543 9.64234 9.05214C9.63393 9.03411 9.62464 9.0163 9.61447 8.99877ZM4.91425 11.0001C3.19602 11.0001 2.13155 10.2185 1.53775 9.40141C2.11643 8.57826 3.15599 7.83333 4.91424 7.83333C6.67249 7.83333 7.71205 8.57827 8.29073 9.40142C7.69693 10.2185 6.63246 11.0001 4.91425 11.0001Z"></path><path d="M8.58091 5.83333C8.1137 5.83333 7.67455 5.71318 7.29267 5.50209C7.60603 5.183 7.85567 4.80114 8.021 4.37709C8.19125 4.45598 8.38094 4.5 8.58091 4.5C9.31729 4.5 9.91424 3.90305 9.91424 3.16667C9.91424 2.43029 9.31729 1.83333 8.58091 1.83333C8.38094 1.83333 8.19125 1.87736 8.021 1.95624C7.85567 1.5322 7.60603 1.15033 7.29267 0.831247C7.67455 0.620154 8.1137 0.5 8.58091 0.5C10.0537 0.5 11.2476 1.69391 11.2476 3.16667C11.2476 4.63943 10.0537 5.83333 8.58091 5.83333Z"></path><path d="M9.66834 10.8844C9.21539 11.4261 8.63188 11.9239 7.91194 12.3003C8.12684 12.322 8.34979 12.3334 8.58092 12.3334C11.0333 12.3334 12.5655 11.0502 13.323 9.74454C13.4522 9.52186 13.4381 9.25543 13.309 9.05214C13.3006 9.03411 13.2913 9.0163 13.2811 8.99877C12.5236 7.69314 11.0333 6.5 8.58091 6.5C8.36457 6.5 8.15572 6.50929 7.95419 6.52711C8.67207 6.90013 9.24931 7.39617 9.6959 7.94617C10.7985 8.18463 11.5135 8.77001 11.9574 9.40142C11.5006 10.0299 10.7654 10.6374 9.66834 10.8844Z"></path></svg>';
                    let facsimileSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="15" viewBox="0 0 16 15" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M15.0282 0.519266C14.9956 0.319292 14.822 0.166664 14.6128 0.166664H3.13458L3.06631 0.172173C2.86634 0.20479 2.71371 0.378338 2.71371 0.587534L2.71295 3.94837L0.838847 3.94897L0.768529 3.95481C0.562854 3.98937 0.408842 4.1729 0.41839 4.38847L0.818935 13.4318L0.847872 13.5654C1.0317 14.3071 1.55045 14.7823 2.27412 14.7823H13.6125L13.7284 14.7778C14.455 14.7212 15.0337 14.1365 15.0337 13.4132V0.587534L15.0282 0.519266ZM3.55469 1.0084H14.1912L14.192 13.4132L14.1868 13.4837C14.1491 13.7378 13.9103 13.9406 13.6125 13.9406H2.27412L2.18767 13.9352C1.90852 13.8994 1.72045 13.6867 1.65272 13.3339L1.27816 4.79011H2.71295L2.71371 12.0658L2.71922 12.1341C2.75184 12.334 2.92539 12.4867 3.13458 12.4867L3.20285 12.4812C3.40282 12.4485 3.55545 12.275 3.55545 12.0658L3.55469 1.0084Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.25632 2.46232H12.3172C12.5496 2.46232 12.7381 2.65075 12.7381 2.88319V7.47449C12.7381 7.70693 12.5496 7.89536 12.3172 7.89536H9.25632C9.02388 7.89536 8.83545 7.70693 8.83545 7.47449V2.88319C8.83545 2.65075 9.02388 2.46232 9.25632 2.46232ZM11.8963 7.05362V3.30406H9.67719V7.05362H11.8963Z"></path><path d="M7.34328 4.75797V5.59971H5.04763V4.75797H7.34328Z"></path><path d="M7.34328 2.46232V3.30406H5.04763V2.46232H7.34328Z"></path><path d="M7.34328 7.05362V7.89536H5.04763V7.05362H7.34328Z"></path><path d="M12.6998 9.34927V10.191H5.04763V9.34927H12.6998Z"></path><path d="M12.6998 11.6449V12.4867H5.04763V11.6449H12.6998Z"></path></svg>';

                    let product1 = createProductElement('Digi+', 'HS Digi+ <span>2 kk 0 € <span>(norm. 20,90 €/kk)</span></span>', readingRightsForFourSvg + '<span>Lukuoikeus neljälle</span> ' + facsimileSvg + '<span>Näköislehti</span>', button);
                    let product2 = createProductElement('Digi', 'HS Digi  <span>2 kk 0 € <span>(norm. 14,90 €/kk)<span></span>', readingRightsForOneSvg + '<span>Lukuoikeus yhdelle</span>', button);
                    let product3 = createProductElement('Sample', 'Näytetilaus HS Digi+ <span>2 vkoa 0 € </span>', false, button);
                    
                    subtitle.innerText = 'Voit irtisanoa tilauksen koska tahansa.';
                    subtitle.classList.remove('paywall__ingress');

                    //append elements to container one by one
                    containerdiv.appendChild(title);

                    if(cycloneDateUntil) { //cyclone subtitle
                        let pvmSpan = calculateDays(cycloneDateUntil, 'asti');
                        let cycloneText = createElem('div', 'paywall__text-block ab-test-paywall-additional-info', 'Maksuttoman jakson jälkeen voit jatkaa tilausta -40 % hinnalla ' + pvmSpan);
                        containerdiv.appendChild(cycloneText);
                    }

                    containerdiv.appendChild(product1);
                    containerdiv.appendChild(product2);

                    //delimeter element with TAI and border
                    let delimeter = createElem('div', 'ab-test-paywall-delimeter', '<span>TAI</span>');

                    containerdiv.appendChild(delimeter);
                    containerdiv.appendChild(product3);

                    containerdiv.appendChild(button);
                    containerdiv.appendChild(subtitle);

                    insertStyle(containerdiv);
                    paywall.insertBefore(containerdiv, paywall.childNodes[1]); //insert as 2nd element on paywall after paywall indicator	
            
                    dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
                    dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': 'change offer to cyclone at timanttimuuri', 'eventLabel': experimentName + ' ' + variantName});

                    if(feedTitle) { //rss feed under paywall element and this is the title of that feed
                        let paywallOffering = document.querySelector('.ab-test-hard-paywall-offering');
                        if(paywallOffering) {
                            paywallOffering.innerText = feedTitle;
                        }
                    }
                    
                    if(requireCdx) {
                        cdx.confirm(true);
                    }
                    return true;
                }
                else {
                    sendGAEvent('script failed, primary button text unexpected');
                }
            } else {
                sendGAEvent('script failed, paywall html unexpected');
            }
        };

        doExperimentChanges();
    };
} catch(e) {
    console.log(e)

  let err = e
  let err_split = e.stack.split('\n')
  let err_line = false
  if (err_split[1]) {
    err_line = err_split[1].split('>:')
  }
  if (err_line[1]) {
    err = err_line[1]
  }
  sendGAEvent('script error: ' + err)
}
 },'js-WzEdgyKyh8OFgTnwCfE0-1738660508': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if (!requireCdx) { testing = true; }
const experimentId = 'HS25-37';
const variantId = 'A';
const experimentName = experimentId + ' Timanttimuuri ei-ot';
const variantName = variantId + ' control';
let currentDefaultButtonText = 'Tilaa HS Digi+ 1. kk 0 €'; //nykyisen napin teksti
 //currentDefaultButtonText = 'Lue 2 viikkoa maksutta'; //nykyisen napin teksti
const paywallType = 'hard'; // hard or archived
const newAID = 'GBGT8CB9YKZUR';
const pagePath = false;
const feedTitle = 'Hesarin digitilauksella pääset lukemaan rajoituksetta tämän ja yli 400 uutta timanttiartikkelia kuukaudessa';

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    if(true) {       
        const changeButtonUrlAndText = function(button) {
            let urlParams = {
                'embedded': null,
                'offer': null,
                'aid': newAID,
                'ref': null,
                'showPaymentPeriodList': null,
                'variant': null
            };

            let url = new URL(button.href);
            // Update search params
            if (urlParams) {
                Object.keys(urlParams).forEach(function(key) {
                    if (urlParams[key] === null) {
                        url.searchParams.delete(key);
                    } else if (urlParams[key] !== undefined) {
                        url.searchParams.set(key, urlParams[key]);
                    }
                });
            }
            // Update path
            if (pagePath) {
                url.pathname = pagePath;
            }
            button.href = url.toString();
            return button;
        };
    
        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-test-paywall-modified');
            let title = document.querySelector('[data-ab="' + paywallType + '-paywall-title"]');
            let subtitle = document.querySelector('[data-ab="' + paywallType + '-paywall-subtitle"]');
            let button = document.querySelector('[data-ab="' + paywallType + '-paywall-subscribe-button"]');
            let secondaryButton = document.querySelector('[data-ab="' + paywallType + '-paywall-secondary-subscribe-button"]');
            if(experimentExists) {
                sendGAEvent('script failed, paywall already modified');
            } else if(title && button) { 
                if(button.innerText.trim() === currentDefaultButtonText) { //actual changes here
                    button = changeButtonUrlAndText(button);
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
                    
                    title.classList.add('ab-test-paywall-modified', namelower);
            
                    dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
                    //dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': 'change offer to sample at timanttimuuri', 'eventLabel': experimentName + ' ' + variantName});
                    
                    if(feedTitle) {
                        let paywallOffering = document.querySelector('[data-ab="' + paywallType + '-paywall-offering"]');
                        if(paywallOffering) {
                            paywallOffering.innerText = feedTitle;
                        }
                    }

                    if(requireCdx) {
                        cdx.confirm(true);
                    }
                    return true;
                }
                else {
                    sendGAEvent('script failed, primary button text unexpected');
                }
            } else {
                sendGAEvent('script failed, paywall html unexpected');
            }
        };

        doExperimentChanges();
    }
} catch(err) {   
    sendGAEvent('script error: ' + err);
}
 },'js-LAiIl91JykA4P4gEKCPI-1738660508': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if (!requireCdx) { testing = true; }
const experimentId = 'HS25-37';
const variantId = 'B';
const experimentName = experimentId + ' Timanttimuuri ei-ot';
const variantName = variantId + ' sample';
let currentDefaultButtonText = 'Tilaa HS Digi+ 1. kk 0 €'; //nykyisen napin teksti
 //currentDefaultButtonText = 'Lue 2 viikkoa maksutta'; //nykyisen napin teksti
const paywallType = 'hard'; // hard or archived
const newAID = 'GM9H298X5RVX4';
const feedTitle = 'Hesarin digitilauksella pääset lukemaan rajoituksetta tämän ja yli 400 uutta timanttiartikkelia kuukaudessa';
const newDateUntil = 14; //sample
const newButtonText = 'Lue 2 viikkoa maksutta'; //sample
let pagePath = '/shopping-ui/sample';

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    if(true) {
        const createElem = function(tag, classes, text) {
            let elem = document.createElement(tag);
            if(classes) {
                //split classes by space
                classes = classes.split(' ');
                for(let i = 0; i < classes.length; i++) {
                    elem.classList.add(classes[i]);
                }
            }
            if(text) {
                elem.innerHTML = text;
            }
            return elem;
        }

        //helper function to replace text in correct child node
        function replaceText(node, newText) {
            if (node.nodeType === Node.TEXT_NODE) {
                node.nodeValue = newText;
            } else {
                node.childNodes.forEach((child) => replaceText(child, newText));  
            }
        }
        
        const changeButtonUrlAndText = function(button) {
            let urlParams = {
                'embedded': null,
                'offer': null,
                'aid': newAID,
                'ref': null,
                'showPaymentPeriodList': null,
                'variant': null
            };

            let url = new URL(button.href);
            // Update search params
            if (urlParams) {
                Object.keys(urlParams).forEach(function(key) {
                    if (urlParams[key] === null) {
                        url.searchParams.delete(key);
                    } else if (urlParams[key] !== undefined) {
                        url.searchParams.set(key, urlParams[key]);
                    }
                });
            }
            // Update path
            if (pagePath) {
                url.pathname = pagePath;
            }
            button.href = url.toString();
           
            replaceText(button, newButtonText); //finds the child text node and replaces it
            
            return button;
        };
    
        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-test-paywall-modified');
            let title = document.querySelector('[data-ab="' + paywallType + '-paywall-title"]');
            let subtitle = document.querySelector('[data-ab="' + paywallType + '-paywall-subtitle"]');
            let button = document.querySelector('[data-ab="' + paywallType + '-paywall-subscribe-button"]');
            let secondaryButton = document.querySelector('[data-ab="' + paywallType + '-paywall-secondary-subscribe-button"]');
            if(experimentExists) {
                sendGAEvent('script failed, paywall already modified');
            } else if(title && button) { 
                if(button.innerText.trim() === currentDefaultButtonText) { //actual changes here
                    button = changeButtonUrlAndText(button);
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;

                    subtitle.innerText = 'Kahden viikon tutustumisjakso päättyy automaattisesti.';
                    
                    title.classList.add('ab-test-paywall-modified', namelower);
                    if(newDateUntil) {
                        let date = new Date();
                        date.setDate(date.getDate() + newDateUntil);
                        let dd = date.getDate();
                        let mm = date.getMonth()+1;
                        let pvmSpan = createElem('span', 'ab-date-span', dd.toString() + '.' + mm.toString() + '. asti');
                        title.innerText = 'Lue maksutta ';
                        title.appendChild(pvmSpan);
                    }

                    secondaryButton.classList.add('ab-test-paywall-modified', namelower);
                    secondaryButton.href = 'https://kampanjat.hs.fi/tilaa/?ref=kovamuuri';
            
                    dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
                    dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': 'change offer to sample at timanttimuuri', 'eventLabel': experimentName + ' ' + variantName});
                    
                    if(feedTitle) {
                        let paywallOffering = document.querySelector('[data-ab="' + paywallType + '-paywall-offering"]');
                        if(paywallOffering) {
                            paywallOffering.innerText = feedTitle;
                        }
                    }

                    if(requireCdx) {
                        cdx.confirm(true);
                    }
                    return true;
                }
                else {
                    sendGAEvent('script failed, primary button text unexpected');
                }
            } else {
                sendGAEvent('script failed, paywall html unexpected');
            }
        };

        doExperimentChanges();
    }
} catch(err) {   
    sendGAEvent('script error: ' + err);
}
 },'js-CuYBcurQuiPkaSmhUNKd-1740139337': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = true;
if (!requireCdx) { testing = true; }
const experimentId = 'HS25-37';
const variantId = 'C';
const experimentName = experimentId + ' Timanttimuuri ei-ot';
const variantName = variantId + ' radios sykloni and sample';
let currentDefaultButtonText = 'Tilaa HS Digi+ 1. kk 0 €'; //nykyisen napin teksti
 //currentDefaultButtonText = 'Lue 2 viikkoa maksutta'; //nykyisen napin teksti
const paywallType = 'hard'; // hard or archived
const commonDateUntil = 60; //false or number of days
const miniDateUntil = 60;
const digiDateUntil = 60;
const cycloneDateUntil = 180;
const miniAID = 'GNHRFO5M3Z3ZH'; //HS Digi
const digiAID = 'GIRGLZII8RB4G'; //HS Digi+
const miniPath = '/api/safe/v1/web/subscription-funnel/hs-mini-tutustu-v624';
const digiPath = '/api/safe/v1/web/subscription-funnel/hs-digi-tutustu-v624';
const samplePath = '/shopping-ui/sample';
const sampleAID = 'GFGQSTSB5LBJH';
const showProductFeatures = true;
const feedTitle = 'Hesarin digitilauksella pääset lukemaan rajoituksetta tämän ja yli 400 uutta timanttiartikkelia kuukaudessa';

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    if(true) {  
        //helper function to create any html element
        const createElem = function(tag, classes, text) {
            let elem = document.createElement(tag);
            if(classes) {
                //split classes by space
                classes = classes.split(' ');
                for(let i = 0; i < classes.length; i++) {
                    elem.classList.add(classes[i]);
                }
            }
            if(text) {
                elem.innerHTML = text;
            }
            return elem;
        }

        //helper function to create product element 
        const createProductElement = function(productname, title, features, button) {
            let product = createElem('label', 'ab-test-paywall-product', false);
            product.setAttribute('product', productname);
            if(productname === 'Digi+') { //this is the default option
                product.classList.add('selected'); //mark it selected
            }
            let check = createElem('input', 'ab-radio', false);
            check.type = 'radio';
            check.name = 'product';
            //check.id = 'radio_'+productname;  
            if(productname === 'Digi+') {
                check.checked = 'checked';
            }
            let productcontent = createElem('div', 'ab-product-content', false);
            let producttitle = createElem('p', 'ab-product-title', title);

            product.appendChild(check);
            productcontent.appendChild(producttitle);

            if(features) {
                let producttext = createElem('p', 'ab-product-text', features);
                productcontent.appendChild(producttext);
            }
            
            product.appendChild(productcontent);
            check.onchange = function(e) {
                //sendGAEvent('click product ' + productname);
                changeButtonUrlAndText(button, productname);
            }
            return product;
        }

        //helper function to change button url and text
        const changeButtonUrlAndText = function (button, pos) {          
            let urlParams = false;
            let pagePath = false;
            //ab-test-hard-paywall-subtitle
            let cancelAnytime = 'Voit irtisanoa tilauksen koska tahansa.';
            let allProductElements = document.querySelectorAll('.ab-test-paywall-product');
            allProductElements.forEach(function (element) {
                element.classList.remove('selected');
                if(element.getAttribute('product') === pos) {
                    element.classList.add('selected');
                }
            });

            if(pos === 'Digi') {
              pagePath = miniPath;
              urlParams = {
                embedded: null,
                aid: miniAID,
                ref: 'maksumuuri_kova_eiot',
                showPaymentPeriodList: null,
                offer: 3,
                variant: null
              }

              button.innerText = 'Tutustu HS ' + pos + ' 2 kk 0 €';
              document.querySelector('.ab-test-hard-paywall-subtitle').innerText = cancelAnytime;
            }
            else if(pos === 'Digi+') {
                pagePath = digiPath;
                urlParams = {
                  embedded: null,
                  aid: digiAID,
                  ref: 'maksumuuri_kova_eiot',
                  showPaymentPeriodList: null,
                  offer: null,
                  variant: null
                }
  
                button.innerText = 'Tutustu HS ' + pos + ' 2 kk 0 €';
                document.querySelector('.ab-test-hard-paywall-subtitle').innerText = cancelAnytime;
              }
            else {  //sample
                pagePath = samplePath;
                urlParams = {
                  embedded: null,
                  aid: sampleAID,
                  ref: 'maksumuuri_kova_eiot',
                  showPaymentPeriodList: null,
                  offer: null,
                  variant: null
                }
                
                button.innerText = 'Näytetilaus HS Digi+';

                //change subtitle for sample
                let subtitle = document.querySelector('.ab-test-hard-paywall-subtitle');
                let pvmSpan = calculateDays(14, false);
                subtitle.innerText = 'Tilaus päättyy automaattisesti ' + pvmSpan;
            }
          
            let url = new URL(button.href);
            // Update search params
            if (urlParams) {
              Object.keys(urlParams).forEach(function (key) {
                if (urlParams[key] === null) {
                  url.searchParams.delete(key)
                } else if (urlParams[key] !== undefined) {
                  url.searchParams.set(key, urlParams[key])
                }
              })
            }
            // Update path
            if (pagePath) {
                url.pathname = pagePath;
            }
            button.href = url.toString();
            button.setAttribute('data-product-name', pos);
            button.onclick = function (e) {
                sendGAEvent('click subscribe ' + pos + ' at ' + variantId)
            }
            return button;
        }

        //helper function to calculate days d.m. 
        const calculateDays = function(d, suffix) {
            let date = new Date();
            date.setDate(date.getDate() + d);
            let dd = date.getDate();
            let mm = date.getMonth()+1;
            let pvmSpan = false;
            if(suffix) {
                pvmSpan = dd.toString() + '.' + mm.toString() + '. ' + suffix;
            }
            else {
                pvmSpan = dd.toString() + '.' + mm.toString() + '.'
            }
            return pvmSpan;
        }

        //helper function to insert style
        const insertStyle = function(containerdiv) {
            let style = `
                    :root {
                        --main-color: #191919;
                        --underline-color: #787878;
                        --line-color: #E9EAED;
                        --main-font: 'Helsingin', Arial, sans-serif;
                    }
                        
                    .ab-test-paywall-container {
                        display: flex;
                        flex-direction: column;
                        width: 100%;
                        max-width: calc(100% - 16px);
                    }

                    .ab-test-paywall-container .ab-test-hard-paywall-title {
                        font-size: 26px;
                        margin-bottom: 16px;
                        text-align: center;
                    }

                    .ab-test-paywall-product {
                        display: flex;
                        flex-direction: row;
                        align-items: baseline;
                        font-size: 16px;
                        font-family: var(--main-font);
                        margin: 0 auto;
                        border-top: 1px solid var(--line-color);
                        padding: 12px 0px;
                        cursor: pointer;
                        width: 100%;
                        border: 1px solid #000;
                        border-radius: 4px;
                        padding: 12px 12px 8px;
                        margin-bottom: 8px;
                        background: #F8F8F8;
                    }

                    .ab-test-paywall-product.selected {
                        background: #fff;
                    }

                    .ab-test-paywall-delimeter {
                        overflow: hidden;
                        margin-top: 0;
                        margin-bottom: 8px;

                        text-align: center;
                        font-family: var(--main-font);
                        font-size: 14px;
                        font-style: normal;
                        font-weight: 500;
                        line-height: normal;
                        letter-spacing: 0.36px;
                    }
                    
                    .ab-test-paywall-delimeter:before, .ab-test-paywall-delimeter:after {
                        background-color: #ccc;
                        content: "";
                        display: inline-block;
                        height: 0.5px;
                        position: relative;
                        vertical-align: middle;
                        width: 50%;
                    }

                    .ab-test-paywall-delimeter:before {
                        right: 8px;
                        margin-left: -50%;
                    }
    
                    .ab-test-paywall-delimeter:after {
                        left: 8px;
                        margin-right: -50%;
                    }

                    .ab-test-paywall-product .ab-product-content {
                        display: flex;
                        flex-direction: column;
                        margin-left: 12px;
                        width: 100%;
                    }

                    .ab-test-paywall-product .ab-radio {
                        transform: scale(1.6);
                        accent-color: var(--main-color);
                        cursor: pointer;
                    }

                    @supports (-moz-appearance:none) {
                        .ab-test-paywall-product .ab-radio {
                            transform: scale(1.5);
                        }
                    }

                    .ab-test-paywall-product .ab-product-title {
                        font-weight: 600;
                        padding-bottom: 4px;
                        font-size: 14px;
                    }

                    .ab-test-paywall-product .ab-product-title > span {
                        font-size: 14px;
                        font-weight: 600;
                        float: right;
                        letter-spacing: -0.5px;
                    }

                    .ab-test-paywall-product .ab-product-title > span > span {
                        font-size: 12px;
                        font-weight: 300;
                        color: #666;
                        text-decoration: line-through;
                        padding-left: 4px;
                        letter-spacing: 0;
                    }

                    .ab-test-paywall-product .ab-product-text {
                        font-size: 12px;
                        margin-top: 2px;
                        color: #555;
                        text-align: left;
                    }

                    .ab-test-paywall-product .ab-product-text > span {
                        margin-right: 8px;
                    }

                    .ab-test-paywall-product .ab-product-text svg {
                        fill: #191919;
                        display: inline;
                        margin-right: 2px;
                        vertical-align: baseline;
                        height: 10px;
                    }

                    .ab-test-paywall-additional-info {
                        font-size: 15px;
                        font-weight: 600;
                        line-height: 1.2;
                        text-align: center;
                        margin-bottom: 16px;
                    }

                    .ab-test-hard-paywall-subtitle {
                        font-size: 15px;
                        font-family: var(--main-font);
                        margin-top: 12px;
                        margin-bottom: 32px;
                        text-align: center;
                    }

                    .ab-test-hard-paywall-subscribe-button {
                        margin: 12px auto 4px;
                        width: 260px;
                        font-family: var(--main-font);
                        font-size: 16px;
                    }

                    .ab-test-hard-paywall-subscribe-button:active {
                        margin: 12px auto 5px;
                        width: 258px;
                    }

                    .ab-test-hard-paywall-login-button {
                        margin-top: 24px;
                        position: relative;
                        width: 240px;
                        text-decoration: none !important;
                        padding: 9px;
                    }

                    .ab-test-hard-paywall-login-link {
                        text-decoration: underline;
                        font-size: 14px;   
                        margin-bottom: 24px;
                        margin-top: 16px;
                    }

                    .ab-test-hard-paywall-offering {
                        max-width: 480px;
                    }

                    /* dark mode support */
                    .sndp-dark .ab-test-paywall-product {
                        border: 1px solid #ccc;
                        background: #262626;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-text svg {
                        fill: #AFAFAF;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-title > span, .sndp-dark .ab-test-paywall-product .ab-product-text {
                        color: #fff;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-title > span > span {
                        color: #AFAFAF;
                    }
                    
                    @media (min-width: 360px) {
                        .ab-test-paywall-container {
                            max-width: 350px;
                        }

                        .ab-test-paywall-product .ab-product-text {
                            font-size: 14px;
                            margin-top: 4px;
                        }

                        .ab-test-paywall-product .ab-product-title, .ab-test-paywall-product .ab-product-title > span {
                            font-size: 16px;
                            letter-spacing: 0;
                        }

                        .ab-test-paywall-product .ab-product-title > span > span {
                            font-size: 14px;
                            padding-left: 8px;
                        }

                        .ab-test-paywall-product .ab-product-content {
                            margin-left: 16px;
                        }

                        .ab-test-paywall-product .ab-product-text svg {
                            margin-right: 4px;
                            height: 12px;
                        }

                        .ab-test-paywall-product .ab-product-text > span {
                            margin-right: 12px;
                        }
                    }
            `;
            
            if(document.location.pathname.indexOf('/visio/') > -1 ||
            document.location.pathname.indexOf('/teknologia/') > -1 ||
            document.location.pathname.indexOf('/talous/') > -1 ||
            document.location.pathname.indexOf('/autot/') > -1) {
            style += `	
                    .ab-test-paywall-product {
                        background: #F5E6DC;
                    }

                    .ab-test-paywall-product.selected {
                        background: #f9eee7;
                    }

                    .sndp-dark .ab-test-paywall-product.selected {
                        background: #262626;
                    }
            
                    .ab-test-paywall-grid .ab-grid-choose-button {
                        background: #b7384b;
                    }

                    .ab-test-paywall-product .ab-radio {
                        accent-color: #b7384b;
                    }

                    .ab-test-paywall-grid .ab-grid-choose-button:hover, .ab-test-paywall-grid .ab-grid-choose-button:active, .ab-test-paywall-grid .ab-grid-choose-button:focus {
                        background: #752f35;
                    }
                `;
            }
                        
            let styleSheet = document.createElement("style");
            styleSheet.type = "text/css";
            containerdiv.appendChild(styleSheet);
            styleSheet.innerText = style;
        };

        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-test-paywall-modified');
            let paywall = document.querySelector('.ab-test-' + paywallType + '-paywall');
            let title = document.querySelector('.ab-test-' + paywallType + '-paywall-title');
            let subtitle = document.querySelector('.ab-test-' + paywallType + '-paywall-subtitle');
            let button = document.querySelector('.ab-test-' + paywallType + '-paywall-subscribe-button');
            let secondaryButton = document.querySelector('.ab-test-' + paywallType + '-paywall-secondary-subscribe-button');
            let brazeModifiedPaywall = document.querySelector('.ab-test-paywall-modified-by-braze');
            if(brazeModifiedPaywall) {
                //sendGAEvent('script failed, paywall already modified by Braze');
            }
            else if(experimentExists) {
                //sendGAEvent('script failed, paywall already modified');
            } else if(title && button) { 
                if(button.innerText.trim() === currentDefaultButtonText) { //actual changes here
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
                    title.classList.add('ab-test-paywall-modified', namelower);

                    if(secondaryButton) { //katso muut tarjoukset button on HS
                        secondaryButton.style.display = 'none';
                    }

                    let loginLink = paywall.querySelector('.ab-test-hard-paywall-login-link');
                    if(loginLink) {
                        let paywallIndicator = paywall.querySelector('.paywall__indicator');
                        paywallIndicator.insertBefore(loginLink, paywallIndicator.childNodes[2]); //insert in between paywall indicators
                    }

                    //create container div - which contains all the elements
                    let containerdiv = createElem('div', 'ab-test-paywall-container', false);

                    //change subscribe button url and text
                    button = changeButtonUrlAndText(button, 'Digi+');

                    //main date until in title
                    if(commonDateUntil) {
                        let pvmSpan = calculateDays(commonDateUntil, 'asti');
                        title.innerText = 'Lue maksutta ' + pvmSpan;
                    }

                    let readingRightsForOneSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="2 2 32 32" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M18.3725 13.5C20.0293 13.5 21.3725 12.1569 21.3725 10.5C21.3725 8.84315 20.0293 7.5 18.3725 7.5C16.7156 7.5 15.3725 8.84315 15.3725 10.5C15.3725 12.1569 16.7156 13.5 18.3725 13.5ZM18.3725 16.5C21.6862 16.5 24.3725 13.8137 24.3725 10.5C24.3725 7.18629 21.6862 4.5 18.3725 4.5C15.0588 4.5 12.3725 7.18629 12.3725 10.5C12.3725 13.8137 15.0588 16.5 18.3725 16.5ZM18.3725 18C23.8903 18 27.2436 20.6846 28.948 23.6222C28.9709 23.6617 28.9918 23.7017 29.0107 23.7423C29.3011 24.1997 29.3328 24.7992 29.0421 25.3002C27.3377 28.2379 23.8903 31.1253 18.3725 31.1253C12.8547 31.1253 9.40724 28.2379 7.70281 25.3002C7.41216 24.7992 7.44389 24.1999 7.73416 23.7425C7.7531 23.7019 7.77402 23.6617 7.79695 23.6222C9.50137 20.6846 12.8547 18 18.3725 18ZM10.7754 24.5282C12.1114 26.3666 14.5065 28.1253 18.3725 28.1253C22.2385 28.1253 24.6335 26.3666 25.9696 24.5282C24.6675 22.6761 22.3285 21 18.3725 21C14.4164 21 12.0774 22.6761 10.7754 24.5282Z"></path></svg>';
                    let readingRightsForFourSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="13" viewBox="0 0 14 13" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.5809 3.16667C7.5809 4.63943 6.387 5.83333 4.91424 5.83333C3.44148 5.83333 2.24757 4.63943 2.24757 3.16667C2.24757 1.69391 3.44148 0.5 4.91424 0.5C6.387 0.5 7.5809 1.69391 7.5809 3.16667ZM6.24757 3.16667C6.24757 3.90305 5.65062 4.5 4.91424 4.5C4.17786 4.5 3.5809 3.90305 3.5809 3.16667C3.5809 2.43029 4.17786 1.83333 4.91424 1.83333C5.65062 1.83333 6.24757 2.43029 6.24757 3.16667Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.61447 8.99877C8.85695 7.69314 7.3666 6.5 4.91424 6.5C2.46188 6.5 0.97153 7.69314 0.214008 8.99877C0.20382 9.01633 0.194523 9.03416 0.186103 9.05221C0.0570957 9.2555 0.0429897 9.52189 0.17217 9.74454C0.929692 11.0502 2.46188 12.3334 4.91425 12.3334C7.36661 12.3334 8.8988 11.0502 9.65632 9.74454C9.78552 9.52186 9.77139 9.25543 9.64234 9.05214C9.63393 9.03411 9.62464 9.0163 9.61447 8.99877ZM4.91425 11.0001C3.19602 11.0001 2.13155 10.2185 1.53775 9.40141C2.11643 8.57826 3.15599 7.83333 4.91424 7.83333C6.67249 7.83333 7.71205 8.57827 8.29073 9.40142C7.69693 10.2185 6.63246 11.0001 4.91425 11.0001Z"></path><path d="M8.58091 5.83333C8.1137 5.83333 7.67455 5.71318 7.29267 5.50209C7.60603 5.183 7.85567 4.80114 8.021 4.37709C8.19125 4.45598 8.38094 4.5 8.58091 4.5C9.31729 4.5 9.91424 3.90305 9.91424 3.16667C9.91424 2.43029 9.31729 1.83333 8.58091 1.83333C8.38094 1.83333 8.19125 1.87736 8.021 1.95624C7.85567 1.5322 7.60603 1.15033 7.29267 0.831247C7.67455 0.620154 8.1137 0.5 8.58091 0.5C10.0537 0.5 11.2476 1.69391 11.2476 3.16667C11.2476 4.63943 10.0537 5.83333 8.58091 5.83333Z"></path><path d="M9.66834 10.8844C9.21539 11.4261 8.63188 11.9239 7.91194 12.3003C8.12684 12.322 8.34979 12.3334 8.58092 12.3334C11.0333 12.3334 12.5655 11.0502 13.323 9.74454C13.4522 9.52186 13.4381 9.25543 13.309 9.05214C13.3006 9.03411 13.2913 9.0163 13.2811 8.99877C12.5236 7.69314 11.0333 6.5 8.58091 6.5C8.36457 6.5 8.15572 6.50929 7.95419 6.52711C8.67207 6.90013 9.24931 7.39617 9.6959 7.94617C10.7985 8.18463 11.5135 8.77001 11.9574 9.40142C11.5006 10.0299 10.7654 10.6374 9.66834 10.8844Z"></path></svg>';
                    let facsimileSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="15" viewBox="0 0 16 15" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M15.0282 0.519266C14.9956 0.319292 14.822 0.166664 14.6128 0.166664H3.13458L3.06631 0.172173C2.86634 0.20479 2.71371 0.378338 2.71371 0.587534L2.71295 3.94837L0.838847 3.94897L0.768529 3.95481C0.562854 3.98937 0.408842 4.1729 0.41839 4.38847L0.818935 13.4318L0.847872 13.5654C1.0317 14.3071 1.55045 14.7823 2.27412 14.7823H13.6125L13.7284 14.7778C14.455 14.7212 15.0337 14.1365 15.0337 13.4132V0.587534L15.0282 0.519266ZM3.55469 1.0084H14.1912L14.192 13.4132L14.1868 13.4837C14.1491 13.7378 13.9103 13.9406 13.6125 13.9406H2.27412L2.18767 13.9352C1.90852 13.8994 1.72045 13.6867 1.65272 13.3339L1.27816 4.79011H2.71295L2.71371 12.0658L2.71922 12.1341C2.75184 12.334 2.92539 12.4867 3.13458 12.4867L3.20285 12.4812C3.40282 12.4485 3.55545 12.275 3.55545 12.0658L3.55469 1.0084Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.25632 2.46232H12.3172C12.5496 2.46232 12.7381 2.65075 12.7381 2.88319V7.47449C12.7381 7.70693 12.5496 7.89536 12.3172 7.89536H9.25632C9.02388 7.89536 8.83545 7.70693 8.83545 7.47449V2.88319C8.83545 2.65075 9.02388 2.46232 9.25632 2.46232ZM11.8963 7.05362V3.30406H9.67719V7.05362H11.8963Z"></path><path d="M7.34328 4.75797V5.59971H5.04763V4.75797H7.34328Z"></path><path d="M7.34328 2.46232V3.30406H5.04763V2.46232H7.34328Z"></path><path d="M7.34328 7.05362V7.89536H5.04763V7.05362H7.34328Z"></path><path d="M12.6998 9.34927V10.191H5.04763V9.34927H12.6998Z"></path><path d="M12.6998 11.6449V12.4867H5.04763V11.6449H12.6998Z"></path></svg>';

                    let product1 = createProductElement('Digi+', 'HS Digi+ <span>2 kk 0 € <span>(norm. 20,90 €/kk)</span></span>', readingRightsForFourSvg + '<span>Lukuoikeus neljälle</span> ' + facsimileSvg + '<span>Näköislehti</span>', button);
                    let product2 = createProductElement('Digi', 'HS Digi  <span>2 kk 0 € <span>(norm. 14,90 €/kk)<span></span>', readingRightsForOneSvg + '<span>Lukuoikeus yhdelle</span>', button);
                    let product3 = createProductElement('Sample', 'Näytetilaus HS Digi+ <span>2 vkoa 0 € </span>', false, button);
                    
                    subtitle.innerText = 'Voit irtisanoa tilauksen koska tahansa.';
                    subtitle.classList.remove('paywall__ingress');

                    //append elements to container one by one
                    containerdiv.appendChild(title);

                    if(cycloneDateUntil) { //cyclone subtitle
                        let pvmSpan = calculateDays(cycloneDateUntil, 'asti');
                        let cycloneText = createElem('div', 'paywall__text-block ab-test-paywall-additional-info', 'Maksuttoman jakson jälkeen voit jatkaa tilausta -40 % hinnalla ' + pvmSpan);
                        containerdiv.appendChild(cycloneText);
                    }

                    containerdiv.appendChild(product1);
                    containerdiv.appendChild(product2);

                    //delimeter element with TAI and border
                    let delimeter = createElem('div', 'ab-test-paywall-delimeter', '<span>TAI</span>');

                    containerdiv.appendChild(delimeter);
                    containerdiv.appendChild(product3);

                    containerdiv.appendChild(button);
                    containerdiv.appendChild(subtitle);

                    insertStyle(containerdiv);
                    paywall.insertBefore(containerdiv, paywall.childNodes[1]); //insert as 2nd element on paywall after paywall indicator	
            
                    dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
                    dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': 'change offer to cyclone at timanttimuuri', 'eventLabel': experimentName + ' ' + variantName});

                    if(feedTitle) { //rss feed under paywall element and this is the title of that feed
                        let paywallOffering = document.querySelector('.ab-test-hard-paywall-offering');
                        if(paywallOffering) {
                            paywallOffering.innerText = feedTitle;
                        }
                    }
                    
                    if(requireCdx) {
                        cdx.confirm(true);
                    }
                    return true;
                }
                else {
                    sendGAEvent('script failed, primary button text unexpected');
                }
            } else {
                sendGAEvent('script failed, paywall html unexpected');
            }
        };

        doExperimentChanges();
    };
} catch(e) {
    console.log(e)

  let err = e
  let err_split = e.stack.split('\n')
  let err_line = false
  if (err_split[1]) {
    err_line = err_split[1].split('>:')
  }
  if (err_line[1]) {
    err = err_line[1]
  }
  sendGAEvent('script error: ' + err)
}
 },'js-HyjG44fKq0PwABQSsP9u-1741766129': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if(!requireCdx) { testing = true; } //set this to true if not in conductrics for easier testing
const experimentId = 'HS25-38b';
const variantId = 'B';
const experimentName = experimentId + ' myyntitikkeri';
const variantName = variantId + ': sykloni';
const oldTickerText = 'HS Digi maksutta kuukaudeksi.';
const aid = 'GIVIUNS5MXPXD';
const pagePath = '/hs-mini-tutustu-v624';
const offer = 3;
const days = 60;
const cycloneDays = 180;

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    const changeTickerLink = function (tickerLink) {
        let urlParams = {
            'aid': aid,
            'ref': 'myyntitikkeri',
            'showPaymentPeriodList': null,
            'offer': null,
            'variant': null
        };

        let url = new URL(tickerLink.href);
        
        if (urlParams) {
            Object.keys(urlParams).forEach(function(key) {
                if (urlParams[key] === null) {
                    url.searchParams.delete(key);
                } else if (urlParams[key] !== undefined) {
                    url.searchParams.set(key, urlParams[key]);
                }
            });
        }
        if (pagePath) {
            let path = url.pathname.split('/');
            path.pop();
            path = path.join('/') + pagePath;
            url.pathname = path;
        }
        return url.toString();
    };

    const changeTickerText = function (tickerText) {
        let date = new Date();
        date.setDate(date.getDate() + days);

        let dd = date.getDate();
        let mm = date.getMonth()+1;

        let cycloneDate = new Date();
        cycloneDate.setDate(cycloneDate.getDate() + cycloneDays);
        let day = cycloneDate.getDate();
        let month = cycloneDate.getMonth()+1; 

        let newTickerText = 'Lue maksutta ' + dd.toString() + '.' + mm.toString() + '. asti. Voit jatkaa tilausta -40 % hinnalla ' + day.toString() + '.' + month.toString() + '. asti.';
        return newTickerText;
    };
    
    const doExperimentChanges = function () {
        let experimentExists = document.querySelector('.ticker-modified-by-conductrics');
        let ticker = document.querySelector('.ticker.ticker--promo-10');
        let brazePromo = document.querySelector('.simple-feature-promo--wide');
        brazePromo = false;
        let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
        
        if(brazePromo) {
            //sendGAEvent('braze promo loaded');
            sendGAEvent('script failed, braze promo loaded, ticker hidden');
            ticker.classList.add('hidden', 'hidden-by-conductrics', 'ticker-modified-by-conductrics', namelower);
        }
        else if(experimentExists) {
            //sendGAEvent('script failed, exp already exists');
        } else if(ticker) {
			let tickerLink = ticker.parentNode;
			let tickerText = ticker.querySelector('.ticker__title span:not(.ticker__storylogo)');
			if(tickerLink.href.indexOf('https://www.hs.fi/u/oma/tilaa/hs-digi-ticker?aid=G3SLUQYNQ63NV&offer=3&ref=myyntitikkeri') > -1) {
                if(tickerText) {
                    if(tickerText.innerText.indexOf(oldTickerText) > -1) { //check that tickerText.innerText contains oldTickerText as a substring
                        //actual changes here

                        tickerText.innerText = changeTickerText(tickerText);
                        tickerLink.href = changeTickerLink(tickerLink);

                        ticker.classList.add('ticker-modified-by-conductrics', namelower);
                        if(requireCdx) {
                            cdx.confirm(true);
                        }
                        //dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': 'change offer at myyntitikkeri', 'eventLabel': experimentName + ' ' + variantName});
                        return true;
                    }
                    else {
                        sendGAEvent('script error: ticker text unexpected');
                    }
                }
                else {
                    sendGAEvent('script error: ticker html unexpected');
                }
            }
            else {
                //sendGAEvent('script error: ticker default link unexpected');
            }
    
            dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
            
            return true;

		} else {
            sendGAEvent('script failed, ticker n/a');
        }
    };

    doExperimentChanges();
} catch(e) {
    //this is needed in ticker-agents. If e does not contain text "confirm" or "cdx", then call the sendGAEvent function
    if(e.toString().indexOf('confirm') < 0 && e.toString().indexOf('cdx') < 0) {
        sendGAEvent('script error: ' + e);
    }
}
 },'js-18xiPqYqLotpSYeAFqEr-1741766129': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if(!requireCdx) { testing = true; } //set this to true if not in conductrics for easier testing
const experimentId = 'HS25-38b';
const variantId = 'C';
const experimentName = experimentId + ' myyntitikkeri';
const variantName = variantId + ': sykloni';
const oldTickerText = 'HS Digi maksutta kuukaudeksi.';
const aid = 'G5PYVIOM2Q95J';
const pagePath = '/hs-digi-tutustu-v624';
const offer = 3;
const days = 60;
const cycloneDays = 180;

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    const changeTickerLink = function (tickerLink) {
        let urlParams = {
            'aid': aid,
            'ref': 'myyntitikkeri',
            'showPaymentPeriodList': null,
            'offer': null,
            'variant': null
        };

        let url = new URL(tickerLink.href);
        
        if (urlParams) {
            Object.keys(urlParams).forEach(function(key) {
                if (urlParams[key] === null) {
                    url.searchParams.delete(key);
                } else if (urlParams[key] !== undefined) {
                    url.searchParams.set(key, urlParams[key]);
                }
            });
        }
        if (pagePath) {
            let path = url.pathname.split('/');
            path.pop();
            path = path.join('/') + pagePath;
            url.pathname = path;
        }
        return url.toString();
    };

    const changeTickerText = function (tickerText) {
        let date = new Date();
        date.setDate(date.getDate() + days);

        let dd = date.getDate();
        let mm = date.getMonth()+1;

        let cycloneDate = new Date();
        cycloneDate.setDate(cycloneDate.getDate() + cycloneDays);
        let day = cycloneDate.getDate();
        let month = cycloneDate.getMonth()+1; 

        let newTickerText = 'Lue maksutta ' + dd.toString() + '.' + mm.toString() + '. asti. Voit jatkaa tilausta -40 % hinnalla ' + day.toString() + '.' + month.toString() + '. asti.';
        return newTickerText;
    };
    
    const doExperimentChanges = function () {
        let experimentExists = document.querySelector('.ticker-modified-by-conductrics');
        let ticker = document.querySelector('.ticker.ticker--promo-10');
        let brazePromo = document.querySelector('.simple-feature-promo--wide');
        brazePromo = false;
        let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
        
        if(brazePromo) {
            //sendGAEvent('braze promo loaded');
            sendGAEvent('script failed, braze promo loaded, ticker hidden');
            ticker.classList.add('hidden', 'hidden-by-conductrics', 'ticker-modified-by-conductrics', namelower);
        }
        else if(experimentExists) {
            //sendGAEvent('script failed, exp already exists');
        } else if(ticker) {
			let tickerLink = ticker.parentNode;
			let tickerText = ticker.querySelector('.ticker__title span:not(.ticker__storylogo)');
			if(tickerLink.href.indexOf('https://www.hs.fi/u/oma/tilaa/hs-digi-ticker?aid=G3SLUQYNQ63NV&offer=3&ref=myyntitikkeri') > -1) {
                if(tickerText) {
                    if(tickerText.innerText.indexOf(oldTickerText) > -1) { //check that tickerText.innerText contains oldTickerText as a substring
                        //actual changes here

                        tickerText.innerText = changeTickerText(tickerText);
                        tickerLink.href = changeTickerLink(tickerLink);

                        ticker.classList.add('ticker-modified-by-conductrics', namelower);
                        if(requireCdx) {
                            cdx.confirm(true);
                        }
                        //dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': 'change offer at myyntitikkeri', 'eventLabel': experimentName + ' ' + variantName});
                        return true;
                    }
                    else {
                        sendGAEvent('script error: ticker text unexpected');
                    }
                }
                else {
                    sendGAEvent('script error: ticker html unexpected');
                }
            }
            else {
                //sendGAEvent('script error: ticker default link unexpected');
            }
    
            dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
            
            return true;

		} else {
            sendGAEvent('script failed, ticker n/a');
        }
    };

    doExperimentChanges();
} catch(e) {
    //this is needed in ticker-agents. If e does not contain text "confirm" or "cdx", then call the sendGAEvent function
    if(e.toString().indexOf('confirm') < 0 && e.toString().indexOf('cdx') < 0) {
        sendGAEvent('script error: ' + e);
    }
}
 },'js-K3Ab8Iu8K0H3ahjrhUiC-1741001429': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if(!requireCdx) { testing = true; } //set this to true if not in conductrics for easier testing
const experimentId = 'HS25-38b';
const variantId = 'D';
const experimentName = experimentId + ' myyntitikkeri';
const variantName = variantId + ': hidden';
const oldTickerText = 'HS Digi maksutta kuukaudeksi.';
const pagePath = false;

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    const doExperimentChanges = function () {
        let experimentExists = document.querySelector('.ticker-modified-by-conductrics');
        let ticker = document.querySelector('.ticker.ticker--promo-10');
        let brazePromo = document.querySelector('.simple-feature-promo--wide');
        brazePromo = false;
        let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
        
        if(brazePromo) {
            //sendGAEvent('braze promo loaded');
            sendGAEvent('script failed, braze promo loaded, ticker hidden');
            ticker.classList.add('hidden', 'hidden-by-conductrics', 'ticker-modified-by-conductrics', namelower);
        }
        else if(experimentExists) {
            sendGAEvent('script failed, exp already exists');
        } else if(ticker) {
			let tickerLink = ticker.parentNode;
			let tickerText = ticker.querySelector('.ticker__title span:not(.ticker__storylogo)');
			if(tickerLink.href.indexOf('https://www.hs.fi/u/oma/tilaa/hs-digi-ticker?aid=G3SLUQYNQ63NV&offer=3&ref=myyntitikkeri') > -1) {
                if(tickerText) {
                    if(tickerText.innerText.indexOf(oldTickerText) > -1) { //check that tickerText.innerText contains oldTickerText as a substring
                        //actual changes here

                        ticker.classList.add('hidden', 'hidden-by-conductrics', 'ticker-modified-by-conductrics', namelower);
                        if(requireCdx) {
                            cdx.confirm(true);
                        }
                        //dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': 'change offer at myyntitikkeri', 'eventLabel': experimentName + ' ' + variantName});
                        return true;
                    }
                    else {
                        sendGAEvent('script error: ticker text unexpected');
                    }
                }
                else {
                    sendGAEvent('script error: ticker html unexpected');
                }
            }
            else {
                //sendGAEvent('script error: ticker default link unexpected');
            }
    
            dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
            
            return true;

		} else {
            sendGAEvent('script failed, ticker n/a');
        }
    };

    doExperimentChanges();
} catch(e) {
    //this is needed in ticker-agents. If e does not contain text "confirm" or "cdx", then call the sendGAEvent function
    if(e.toString().indexOf('confirm') < 0 && e.toString().indexOf('cdx') < 0) {
        sendGAEvent('script error: ' + e);
    }
}
 },'js-TREEhWAvZ2ViiF0Hp6LT-1740560027': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
const experimentId = 'HS24-39';
const experimentName = experimentId + ' tv';
const variantId = 'A';
const description = 'default';
if(testing) { requireCdx = false; }
const noEligibilityRules = true;

if(!requireCdx) { testing = true; } //set this to true if not in conductrics for easier testing

//current AIDs that we use atm, changes these
const curKaikkiAID = 'GZ4Z5T4MX258U';
const curDigiAID = 'GDDFI2Z69TZRP';
const curDigiplusAID = 'GY5DMKV68C94D';
const curPrintAID = 'GRMN352POWTR9';

//new AIDs that are switched in use by script
const newDigiAID = 'G3HVNURN6Z3CP';
const newDigiplusAID = 'GY5DMKV68C94D';
const newPrintAID = 'G6OV2WBJJQDYN';
const newKaikkiAID = 'G3WZMID2RGH4X';

const order_pagePath = false;

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

try {
    if(requireCdx === false || noEligibilityRules) {
        //actual code begins

        let mainElement = document.querySelector('.ab-hs-mini'); //main element to look for
        
        const changeLinkUrl = function (button) {
            let urlParams = {
                'aid': newDigiAID
            };

            let url = new URL(button.href);

            if (urlParams) {
                Object.keys(urlParams).forEach(function(key) {
                    if (urlParams[key] === null) {
                        url.searchParams.delete(key);
                    } else if (urlParams[key] !== undefined) {
                        url.searchParams.set(key, urlParams[key]);
                    }
                });
            }
            if (order_pagePath) {
                let path = url.pathname.split('/');
                path.pop();
                path = path.join('/') + order_pagePath;
                url.pathname = path;
            }
            return url.toString();
        };

        //in this function we switch the AID of the button. AID is one of the url parameters. Leave other url parameters as they were.
        const switchLinkAID = function (button, oldAid, newAID) {
            let url = new URL(button.href);
            let newUrl = url.toString().replace(oldAid, newAID);
            return newUrl;
        };

        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-hs-mini.ab-hs-mini-modified');
            if(experimentExists) {
                sendGAEvent('exp already exists at ' + variantId);
            } else if(mainElement) {
                let miniPrice = document.querySelector('.ab-hs-mini-price');
                let miniNormPrice = document.querySelector('.ab-hs-mini-norm');
                let miniButton = document.querySelector('.ab-hs-mini-button');
                let digiPrice = document.querySelector('.ab-hs-digi-price');

                if(mainElement && miniPrice && miniNormPrice && miniButton) { //---------actual changes here
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
                    mainElement.classList.add('ab-hs-mini-modified', namelower, 'modified-by-conductrics-' + experimentId);

                    if(miniButton.href = changeLinkUrl(miniButton)) {
                        /*miniPrice.innerHTML = 'alk. <span>12,90</span> €/kk';
                        miniNormPrice.classList.add('hss-note-striked');
                        miniNormPrice.innerText = 'norm. 14,90 €/kk';
                        digiPrice.innerHTML = 'alk. <span>14,90</span> €/kk';*/
                        let buttonDigiplus = document.querySelector('.ab-hs-digi-button');
                        buttonDigiplus.href = switchLinkAID(buttonDigiplus, curDigiplusAID, newDigiplusAID);

                        //switch AID for other buttons
                        let buttonKaikki = document.querySelector('.ab-hs-kaikki-button');
                        let buttonPrint = document.querySelector('.ab-hs-printti-button');
                        
                        buttonKaikki.href = switchLinkAID(buttonKaikki, curKaikkiAID, newKaikkiAID);
                        buttonPrint.href = switchLinkAID(buttonPrint, curPrintAID, newPrintAID);

                        if(requireCdx) {
                            cdx.confirm(true);
                        }
                        return true;
                    }
                }
                else {
                    sendGAEvent('script error at ' + variantId + ': html invalid');
                }
            } else {
                sendGAEvent('script failed, element n/a at ' + variantId);
            }
        };

        doExperimentChanges(); //finally call the function to do the changes
    };
} catch(err) {
    sendGAEvent('script error at ' + variantId + ': ' + err);
}
 },'js-d0HEFw70Qdt995gQjxNU-1740560027': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
const experimentId = 'HS24-39';
const experimentName = experimentId + ' tv';
const variantId = 'B';
const description = 'alhaisemmat 12kk';
if(testing) { requireCdx = false; }
const noEligibilityRules = true;

if(!requireCdx) { testing = true; } //set this to true if not in conductrics for easier testing

//current AIDs that we use atm, changes these
const curKaikkiAID = 'GZ4Z5T4MX258U';
const curDigiAID = 'GDDFI2Z69TZRP';
const curDigiplusAID = 'GY5DMKV68C94D';
const curPrintAID = 'GRMN352POWTR9';

//new AIDs that are switched in use by script
const newDigiAID = 'G8VCURVF42YUL';
const newDigiplusAID = 'GV43UTHZKWOL7';
const newPrintAID = 'GRMN352POWTR9';
const newKaikkiAID = 'GI2S27YVM2U99';

const order_pagePath = false;

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

try {
    if(requireCdx === false || noEligibilityRules) {
        //actual code begins

        let mainElement = document.querySelector('.ab-hs-mini'); //main element to look for
        
        const changeLinkUrl = function (button) {
            let urlParams = {
                'aid': newDigiAID
            };

            let url = new URL(button.href);

            if (urlParams) {
                Object.keys(urlParams).forEach(function(key) {
                    if (urlParams[key] === null) {
                        url.searchParams.delete(key);
                    } else if (urlParams[key] !== undefined) {
                        url.searchParams.set(key, urlParams[key]);
                    }
                });
            }
            if (order_pagePath) {
                let path = url.pathname.split('/');
                path.pop();
                path = path.join('/') + order_pagePath;
                url.pathname = path;
            }
            return url.toString();
        };

        //in this function we switch the AID of the button. AID is one of the url parameters. Leave other url parameters as they were.
        const switchLinkAID = function (button, oldAid, newAID) {
            let url = new URL(button.href);
            let newUrl = url.toString().replace(oldAid, newAID);
            return newUrl;
        };

        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-hs-mini.ab-hs-mini-modified');
            if(experimentExists) {
                sendGAEvent('exp already exists at ' + variantId);
            } else if(mainElement) {
                let miniPrice = document.querySelector('.ab-hs-mini-price');
                let miniNormPrice = document.querySelector('.ab-hs-mini-norm');
                let miniButton = document.querySelector('.ab-hs-mini-button');
                let digiPrice = document.querySelector('.ab-hs-digi-price');

                if(mainElement && miniPrice && miniNormPrice && miniButton) { //---------actual changes here
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
                    mainElement.classList.add('ab-hs-mini-modified', namelower, 'modified-by-conductrics-' + experimentId);

                    if(miniButton.href = changeLinkUrl(miniButton)) {
                        miniPrice.innerHTML = 'alk. <span>12,90</span> €/kk';
                        miniNormPrice.classList.add('hss-note-striked');
                        miniNormPrice.innerText = 'norm. 14,90 €/kk';
                        digiPrice.innerHTML = 'alk. <span>13,90</span> €/kk';
                        let buttonDigiplus = document.querySelector('.ab-hs-digi-button');
                        buttonDigiplus.href = switchLinkAID(buttonDigiplus, curDigiplusAID, newDigiplusAID);

                        //switch AID for other buttons
                        let buttonKaikki = document.querySelector('.ab-hs-kaikki-button');
                        let buttonPrint = document.querySelector('.ab-hs-printti-button');
                        
                        buttonKaikki.href = switchLinkAID(buttonKaikki, curKaikkiAID, newKaikkiAID);
                        buttonPrint.href = switchLinkAID(buttonPrint, curPrintAID, newPrintAID);

                        if(requireCdx) {
                            cdx.confirm(true);
                        }
                        return true;
                    }
                }
                else {
                    sendGAEvent('script error at ' + variantId + ': html invalid');
                }
            } else {
                sendGAEvent('script failed, element n/a at ' + variantId);
            }
        };

        doExperimentChanges(); //finally call the function to do the changes
    };
} catch(err) {
    sendGAEvent('script error at ' + variantId + ': ' + err);
}
 },'js-Z6ZFgIhrcWHwOrpCIXxE-1740562361': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
const experimentId = 'HS24-39';
const experimentName = experimentId + ' tv';
const variantId = 'C';
const description = ' digi pysyvästi edullisempi';
if(testing) { requireCdx = false; }
const noEligibilityRules = true;

if(!requireCdx) { testing = true; } //set this to true if not in conductrics for easier testing

//current AIDs that we use atm, changes these
const curKaikkiAID = 'GZ4Z5T4MX258U';
const curDigiAID = 'GDDFI2Z69TZRP';
const curDigiplusAID = 'GY5DMKV68C94D';
const curPrintAID = 'GRMN352POWTR9';

//new AIDs that are switched in use by script
const newDigiAID = 'G8XJFB9Q6WC9B';
const newDigiplusAID = 'G8P3NSPPK3JGR';
const newPrintAID = 'G993OSTMXIHJK';
const newKaikkiAID = 'GB2ZMDTU8SHHO';

const order_pagePath = '/hs-mini-tv-c';

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

try {
    if(requireCdx === false || noEligibilityRules) {
        //actual code begins

        let mainElement = document.querySelector('.ab-hs-mini'); //main element to look for
        
        const changeLinkUrl = function (button) {
            let urlParams = {
                'aid': newDigiAID
            };

            let url = new URL(button.href);

            if (urlParams) {
                Object.keys(urlParams).forEach(function(key) {
                    if (urlParams[key] === null) {
                        url.searchParams.delete(key);
                    } else if (urlParams[key] !== undefined) {
                        url.searchParams.set(key, urlParams[key]);
                    }
                });
            }
            if (order_pagePath) {
                let path = url.pathname.split('/');
                path.pop();
                path = path.join('/') + order_pagePath;
                url.pathname = path;
            }
            return url.toString();
        };

        //in this function we switch the AID of the button. AID is one of the url parameters. Leave other url parameters as they were.
        const switchLinkAID = function (button, oldAid, newAID) {
            let url = new URL(button.href);
            let newUrl = url.toString().replace(oldAid, newAID);
            return newUrl;
        };

        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-hs-mini.ab-hs-mini-modified');
            if(experimentExists) {
                sendGAEvent('exp already exists at ' + variantId);
            } else if(mainElement) {
                let miniPrice = document.querySelector('.ab-hs-mini-price');
                let miniNormPrice = document.querySelector('.ab-hs-mini-norm');
                let miniButton = document.querySelector('.ab-hs-mini-button');
                let digiPrice = document.querySelector('.ab-hs-digi-price');

                if(mainElement && miniPrice && miniNormPrice && miniButton) { //---------actual changes here
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
                    mainElement.classList.add('ab-hs-mini-modified', namelower, 'modified-by-conductrics-' + experimentId);

                    if(miniButton.href = changeLinkUrl(miniButton)) {
                        let miniRibbon = document.querySelector('.ab-hs-mini .hss-product-ribbon');
                        miniRibbon.classList.add('blue-ribbon');
                        miniRibbon.innerHTML = '<span class="hide-from-narrow">Säästötilaus: </span>12 kk 10 kk hinnalla pysyvästi!';
                        miniRibbon.style.backgroundColor = '#3860FF';
                        miniRibbon.style.color = '#ffffff';
                        miniRibbon.style.fontSize = '13px';
                        console.log(miniRibbon.clientWidth);
                        if(miniRibbon.clientWidth < 271) {
                            document.querySelector('.hide-from-narrow').style.display = 'none';
                        }

                        miniPrice.innerHTML = 'alk. <span>12,42</span> €/kk';
                        miniNormPrice.classList.add('hss-note-striked');
                        miniNormPrice.innerText = 'norm. 14,90 €/kk';
                        //digiPrice.innerHTML = 'alk. <span>14,90</span> €/kk';
                        let buttonDigiplus = document.querySelector('.ab-hs-digi-button');
                        buttonDigiplus.href = switchLinkAID(buttonDigiplus, curDigiplusAID, newDigiplusAID);

                        //switch AID for other buttons
                        let buttonKaikki = document.querySelector('.ab-hs-kaikki-button');
                        let buttonPrint = document.querySelector('.ab-hs-printti-button');
                        
                        buttonKaikki.href = switchLinkAID(buttonKaikki, curKaikkiAID, newKaikkiAID);
                        buttonPrint.href = switchLinkAID(buttonPrint, curPrintAID, newPrintAID);

                        if(requireCdx) {
                            cdx.confirm(true);
                        }
                        return true;
                    }
                }
                else {
                    sendGAEvent('script error at ' + variantId + ': html invalid');
                }
            } else {
                sendGAEvent('script failed, element n/a at ' + variantId);
            }
        };

        doExperimentChanges(); //finally call the function to do the changes
    };
} catch(err) {
    sendGAEvent('script error at ' + variantId + ': ' + err);
}
 },'js-JQJ4DhnzM70JgtGqBGEy-1740562361': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
const experimentId = 'HS24-39';
const experimentName = experimentId + ' tv';
const variantId = 'D';
const description = 'digi pysyvästi edullisempi ja digiplussa alhaisempi 12kk';
if(testing) { requireCdx = false; }
const noEligibilityRules = true;

if(!requireCdx) { testing = true; } //set this to true if not in conductrics for easier testing

//current AIDs that we use atm, changes these
const curKaikkiAID = 'GZ4Z5T4MX258U';
const curDigiAID = 'GDDFI2Z69TZRP';
const curDigiplusAID = 'GY5DMKV68C94D';
const curPrintAID = 'GRMN352POWTR9';

//new AIDs that are switched in use by script
const newDigiAID = 'G4QQNVUK2TVJY';
const newDigiplusAID = 'GZKWQWIF6Z32X';
const newPrintAID = 'G4O2RKVMYTJMH';
const newKaikkiAID = 'G6PN5FUUKI3TB';

const order_pagePath = '/hs-mini-tv-c';

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

try {
    if(requireCdx === false || noEligibilityRules) {
        //actual code begins

        let mainElement = document.querySelector('.ab-hs-mini'); //main element to look for
        
        const changeLinkUrl = function (button) {
            let urlParams = {
                'aid': newDigiAID
            };

            let url = new URL(button.href);

            if (urlParams) {
                Object.keys(urlParams).forEach(function(key) {
                    if (urlParams[key] === null) {
                        url.searchParams.delete(key);
                    } else if (urlParams[key] !== undefined) {
                        url.searchParams.set(key, urlParams[key]);
                    }
                });
            }
            if (order_pagePath) {
                let path = url.pathname.split('/');
                path.pop();
                path = path.join('/') + order_pagePath;
                url.pathname = path;
            }
            return url.toString();
        };

        //in this function we switch the AID of the button. AID is one of the url parameters. Leave other url parameters as they were.
        const switchLinkAID = function (button, oldAid, newAID) {
            let url = new URL(button.href);
            let newUrl = url.toString().replace(oldAid, newAID);
            return newUrl;
        };

        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-hs-mini.ab-hs-mini-modified');
            if(experimentExists) {
                sendGAEvent('exp already exists at ' + variantId);
            } else if(mainElement) {
                let miniPrice = document.querySelector('.ab-hs-mini-price');
                let miniNormPrice = document.querySelector('.ab-hs-mini-norm');
                let miniButton = document.querySelector('.ab-hs-mini-button');
                let digiPrice = document.querySelector('.ab-hs-digi-price');

                if(mainElement && miniPrice && miniNormPrice && miniButton) { //---------actual changes here
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
                    mainElement.classList.add('ab-hs-mini-modified', namelower, 'modified-by-conductrics-' + experimentId);

                    if(miniButton.href = changeLinkUrl(miniButton)) {
                        let miniRibbon = document.querySelector('.ab-hs-mini .hss-product-ribbon');
                        miniRibbon.classList.add('blue-ribbon');
                        miniRibbon.innerHTML = '<span class="hide-from-narrow">Säästötilaus: </span>12 kk 10 kk hinnalla pysyvästi!';
                        miniRibbon.style.backgroundColor = '#3860FF';
                        miniRibbon.style.color = '#ffffff';
                        miniRibbon.style.fontSize = '13px';
                        console.log(miniRibbon.clientWidth);
                        if(miniRibbon.clientWidth < 271) {
                            document.querySelector('.hide-from-narrow').style.display = 'none';
                        }

                        miniPrice.innerHTML = 'alk. <span>12,42</span> €/kk';
                        miniNormPrice.classList.add('hss-note-striked');
                        miniNormPrice.innerText = 'norm. 14,90 €/kk';
                        digiPrice.innerHTML = 'alk. <span>13,90</span> €/kk';
                        let buttonDigiplus = document.querySelector('.ab-hs-digi-button');
                        buttonDigiplus.href = switchLinkAID(buttonDigiplus, curDigiplusAID, newDigiplusAID);

                        //switch AID for other buttons
                        let buttonKaikki = document.querySelector('.ab-hs-kaikki-button');
                        let buttonPrint = document.querySelector('.ab-hs-printti-button');
                        
                        buttonKaikki.href = switchLinkAID(buttonKaikki, curKaikkiAID, newKaikkiAID);
                        buttonPrint.href = switchLinkAID(buttonPrint, curPrintAID, newPrintAID);

                        if(requireCdx) {
                            cdx.confirm(true);
                        }
                        return true;
                    }
                }
                else {
                    sendGAEvent('script error at ' + variantId + ': html invalid');
                }
            } else {
                sendGAEvent('script failed, element n/a at ' + variantId);
            }
        };

        doExperimentChanges(); //finally call the function to do the changes
    };
} catch(err) {
    sendGAEvent('script error at ' + variantId + ': ' + err);
}
 },'js-sLPHFwQASNooMDHFspGJ': function (cdx) { window.conductrics_checkIfEligibileForP2p = function(isLoggedIn, p2p_lightgbm, p2p) {
    var isIphone = false;
    var isNotDirect = false;
    var isNotLoggedIn = false;
    var isNotTopDeciles = false;
    var topDecilesArray = ['1', '2', '3', '4']; //which deciles we look at (these are strings)

    if(navigator.userAgent.includes("iPhone")) {
    	isIphone = true; //is iphone because useragent has iphone
    }

    if(document.referrer != '' && document.referrer.includes('.hs.fi') === false) {
        isNotDirect = true; //is not direct because referrer exists and it's not hs.fi
    }

    if(isLoggedIn === 'Not_LoggedIn') {
        isNotLoggedIn = true; //is not logged-in because isLoggedIn=Not_LoggedIn
    }

    if(!topDecilesArray.includes(p2p_lightgbm) || !topDecilesArray.includes(p2p)) {
        isNotTopDeciles = true; // is not top deciles because either p2p or p2p_lightgbm is bottom decile
    }

    //if ALL of those are TRUE, then exclude from this agent.
    if(isIphone && isNotDirect && isNotLoggedIn && isNotTopDeciles) {
        return false;
    }
    return true;
}
return true;
 },'js-WzEdgyKyh8OFgTnwCfE0-1740378785': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if (!requireCdx) { testing = true; }
const experimentId = 'HS25-40';
const variantId = 'A';
const experimentName = experimentId + ' Timanttimuuri ot';
const variantName = variantId + ' control';
let currentDefaultButtonText = 'Tilaa HS Digi+ 1. kk 0 €'; //nykyisen napin teksti
// currentDefaultButtonText = 'Lue 2 viikkoa maksutta'; //nykyisen napin teksti
const paywallType = 'hard'; // hard or archived
const newAID = 'G6QWCUNRNVIKP';
const pagePath = false;
const feedTitle = 'Hesarin digitilauksella pääset lukemaan rajoituksetta tämän ja yli 400 uutta timanttiartikkelia kuukaudessa';

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    //if(true) { //use this if not HS ot
    if(requireCdx === false || window.conductrics_checkIfEligibileForP2p(cdx.trait('isLoggedIn'), cdx.trait('p2p_lightgbm'), cdx.trait('p2p'))) {       
        const changeButtonUrlAndText = function(button) {
            let urlParams = {
                'embedded': null,
                'offer': null,
                'aid': newAID,
                'ref': null,
                'showPaymentPeriodList': null,
                'variant': null
            };

            let url = new URL(button.href);
            // Update search params
            if (urlParams) {
                Object.keys(urlParams).forEach(function(key) {
                    if (urlParams[key] === null) {
                        url.searchParams.delete(key);
                    } else if (urlParams[key] !== undefined) {
                        url.searchParams.set(key, urlParams[key]);
                    }
                });
            }
            // Update path
            if (pagePath) {
                let path = url.pathname.split('/');
                path.pop();
                path = path.join('/') + pagePath;
                url.pathname = path;
            }
            button.href = url.toString();
            return button;
        };
    
        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-test-paywall-modified');
            let title = document.querySelector('[data-ab="' + paywallType + '-paywall-title"]');
            let subtitle = document.querySelector('[data-ab="' + paywallType + '-paywall-subtitle"]');
            let button = document.querySelector('[data-ab="' + paywallType + '-paywall-subscribe-button"]');
            let secondaryButton = document.querySelector('[data-ab="' + paywallType + '-paywall-secondary-subscribe-button"]');
            if(experimentExists) {
                sendGAEvent('script failed, paywall already modified');
            } else if(title && button) { 
                if(button.innerText.trim() === currentDefaultButtonText) { //actual changes here
                    button = changeButtonUrlAndText(button);
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
                    
                    title.classList.add('ab-test-paywall-modified', namelower);
            
                    dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
                    //dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': 'change offer to sample at timanttimuuri', 'eventLabel': experimentName + ' ' + variantName});
                    
                    if(feedTitle) {
                        let paywallOffering = document.querySelector('[data-ab="' + paywallType + '-paywall-offering"]');
                        if(paywallOffering) {
                            paywallOffering.innerText = feedTitle;
                        }
                    }

                    if(requireCdx) {
                        cdx.confirm(true);
                    }
                    return true;
                }
                else {
                    sendGAEvent('script failed, primary button text unexpected');
                }
            } else {
                sendGAEvent('script failed, paywall html unexpected');
            }
        };

        doExperimentChanges();
    }
} catch(err) {   
    sendGAEvent('script error: ' + err);
}
 },'js-n7tENWaxEdGhjkJiS4Dc-1740378785': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if (!requireCdx) { testing = true; }
const experimentId = 'HS25-40';
const variantId = 'B';
const experimentName = experimentId + ' Timanttimuuri ot';
const variantName = variantId + ' radio sykloni 2+6 -50%';
let currentDefaultButtonText = 'Tilaa HS Digi+ 1. kk 0 €'; //nykyisen napin teksti
// currentDefaultButtonText = 'Lue 2 viikkoa maksutta'; //nykyisen napin teksti
const paywallType = 'hard'; // hard or archived
const commonDateUntil = 60; //false or number of days
const miniDateUntil = 60;
const digiDateUntil = 60;
const cycloneDateUntil = 240;
const miniAID = 'GQ4H3XH69DZY2'; //HS Digi
const digiAID = 'GK8HTBY5VDLK8'; //HS Digi+
const miniPath = '/api/safe/v1/web/subscription-funnel/hs-mini-tutustu-v62';
const digiPath = '/api/safe/v1/web/subscription-funnel/hs-digi-tutustu-v62';
const feedTitle = 'Hesarin digitilauksella pääset lukemaan rajoituksetta tämän ja yli 400 uutta timanttiartikkelia kuukaudessa';
const defaultProduct = 'Digi+'; //which product is pre-selected

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    //if(true) { //use this if not HS ot
    if(requireCdx === false || window.conductrics_checkIfEligibileForP2p(cdx.trait('isLoggedIn'), cdx.trait('p2p_lightgbm'), cdx.trait('p2p'))) {
        //helper function to create any html element
        const createElem = function(tag, classes, text) {
            let elem = document.createElement(tag);
            if(classes) {
                //split classes by space
                classes = classes.split(' ');
                for(let i = 0; i < classes.length; i++) {
                    elem.classList.add(classes[i]);
                }
            }
            if(text) {
                elem.innerHTML = text;
            }
            return elem;
        }

        //helper function to replace text in correct child node
        function replaceText(node, newText) {
            if (node.nodeType === Node.TEXT_NODE) {
                node.nodeValue = newText;
            } else {
                node.childNodes.forEach((child) => replaceText(child, newText));  
            }
        }

        //helper function to create product element 
        const createProductElement = function(productname, title, features, button) {
            let product = createElem('label', 'ab-test-paywall-product', false);
            product.setAttribute('product', productname);
            if(productname === defaultProduct) { //this is the default option
                product.classList.add('selected'); //mark it selected
            }
            let container = createElem('div', 'ab-product-container', false);

            let check = createElem('input', 'ab-radio', false);
            check.type = 'radio';
            check.name = 'product';
            if(productname === defaultProduct) {
                check.checked = 'checked';
            }
            let productcontent = createElem('div', 'ab-product-content', false);
            let producttitle = createElem('p', 'ab-product-title', title);

            container.appendChild(check);
            productcontent.appendChild(producttitle);

            if(features) {
                let producttext = createElem('p', 'ab-product-text', features);
                productcontent.appendChild(producttext);
            }
            
            container.appendChild(productcontent);
            product.appendChild(container);
            check.onchange = function(e) {
                sendGAEvent('click product ' + productname);
                changeButtonUrlAndText(button, productname);
            }
            return product;
        }

        //helper function to change button url and text
        const changeButtonUrlAndText = function (button, pos) {          
            let urlParams = false;
            let pagePath = false;
            //ab-test-hard-paywall-subtitle
            let cancelAnytime = 'Voit irtisanoa tilauksen koska tahansa.';
            let allProductElements = document.querySelectorAll('.ab-test-paywall-product');
            allProductElements.forEach(function (element) {
                element.classList.remove('selected');
                if(element.getAttribute('product') === pos) {
                    element.classList.add('selected');
                }
            });

            if(pos === 'Digi') {
              pagePath = miniPath;
              urlParams = {
                embedded: null,
                aid: miniAID,
                ref: 'maksumuuri_kova_eiot',
                showPaymentPeriodList: null,
                offer: 3,
                variant: null
              }

              button.innerHTML = 'Tilaa HS ' + pos + ' &nbsp; 2 kk 0 €';
              //let pvmSpan = calculateDays(60, ' asti');
              //document.querySelector('.ab-test-hard-paywall-title').innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
              //document.querySelector('.ab-test-hard-paywall-subtitle').innerText = cancelAnytime;
            }
            else if(pos === 'Digi+') {
                pagePath = digiPath;
                urlParams = {
                  embedded: null,
                  aid: digiAID,
                  ref: 'maksumuuri_kova_eiot',
                  showPaymentPeriodList: null,
                  offer: null,
                  variant: null
                }
  
                button.innerHTML = 'Tilaa HS ' + pos + ' &nbsp; 2 kk 0 €';
                //document.querySelector('.ab-test-hard-paywall-subtitle').innerText = cancelAnytime;
                //let pvmSpan = calculateDays(60, ' asti');
                //document.querySelector('.ab-test-hard-paywall-title').innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
            }
            else {  //sample?
                //shouldnt happen
            }
          
            let url = new URL(button.href);
            // Update search params
            if (urlParams) {
              Object.keys(urlParams).forEach(function (key) {
                if (urlParams[key] === null) {
                  url.searchParams.delete(key)
                } else if (urlParams[key] !== undefined) {
                  url.searchParams.set(key, urlParams[key])
                }
              })
            }
            // Update path
            if (pagePath) {
                url.pathname = pagePath;
            }

            button.href = url.toString();
            button.setAttribute('data-product-name', pos);
            button.onclick = function (e) {
                sendGAEvent('click subscribe ' + pos + ' at ' + variantId)
            }
            return button;
        }

        //helper function to calculate days d.m. 
        const calculateDays = function(d, suffix) {
            let date = new Date();
            date.setDate(date.getDate() + d);
            let dd = date.getDate();
            let mm = date.getMonth()+1;
            let pvmSpan = false;
            if(suffix) {
                pvmSpan = dd.toString() + '.' + mm.toString() + '. ' + suffix;
            }
            else {
                pvmSpan = dd.toString() + '.' + mm.toString() + '.'
            }
            return pvmSpan;
        }

        //helper function to insert style
        const insertStyle = function(containerdiv) {
            let style = `
                    :root {
                        --main-color: #191919;
                        --underline-color: #787878;
                        --line-color: #E9EAED;
                        --main-font: 'Helsingin', Arial, sans-serif;
                    }
                        
                    .ab-test-paywall-container {
                        display: flex;
                        flex-direction: column;
                        width: 100%;
                        max-width: calc(100% - 16px);
                    }

                    .ab-test-paywall-container [data-ab="hard-paywall-title"] {
                        font-size: 26px;
                        margin-bottom: 16px;
                        text-align: center;
                    }

                    .ab-test-paywall-product {
                        display: flex;
                        flex-direction: column;
                        align-items: baseline;
                        font-size: 16px;
                        font-family: var(--main-font);
                        margin: 0 auto;
                        border-top: 1px solid var(--line-color);
                        padding: 12px 0px;
                        cursor: pointer;
                        width: 100%;
                        border: 1px solid #000;
                        border-radius: 4px;
                        padding:0;
                        margin-bottom: 8px;
                        background: #F8F8F8;
                    }

                    .ab-test-paywall-product[product="Kaikki"] {
                        background: #FFF6E5;
                    }

                    .ab-product-container {
                        display: flex;
                        flex-direction: row;
                        align-items: baseline;
                        padding: 12px 12px 8px;
                        width: 100%;
                    }

                    .ab-test-paywall-delimeter {
                        overflow: hidden;
                        margin-top: 0;
                        margin-bottom: 8px;

                        text-align: center;
                        font-family: var(--main-font);
                        font-size: 14px;
                        font-style: normal;
                        font-weight: 500;
                        line-height: normal;
                        letter-spacing: 0.36px;
                    }
                    
                    .ab-test-paywall-delimeter:before, .ab-test-paywall-delimeter:after {
                        background-color: #ccc;
                        content: "";
                        display: inline-block;
                        height: 0.5px;
                        position: relative;
                        vertical-align: middle;
                        width: 50%;
                    }

                    .ab-test-paywall-delimeter:before {
                        right: 8px;
                        margin-left: -50%;
                    }
    
                    .ab-test-paywall-delimeter:after {
                        left: 8px;
                        margin-right: -50%;
                    }

                    .ab-test-paywall-product .ab-product-content {
                        display: flex;
                        flex-direction: column;
                        margin-left: 12px;
                        width: 100%;
                    }

                    .ab-test-paywall-product .ab-radio {
                        transform: scale(1.6);
                        accent-color: var(--main-color);
                        cursor: pointer;
                    }

                    @supports (-moz-appearance:none) {
                        .ab-test-paywall-product .ab-radio {
                            transform: scale(1.5);
                        }
                    }

                    .ab-test-paywall-product .ab-product-title {
                        font-weight: 600;
                        padding-bottom: 4px;
                        font-size: 14px;
                    }

                    .ab-test-paywall-product .ab-product-title > span {
                        font-size: 14px;
                        font-weight: 600;
                        float: right;
                        letter-spacing: -0.5px;
                    }

                    .ab-test-paywall-product .ab-product-title > span > span {
                        font-size: 12px;
                        font-weight: 300;
                        color: #666;
                        text-decoration: line-through;
                        padding-left: 4px;
                        letter-spacing: 0;
                    }

                    .ab-test-paywall-product .ab-product-text {
                        font-size: 12px;
                        margin-top: 2px;
                        color: #555;
                        text-align: left;
                    }

                    .ab-test-paywall-product .ab-product-text > span {
                        margin-right: 8px;
                    }

                    .ab-test-paywall-product .ab-product-text svg {
                        fill: #191919;
                        display: inline;
                        margin-right: 2px;
                        vertical-align: baseline;
                        height: 10px;
                    }

                    .ab-test-paywall-additional-info {
                        font-family: var(--main-font);
                        font-size: 15px;
                        font-weight: 600;
                        line-height: 1.2;
                        text-align: center;
                        margin-bottom: 16px;
                    }

                    [data-ab="hard-paywall-subtitle"] {
                        font-size: 15px;
                        font-family: var(--main-font);
                        margin-top: 12px;
                        margin-bottom: 32px;
                        text-align: center;
                    }

                    [data-ab="hard-paywall-subscribe-button"] {
                        margin: 12px auto 4px;
                        width: 260px;
                        font-family: var(--main-font);
                        font-size: 16px;
                        font-weight: 600;
                    }

                    [data-ab="hard-paywall-subscribe-button"]:active {
                        margin: 12px auto 5px;
                        width: 258px;
                    }

                    [data-ab="hard-paywall-login-link"] {
                        text-decoration: underline;
                        font-size: 14px;   
                        margin-bottom: 24px;
                        margin-top: 16px;
                    }

                    [data-ab="hard-paywall-offering"] {
                        max-width: 480px;
                    }

                    /* dark mode support */
                    .sndp-dark .ab-test-paywall-product {
                        border: 1px solid #ccc;
                        background: #262626;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-text svg {
                        fill: #AFAFAF;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-title > span, .sndp-dark .ab-test-paywall-product .ab-product-text {
                        color: #fff;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-title > span > span {
                        color: #AFAFAF;
                    }
                    
                    @media (min-width: 380px) {
                        .ab-test-paywall-container {
                            max-width: 350px;
                        }

                        .ab-test-paywall-product .ab-product-text {
                            font-size: 14px;
                            margin-top: 4px;
                        }

                        .ab-test-paywall-product .ab-product-title, .ab-test-paywall-product .ab-product-title > span {
                            font-size: 16px;
                            letter-spacing: 0;
                        }

                        .ab-test-paywall-product .ab-product-title > span > span {
                            font-size: 14px;
                            padding-left: 8px;
                        }

                        .ab-test-paywall-product .ab-product-content {
                            margin-left: 16px;
                        }

                        .ab-test-paywall-product .ab-product-text svg {
                            margin-right: 4px;
                            height: 12px;
                        }

                        .ab-test-paywall-product .ab-product-text > span {
                            margin-right: 12px;
                        }
                    }
            `;
            
            if(document.location.pathname.indexOf('/visio/') > -1 ||
            document.location.pathname.indexOf('/teknologia/') > -1 ||
            document.location.pathname.indexOf('/talous/') > -1 ||
            document.location.pathname.indexOf('/autot/') > -1) {
            style += `	
                    .ab-test-paywall-product {
                        background: #F5E6DC;
                    }
            
                    .ab-test-paywall-grid .ab-grid-choose-button {
                        background: #b7384b;
                    }

                    .ab-test-paywall-product .ab-radio {
                        accent-color: #b7384b;
                    }

                    .ab-test-paywall-grid .ab-grid-choose-button:hover, .ab-test-paywall-grid .ab-grid-choose-button:active, .ab-test-paywall-grid .ab-grid-choose-button:focus {
                        background: #752f35;
                    }
                `;
            }
                        
            let styleSheet = document.createElement("style");
            styleSheet.type = "text/css";
            containerdiv.appendChild(styleSheet);
            styleSheet.innerText = style;
        };

        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-test-paywall-modified');
            let paywall = document.querySelector('[data-ab="' + paywallType + '-paywall"]');
            let title = document.querySelector('[data-ab="' + paywallType + '-paywall-title"]');
            let subtitle = document.querySelector('[data-ab="' + paywallType + '-paywall-subtitle"]');
            let button = document.querySelector('[data-ab="' + paywallType + '-paywall-subscribe-button"]');
            let secondaryButton = document.querySelector('[data-ab="' + paywallType + '-paywall-secondary-subscribe-button"]');
            let brazeModifiedPaywall = document.querySelector('.ab-test-paywall-modified-by-braze');
            if(brazeModifiedPaywall) {
                //sendGAEvent('script failed, paywall already modified by Braze');
            }
            else if(experimentExists) {
                //sendGAEvent('script failed, paywall already modified');
            } else if(title && button) { 
                if(button.innerText.trim() === currentDefaultButtonText) { //actual changes here
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
                    title.classList.add('ab-test-paywall-modified', namelower);

                    if(secondaryButton) { //katso muut tarjoukset button on HS
                        secondaryButton.style.display = 'none';
                    }

                    let loginLink = paywall.querySelector('[data-ab="' + paywallType + '-paywall-login-link"]');
                    if(loginLink) {
                        let paywallIndicator = paywall.querySelector('[data-ab="' + paywallType + '-paywall-logo"]').parentNode;
                        paywallIndicator.insertBefore(loginLink, paywallIndicator.childNodes[2]); //insert in between paywall indicators
                    }

                    //create container div - which contains all the elements
                    let containerdiv = createElem('div', 'ab-test-paywall-container', false);

                    //change subscribe button url and text
                    button = changeButtonUrlAndText(button, 'Digi+');

                    //main date until in title
                    if(commonDateUntil) {
                        let pvmSpan = calculateDays(commonDateUntil, 'asti');
                        title.innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
                    }

                    //let checkIconSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14" fill="none"><path d="M6.05367 8.43079L4.50494 6.88207C4.41264 6.78976 4.29662 6.74254 4.15687 6.74041C4.01713 6.73826 3.89897 6.78548 3.80239 6.88207C3.70581 6.97865 3.65752 7.09574 3.65752 7.23334C3.65752 7.37094 3.70581 7.48803 3.80239 7.5846L5.63187 9.41409C5.75238 9.5346 5.89298 9.59486 6.05367 9.59486C6.21435 9.59486 6.35494 9.5346 6.47545 9.41409L10.1844 5.70512C10.2767 5.61282 10.324 5.4968 10.3261 5.35705C10.3282 5.21731 10.281 5.09915 10.1844 5.00257C10.0878 4.90599 9.97076 4.8577 9.83316 4.8577C9.69556 4.8577 9.57847 4.90599 9.48189 5.00257L6.05367 8.43079ZM7.00094 13.3333C6.12498 13.3333 5.30163 13.1671 4.53087 12.8347C3.7601 12.5022 3.08965 12.051 2.5195 11.4812C1.94935 10.9113 1.49798 10.2411 1.16539 9.47067C0.832798 8.70026 0.666504 7.87708 0.666504 7.00112C0.666504 6.12517 0.832726 5.30181 1.16517 4.53105C1.49762 3.76029 1.94878 3.08983 2.51867 2.51969C3.08857 1.94953 3.75873 1.49816 4.52915 1.16557C5.29957 0.832982 6.12275 0.666687 6.9987 0.666687C7.87466 0.666687 8.69802 0.83291 9.46877 1.16535C10.2395 1.4978 10.91 1.94897 11.4801 2.51885C12.0503 3.08875 12.5017 3.75892 12.8343 4.52934C13.1668 5.29975 13.3331 6.12293 13.3331 6.99889C13.3331 7.87484 13.1669 8.6982 12.8345 9.46895C12.502 10.2397 12.0509 10.9102 11.481 11.4803C10.9111 12.0505 10.2409 12.5019 9.47049 12.8344C8.70008 13.167 7.87689 13.3333 7.00094 13.3333ZM6.99982 12.3333C8.48871 12.3333 9.74982 11.8167 10.7832 10.7833C11.8165 9.75001 12.3332 8.48889 12.3332 7C12.3332 5.51112 11.8165 4.25 10.7832 3.21667C9.74982 2.18334 8.48871 1.66667 6.99982 1.66667C5.51093 1.66667 4.24982 2.18334 3.21649 3.21667C2.18315 4.25 1.66649 5.51112 1.66649 7C1.66649 8.48889 2.18315 9.75001 3.21649 10.7833C4.24982 11.8167 5.51093 12.3333 6.99982 12.3333Z" fill="#191919"/></svg>';
                    let readingRightsForOneSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="2 2 32 32" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M18.3725 13.5C20.0293 13.5 21.3725 12.1569 21.3725 10.5C21.3725 8.84315 20.0293 7.5 18.3725 7.5C16.7156 7.5 15.3725 8.84315 15.3725 10.5C15.3725 12.1569 16.7156 13.5 18.3725 13.5ZM18.3725 16.5C21.6862 16.5 24.3725 13.8137 24.3725 10.5C24.3725 7.18629 21.6862 4.5 18.3725 4.5C15.0588 4.5 12.3725 7.18629 12.3725 10.5C12.3725 13.8137 15.0588 16.5 18.3725 16.5ZM18.3725 18C23.8903 18 27.2436 20.6846 28.948 23.6222C28.9709 23.6617 28.9918 23.7017 29.0107 23.7423C29.3011 24.1997 29.3328 24.7992 29.0421 25.3002C27.3377 28.2379 23.8903 31.1253 18.3725 31.1253C12.8547 31.1253 9.40724 28.2379 7.70281 25.3002C7.41216 24.7992 7.44389 24.1999 7.73416 23.7425C7.7531 23.7019 7.77402 23.6617 7.79695 23.6222C9.50137 20.6846 12.8547 18 18.3725 18ZM10.7754 24.5282C12.1114 26.3666 14.5065 28.1253 18.3725 28.1253C22.2385 28.1253 24.6335 26.3666 25.9696 24.5282C24.6675 22.6761 22.3285 21 18.3725 21C14.4164 21 12.0774 22.6761 10.7754 24.5282Z"></path></svg>';
                    let readingRightsForFourSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="13" viewBox="0 0 14 13" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.5809 3.16667C7.5809 4.63943 6.387 5.83333 4.91424 5.83333C3.44148 5.83333 2.24757 4.63943 2.24757 3.16667C2.24757 1.69391 3.44148 0.5 4.91424 0.5C6.387 0.5 7.5809 1.69391 7.5809 3.16667ZM6.24757 3.16667C6.24757 3.90305 5.65062 4.5 4.91424 4.5C4.17786 4.5 3.5809 3.90305 3.5809 3.16667C3.5809 2.43029 4.17786 1.83333 4.91424 1.83333C5.65062 1.83333 6.24757 2.43029 6.24757 3.16667Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.61447 8.99877C8.85695 7.69314 7.3666 6.5 4.91424 6.5C2.46188 6.5 0.97153 7.69314 0.214008 8.99877C0.20382 9.01633 0.194523 9.03416 0.186103 9.05221C0.0570957 9.2555 0.0429897 9.52189 0.17217 9.74454C0.929692 11.0502 2.46188 12.3334 4.91425 12.3334C7.36661 12.3334 8.8988 11.0502 9.65632 9.74454C9.78552 9.52186 9.77139 9.25543 9.64234 9.05214C9.63393 9.03411 9.62464 9.0163 9.61447 8.99877ZM4.91425 11.0001C3.19602 11.0001 2.13155 10.2185 1.53775 9.40141C2.11643 8.57826 3.15599 7.83333 4.91424 7.83333C6.67249 7.83333 7.71205 8.57827 8.29073 9.40142C7.69693 10.2185 6.63246 11.0001 4.91425 11.0001Z"></path><path d="M8.58091 5.83333C8.1137 5.83333 7.67455 5.71318 7.29267 5.50209C7.60603 5.183 7.85567 4.80114 8.021 4.37709C8.19125 4.45598 8.38094 4.5 8.58091 4.5C9.31729 4.5 9.91424 3.90305 9.91424 3.16667C9.91424 2.43029 9.31729 1.83333 8.58091 1.83333C8.38094 1.83333 8.19125 1.87736 8.021 1.95624C7.85567 1.5322 7.60603 1.15033 7.29267 0.831247C7.67455 0.620154 8.1137 0.5 8.58091 0.5C10.0537 0.5 11.2476 1.69391 11.2476 3.16667C11.2476 4.63943 10.0537 5.83333 8.58091 5.83333Z"></path><path d="M9.66834 10.8844C9.21539 11.4261 8.63188 11.9239 7.91194 12.3003C8.12684 12.322 8.34979 12.3334 8.58092 12.3334C11.0333 12.3334 12.5655 11.0502 13.323 9.74454C13.4522 9.52186 13.4381 9.25543 13.309 9.05214C13.3006 9.03411 13.2913 9.0163 13.2811 8.99877C12.5236 7.69314 11.0333 6.5 8.58091 6.5C8.36457 6.5 8.15572 6.50929 7.95419 6.52711C8.67207 6.90013 9.24931 7.39617 9.6959 7.94617C10.7985 8.18463 11.5135 8.77001 11.9574 9.40142C11.5006 10.0299 10.7654 10.6374 9.66834 10.8844Z"></path></svg>';
                    let facsimileSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="15" viewBox="0 0 16 15" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M15.0282 0.519266C14.9956 0.319292 14.822 0.166664 14.6128 0.166664H3.13458L3.06631 0.172173C2.86634 0.20479 2.71371 0.378338 2.71371 0.587534L2.71295 3.94837L0.838847 3.94897L0.768529 3.95481C0.562854 3.98937 0.408842 4.1729 0.41839 4.38847L0.818935 13.4318L0.847872 13.5654C1.0317 14.3071 1.55045 14.7823 2.27412 14.7823H13.6125L13.7284 14.7778C14.455 14.7212 15.0337 14.1365 15.0337 13.4132V0.587534L15.0282 0.519266ZM3.55469 1.0084H14.1912L14.192 13.4132L14.1868 13.4837C14.1491 13.7378 13.9103 13.9406 13.6125 13.9406H2.27412L2.18767 13.9352C1.90852 13.8994 1.72045 13.6867 1.65272 13.3339L1.27816 4.79011H2.71295L2.71371 12.0658L2.71922 12.1341C2.75184 12.334 2.92539 12.4867 3.13458 12.4867L3.20285 12.4812C3.40282 12.4485 3.55545 12.275 3.55545 12.0658L3.55469 1.0084Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.25632 2.46232H12.3172C12.5496 2.46232 12.7381 2.65075 12.7381 2.88319V7.47449C12.7381 7.70693 12.5496 7.89536 12.3172 7.89536H9.25632C9.02388 7.89536 8.83545 7.70693 8.83545 7.47449V2.88319C8.83545 2.65075 9.02388 2.46232 9.25632 2.46232ZM11.8963 7.05362V3.30406H9.67719V7.05362H11.8963Z"></path><path d="M7.34328 4.75797V5.59971H5.04763V4.75797H7.34328Z"></path><path d="M7.34328 2.46232V3.30406H5.04763V2.46232H7.34328Z"></path><path d="M7.34328 7.05362V7.89536H5.04763V7.05362H7.34328Z"></path><path d="M12.6998 9.34927V10.191H5.04763V9.34927H12.6998Z"></path><path d="M12.6998 11.6449V12.4867H5.04763V11.6449H12.6998Z"></path></svg>';

                    let product1 = createProductElement('Digi+', 'HS Digi+ <span>2 kk 0 € <span>(norm. 20,90 €/kk)</span></span>', readingRightsForFourSvg + '<span>Lukuoikeus neljälle</span> ' + facsimileSvg + '<span>Näköislehti</span>', button);
                    let product2 = createProductElement('Digi', 'HS Digi <span>2 kk 0 € <span>(norm. 14,90 €/kk)<span></span>', readingRightsForOneSvg + '<span>Lukuoikeus yhdelle</span>', button);
                    
                    subtitle.innerText = 'Voit irtisanoa tilauksen koska tahansa.';
                    subtitle.classList.remove('paywall__ingress');

                    //append elements to container one by one
                    containerdiv.appendChild(title);
                    
                    //delimeter element with TAI and border
                    /*let delimeter = createElem('div', 'ab-test-paywall-delimeter', '<span>TAI</span>');
                    containerdiv.appendChild(delimeter);*/
                    
                    containerdiv.appendChild(product1);
                    containerdiv.appendChild(product2);

                    if(cycloneDateUntil) { //cyclone subtitle
                        let pvmSpan = calculateDays(cycloneDateUntil, 'asti');
                        let cycloneText = createElem('div', 'paywall__text-block ab-test-paywall-additional-info', 'Lisäksi voit maksuttoman jakson jälkeen jatkaa tilausta 50 % alennuksella ' + pvmSpan);
                        containerdiv.appendChild(cycloneText);
                    }

                    containerdiv.appendChild(button);
                    containerdiv.appendChild(subtitle);

                    insertStyle(containerdiv);
                    paywall.insertBefore(containerdiv, paywall.childNodes[1]); //insert as 2nd element on paywall after paywall indicator	
            
                    dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
                    dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': 'change offer to cyclone at timanttimuuri', 'eventLabel': experimentName + ' ' + variantName});

                    if(feedTitle) { //rss feed under paywall element and this is the title of that feed
                        let paywallOffering = document.querySelector('.ab-test-hard-paywall-offering');
                        if(paywallOffering) {
                            paywallOffering.innerText = feedTitle;
                        }
                    }
                    
                    if(requireCdx) {
                        cdx.confirm(true);
                    }
                    return true;
                }
                else {
                    sendGAEvent('script failed, primary button text unexpected');
                }
            } else {
                sendGAEvent('script failed, paywall html unexpected');
            }
        };

        doExperimentChanges();
    };
} catch(e) {
    console.log(e)

  let err = e
  let err_split = e.stack.split('\n')
  let err_line = false
  if (err_split[1]) {
    err_line = err_split[1].split('>:')
  }
  if (err_line[1]) {
    err = err_line[1]
  }
  sendGAEvent('script error: ' + err)
}
 },'js-V3HqmOQAONCQTI1ph7Tt-1740378785': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if (!requireCdx) { testing = true; }
const experimentId = 'HS25-40';
const variantId = 'C';
const experimentName = experimentId + ' Timanttimuuri ot';
const variantName = variantId + ' radio sykloni 2+4 -40%';
let currentDefaultButtonText = 'Tilaa HS Digi+ 1. kk 0 €'; //nykyisen napin teksti
// currentDefaultButtonText = 'Lue 2 viikkoa maksutta'; //nykyisen napin teksti
const paywallType = 'hard'; // hard or archived
const commonDateUntil = 60; //false or number of days
const miniDateUntil = 60;
const digiDateUntil = 60;
const cycloneDateUntil = 180;
const miniAID = 'GUMDQXYIS8JTM'; //HS Digi
const digiAID = 'GGWLORYTBVNS6'; //HS Digi+
const miniPath = '/api/safe/v1/web/subscription-funnel/hs-mini-tutustu-v624';
const digiPath = '/api/safe/v1/web/subscription-funnel/hs-digi-tutustu-v624';
const feedTitle = 'Hesarin digitilauksella pääset lukemaan rajoituksetta tämän ja yli 400 uutta timanttiartikkelia kuukaudessa';
const defaultProduct = 'Digi+'; //which product is pre-selected

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    //if(true) { //use this if not HS ot
    if(requireCdx === false || window.conductrics_checkIfEligibileForP2p(cdx.trait('isLoggedIn'), cdx.trait('p2p_lightgbm'), cdx.trait('p2p'))) {
        //helper function to create any html element
        const createElem = function(tag, classes, text) {
            let elem = document.createElement(tag);
            if(classes) {
                //split classes by space
                classes = classes.split(' ');
                for(let i = 0; i < classes.length; i++) {
                    elem.classList.add(classes[i]);
                }
            }
            if(text) {
                elem.innerHTML = text;
            }
            return elem;
        }

        //helper function to replace text in correct child node
        function replaceText(node, newText) {
            if (node.nodeType === Node.TEXT_NODE) {
                node.nodeValue = newText;
            } else {
                node.childNodes.forEach((child) => replaceText(child, newText));  
            }
        }

        //helper function to create product element 
        const createProductElement = function(productname, title, features, button) {
            let product = createElem('label', 'ab-test-paywall-product', false);
            product.setAttribute('product', productname);
            if(productname === defaultProduct) { //this is the default option
                product.classList.add('selected'); //mark it selected
            }
            let container = createElem('div', 'ab-product-container', false);

            let check = createElem('input', 'ab-radio', false);
            check.type = 'radio';
            check.name = 'product';
            if(productname === defaultProduct) {
                check.checked = 'checked';
            }
            let productcontent = createElem('div', 'ab-product-content', false);
            let producttitle = createElem('p', 'ab-product-title', title);

            container.appendChild(check);
            productcontent.appendChild(producttitle);

            if(features) {
                let producttext = createElem('p', 'ab-product-text', features);
                productcontent.appendChild(producttext);
            }
            
            container.appendChild(productcontent);
            product.appendChild(container);
            check.onchange = function(e) {
                sendGAEvent('click product ' + productname);
                changeButtonUrlAndText(button, productname);
            }
            return product;
        }

        //helper function to change button url and text
        const changeButtonUrlAndText = function (button, pos) {          
            let urlParams = false;
            let pagePath = false;
            //ab-test-hard-paywall-subtitle
            let cancelAnytime = 'Voit irtisanoa tilauksen koska tahansa.';
            let allProductElements = document.querySelectorAll('.ab-test-paywall-product');
            allProductElements.forEach(function (element) {
                element.classList.remove('selected');
                if(element.getAttribute('product') === pos) {
                    element.classList.add('selected');
                }
            });

            if(pos === 'Digi') {
              pagePath = miniPath;
              urlParams = {
                embedded: null,
                aid: miniAID,
                ref: 'maksumuuri_kova_eiot',
                showPaymentPeriodList: null,
                offer: 3,
                variant: null
              }

              button.innerHTML = 'Tilaa HS ' + pos + ' &nbsp; 2 kk 0 €';
              //let pvmSpan = calculateDays(60, ' asti');
              //document.querySelector('.ab-test-hard-paywall-title').innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
              //document.querySelector('.ab-test-hard-paywall-subtitle').innerText = cancelAnytime;
            }
            else if(pos === 'Digi+') {
                pagePath = digiPath;
                urlParams = {
                  embedded: null,
                  aid: digiAID,
                  ref: 'maksumuuri_kova_eiot',
                  showPaymentPeriodList: null,
                  offer: null,
                  variant: null
                }
  
                button.innerHTML = 'Tilaa HS ' + pos + ' &nbsp; 2 kk 0 €';
                //document.querySelector('.ab-test-hard-paywall-subtitle').innerText = cancelAnytime;
                //let pvmSpan = calculateDays(60, ' asti');
                //document.querySelector('.ab-test-hard-paywall-title').innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
            }
            else {  //sample?
                //shouldnt happen
            }
          
            let url = new URL(button.href);
            // Update search params
            if (urlParams) {
              Object.keys(urlParams).forEach(function (key) {
                if (urlParams[key] === null) {
                  url.searchParams.delete(key)
                } else if (urlParams[key] !== undefined) {
                  url.searchParams.set(key, urlParams[key])
                }
              })
            }
            // Update path
            if (pagePath) {
                url.pathname = pagePath;
            }

            button.href = url.toString();
            button.setAttribute('data-product-name', pos);
            button.onclick = function (e) {
                sendGAEvent('click subscribe ' + pos + ' at ' + variantId)
            }
            return button;
        }

        //helper function to calculate days d.m. 
        const calculateDays = function(d, suffix) {
            let date = new Date();
            date.setDate(date.getDate() + d);
            let dd = date.getDate();
            let mm = date.getMonth()+1;
            let pvmSpan = false;
            if(suffix) {
                pvmSpan = dd.toString() + '.' + mm.toString() + '. ' + suffix;
            }
            else {
                pvmSpan = dd.toString() + '.' + mm.toString() + '.'
            }
            return pvmSpan;
        }

        //helper function to insert style
        const insertStyle = function(containerdiv) {
            let style = `
                    :root {
                        --main-color: #191919;
                        --underline-color: #787878;
                        --line-color: #E9EAED;
                        --main-font: 'Helsingin', Arial, sans-serif;
                    }
                        
                    .ab-test-paywall-container {
                        display: flex;
                        flex-direction: column;
                        width: 100%;
                        max-width: calc(100% - 16px);
                    }

                    .ab-test-paywall-container [data-ab="hard-paywall-title"] {
                        font-size: 26px;
                        margin-bottom: 16px;
                        text-align: center;
                    }

                    .ab-test-paywall-product {
                        display: flex;
                        flex-direction: column;
                        align-items: baseline;
                        font-size: 16px;
                        font-family: var(--main-font);
                        margin: 0 auto;
                        border-top: 1px solid var(--line-color);
                        padding: 12px 0px;
                        cursor: pointer;
                        width: 100%;
                        border: 1px solid #000;
                        border-radius: 4px;
                        padding:0;
                        margin-bottom: 8px;
                        background: #F8F8F8;
                    }

                    .ab-test-paywall-product[product="Kaikki"] {
                        background: #FFF6E5;
                    }

                    .ab-product-container {
                        display: flex;
                        flex-direction: row;
                        align-items: baseline;
                        padding: 12px 12px 8px;
                        width: 100%;
                    }

                    .ab-test-paywall-delimeter {
                        overflow: hidden;
                        margin-top: 0;
                        margin-bottom: 8px;

                        text-align: center;
                        font-family: var(--main-font);
                        font-size: 14px;
                        font-style: normal;
                        font-weight: 500;
                        line-height: normal;
                        letter-spacing: 0.36px;
                    }
                    
                    .ab-test-paywall-delimeter:before, .ab-test-paywall-delimeter:after {
                        background-color: #ccc;
                        content: "";
                        display: inline-block;
                        height: 0.5px;
                        position: relative;
                        vertical-align: middle;
                        width: 50%;
                    }

                    .ab-test-paywall-delimeter:before {
                        right: 8px;
                        margin-left: -50%;
                    }
    
                    .ab-test-paywall-delimeter:after {
                        left: 8px;
                        margin-right: -50%;
                    }

                    .ab-test-paywall-product .ab-product-content {
                        display: flex;
                        flex-direction: column;
                        margin-left: 12px;
                        width: 100%;
                    }

                    .ab-test-paywall-product .ab-radio {
                        transform: scale(1.6);
                        accent-color: var(--main-color);
                        cursor: pointer;
                    }

                    @supports (-moz-appearance:none) {
                        .ab-test-paywall-product .ab-radio {
                            transform: scale(1.5);
                        }
                    }

                    .ab-test-paywall-product .ab-product-title {
                        font-weight: 600;
                        padding-bottom: 4px;
                        font-size: 14px;
                    }

                    .ab-test-paywall-product .ab-product-title > span {
                        font-size: 14px;
                        font-weight: 600;
                        float: right;
                        letter-spacing: -0.5px;
                    }

                    .ab-test-paywall-product .ab-product-title > span > span {
                        font-size: 12px;
                        font-weight: 300;
                        color: #666;
                        text-decoration: line-through;
                        padding-left: 4px;
                        letter-spacing: 0;
                    }

                    .ab-test-paywall-product .ab-product-text {
                        font-size: 12px;
                        margin-top: 2px;
                        color: #555;
                        text-align: left;
                    }

                    .ab-test-paywall-product .ab-product-text > span {
                        margin-right: 8px;
                    }

                    .ab-test-paywall-product .ab-product-text svg {
                        fill: #191919;
                        display: inline;
                        margin-right: 2px;
                        vertical-align: baseline;
                        height: 10px;
                    }

                    .ab-test-paywall-additional-info {
                        font-family: var(--main-font);
                        font-size: 15px;
                        font-weight: 600;
                        line-height: 1.2;
                        text-align: center;
                        margin-bottom: 16px;
                    }

                    [data-ab="hard-paywall-subtitle"] {
                        font-size: 15px;
                        font-family: var(--main-font);
                        margin-top: 12px;
                        margin-bottom: 32px;
                        text-align: center;
                    }

                    [data-ab="hard-paywall-subscribe-button"] {
                        margin: 12px auto 4px;
                        width: 260px;
                        font-family: var(--main-font);
                        font-size: 16px;
                        font-weight: 600;
                    }

                    [data-ab="hard-paywall-subscribe-button"]:active {
                        margin: 12px auto 5px;
                        width: 258px;
                    }

                    [data-ab="hard-paywall-login-link"] {
                        text-decoration: underline;
                        font-size: 14px;   
                        margin-bottom: 24px;
                        margin-top: 16px;
                    }

                    [data-ab="hard-paywall-offering"] {
                        max-width: 480px;
                    }

                    /* dark mode support */
                    .sndp-dark .ab-test-paywall-product {
                        border: 1px solid #ccc;
                        background: #262626;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-text svg {
                        fill: #AFAFAF;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-title > span, .sndp-dark .ab-test-paywall-product .ab-product-text {
                        color: #fff;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-title > span > span {
                        color: #AFAFAF;
                    }
                    
                    @media (min-width: 380px) {
                        .ab-test-paywall-container {
                            max-width: 350px;
                        }

                        .ab-test-paywall-product .ab-product-text {
                            font-size: 14px;
                            margin-top: 4px;
                        }

                        .ab-test-paywall-product .ab-product-title, .ab-test-paywall-product .ab-product-title > span {
                            font-size: 16px;
                            letter-spacing: 0;
                        }

                        .ab-test-paywall-product .ab-product-title > span > span {
                            font-size: 14px;
                            padding-left: 8px;
                        }

                        .ab-test-paywall-product .ab-product-content {
                            margin-left: 16px;
                        }

                        .ab-test-paywall-product .ab-product-text svg {
                            margin-right: 4px;
                            height: 12px;
                        }

                        .ab-test-paywall-product .ab-product-text > span {
                            margin-right: 12px;
                        }
                    }
            `;
            
            if(document.location.pathname.indexOf('/visio/') > -1 ||
            document.location.pathname.indexOf('/teknologia/') > -1 ||
            document.location.pathname.indexOf('/talous/') > -1 ||
            document.location.pathname.indexOf('/autot/') > -1) {
            style += `	
                    .ab-test-paywall-product {
                        background: #F5E6DC;
                    }
            
                    .ab-test-paywall-grid .ab-grid-choose-button {
                        background: #b7384b;
                    }

                    .ab-test-paywall-product .ab-radio {
                        accent-color: #b7384b;
                    }

                    .ab-test-paywall-grid .ab-grid-choose-button:hover, .ab-test-paywall-grid .ab-grid-choose-button:active, .ab-test-paywall-grid .ab-grid-choose-button:focus {
                        background: #752f35;
                    }
                `;
            }
                        
            let styleSheet = document.createElement("style");
            styleSheet.type = "text/css";
            containerdiv.appendChild(styleSheet);
            styleSheet.innerText = style;
        };

        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-test-paywall-modified');
            let paywall = document.querySelector('[data-ab="' + paywallType + '-paywall"]');
            let title = document.querySelector('[data-ab="' + paywallType + '-paywall-title"]');
            let subtitle = document.querySelector('[data-ab="' + paywallType + '-paywall-subtitle"]');
            let button = document.querySelector('[data-ab="' + paywallType + '-paywall-subscribe-button"]');
            let secondaryButton = document.querySelector('[data-ab="' + paywallType + '-paywall-secondary-subscribe-button"]');
            let brazeModifiedPaywall = document.querySelector('.ab-test-paywall-modified-by-braze');
            if(brazeModifiedPaywall) {
                //sendGAEvent('script failed, paywall already modified by Braze');
            }
            else if(experimentExists) {
                //sendGAEvent('script failed, paywall already modified');
            } else if(title && button) { 
                if(button.innerText.trim() === currentDefaultButtonText) { //actual changes here
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
                    title.classList.add('ab-test-paywall-modified', namelower);

                    if(secondaryButton) { //katso muut tarjoukset button on HS
                        secondaryButton.style.display = 'none';
                    }

                    let loginLink = paywall.querySelector('[data-ab="' + paywallType + '-paywall-login-link"]');
                    if(loginLink) {
                        let paywallIndicator = paywall.querySelector('[data-ab="' + paywallType + '-paywall-logo"]').parentNode;
                        paywallIndicator.insertBefore(loginLink, paywallIndicator.childNodes[2]); //insert in between paywall indicators
                    }

                    //create container div - which contains all the elements
                    let containerdiv = createElem('div', 'ab-test-paywall-container', false);

                    //change subscribe button url and text
                    button = changeButtonUrlAndText(button, 'Digi+');

                    //main date until in title
                    if(commonDateUntil) {
                        let pvmSpan = calculateDays(commonDateUntil, 'asti');
                        title.innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
                    }

                    //let checkIconSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14" fill="none"><path d="M6.05367 8.43079L4.50494 6.88207C4.41264 6.78976 4.29662 6.74254 4.15687 6.74041C4.01713 6.73826 3.89897 6.78548 3.80239 6.88207C3.70581 6.97865 3.65752 7.09574 3.65752 7.23334C3.65752 7.37094 3.70581 7.48803 3.80239 7.5846L5.63187 9.41409C5.75238 9.5346 5.89298 9.59486 6.05367 9.59486C6.21435 9.59486 6.35494 9.5346 6.47545 9.41409L10.1844 5.70512C10.2767 5.61282 10.324 5.4968 10.3261 5.35705C10.3282 5.21731 10.281 5.09915 10.1844 5.00257C10.0878 4.90599 9.97076 4.8577 9.83316 4.8577C9.69556 4.8577 9.57847 4.90599 9.48189 5.00257L6.05367 8.43079ZM7.00094 13.3333C6.12498 13.3333 5.30163 13.1671 4.53087 12.8347C3.7601 12.5022 3.08965 12.051 2.5195 11.4812C1.94935 10.9113 1.49798 10.2411 1.16539 9.47067C0.832798 8.70026 0.666504 7.87708 0.666504 7.00112C0.666504 6.12517 0.832726 5.30181 1.16517 4.53105C1.49762 3.76029 1.94878 3.08983 2.51867 2.51969C3.08857 1.94953 3.75873 1.49816 4.52915 1.16557C5.29957 0.832982 6.12275 0.666687 6.9987 0.666687C7.87466 0.666687 8.69802 0.83291 9.46877 1.16535C10.2395 1.4978 10.91 1.94897 11.4801 2.51885C12.0503 3.08875 12.5017 3.75892 12.8343 4.52934C13.1668 5.29975 13.3331 6.12293 13.3331 6.99889C13.3331 7.87484 13.1669 8.6982 12.8345 9.46895C12.502 10.2397 12.0509 10.9102 11.481 11.4803C10.9111 12.0505 10.2409 12.5019 9.47049 12.8344C8.70008 13.167 7.87689 13.3333 7.00094 13.3333ZM6.99982 12.3333C8.48871 12.3333 9.74982 11.8167 10.7832 10.7833C11.8165 9.75001 12.3332 8.48889 12.3332 7C12.3332 5.51112 11.8165 4.25 10.7832 3.21667C9.74982 2.18334 8.48871 1.66667 6.99982 1.66667C5.51093 1.66667 4.24982 2.18334 3.21649 3.21667C2.18315 4.25 1.66649 5.51112 1.66649 7C1.66649 8.48889 2.18315 9.75001 3.21649 10.7833C4.24982 11.8167 5.51093 12.3333 6.99982 12.3333Z" fill="#191919"/></svg>';
                    let readingRightsForOneSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="2 2 32 32" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M18.3725 13.5C20.0293 13.5 21.3725 12.1569 21.3725 10.5C21.3725 8.84315 20.0293 7.5 18.3725 7.5C16.7156 7.5 15.3725 8.84315 15.3725 10.5C15.3725 12.1569 16.7156 13.5 18.3725 13.5ZM18.3725 16.5C21.6862 16.5 24.3725 13.8137 24.3725 10.5C24.3725 7.18629 21.6862 4.5 18.3725 4.5C15.0588 4.5 12.3725 7.18629 12.3725 10.5C12.3725 13.8137 15.0588 16.5 18.3725 16.5ZM18.3725 18C23.8903 18 27.2436 20.6846 28.948 23.6222C28.9709 23.6617 28.9918 23.7017 29.0107 23.7423C29.3011 24.1997 29.3328 24.7992 29.0421 25.3002C27.3377 28.2379 23.8903 31.1253 18.3725 31.1253C12.8547 31.1253 9.40724 28.2379 7.70281 25.3002C7.41216 24.7992 7.44389 24.1999 7.73416 23.7425C7.7531 23.7019 7.77402 23.6617 7.79695 23.6222C9.50137 20.6846 12.8547 18 18.3725 18ZM10.7754 24.5282C12.1114 26.3666 14.5065 28.1253 18.3725 28.1253C22.2385 28.1253 24.6335 26.3666 25.9696 24.5282C24.6675 22.6761 22.3285 21 18.3725 21C14.4164 21 12.0774 22.6761 10.7754 24.5282Z"></path></svg>';
                    let readingRightsForFourSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="13" viewBox="0 0 14 13" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.5809 3.16667C7.5809 4.63943 6.387 5.83333 4.91424 5.83333C3.44148 5.83333 2.24757 4.63943 2.24757 3.16667C2.24757 1.69391 3.44148 0.5 4.91424 0.5C6.387 0.5 7.5809 1.69391 7.5809 3.16667ZM6.24757 3.16667C6.24757 3.90305 5.65062 4.5 4.91424 4.5C4.17786 4.5 3.5809 3.90305 3.5809 3.16667C3.5809 2.43029 4.17786 1.83333 4.91424 1.83333C5.65062 1.83333 6.24757 2.43029 6.24757 3.16667Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.61447 8.99877C8.85695 7.69314 7.3666 6.5 4.91424 6.5C2.46188 6.5 0.97153 7.69314 0.214008 8.99877C0.20382 9.01633 0.194523 9.03416 0.186103 9.05221C0.0570957 9.2555 0.0429897 9.52189 0.17217 9.74454C0.929692 11.0502 2.46188 12.3334 4.91425 12.3334C7.36661 12.3334 8.8988 11.0502 9.65632 9.74454C9.78552 9.52186 9.77139 9.25543 9.64234 9.05214C9.63393 9.03411 9.62464 9.0163 9.61447 8.99877ZM4.91425 11.0001C3.19602 11.0001 2.13155 10.2185 1.53775 9.40141C2.11643 8.57826 3.15599 7.83333 4.91424 7.83333C6.67249 7.83333 7.71205 8.57827 8.29073 9.40142C7.69693 10.2185 6.63246 11.0001 4.91425 11.0001Z"></path><path d="M8.58091 5.83333C8.1137 5.83333 7.67455 5.71318 7.29267 5.50209C7.60603 5.183 7.85567 4.80114 8.021 4.37709C8.19125 4.45598 8.38094 4.5 8.58091 4.5C9.31729 4.5 9.91424 3.90305 9.91424 3.16667C9.91424 2.43029 9.31729 1.83333 8.58091 1.83333C8.38094 1.83333 8.19125 1.87736 8.021 1.95624C7.85567 1.5322 7.60603 1.15033 7.29267 0.831247C7.67455 0.620154 8.1137 0.5 8.58091 0.5C10.0537 0.5 11.2476 1.69391 11.2476 3.16667C11.2476 4.63943 10.0537 5.83333 8.58091 5.83333Z"></path><path d="M9.66834 10.8844C9.21539 11.4261 8.63188 11.9239 7.91194 12.3003C8.12684 12.322 8.34979 12.3334 8.58092 12.3334C11.0333 12.3334 12.5655 11.0502 13.323 9.74454C13.4522 9.52186 13.4381 9.25543 13.309 9.05214C13.3006 9.03411 13.2913 9.0163 13.2811 8.99877C12.5236 7.69314 11.0333 6.5 8.58091 6.5C8.36457 6.5 8.15572 6.50929 7.95419 6.52711C8.67207 6.90013 9.24931 7.39617 9.6959 7.94617C10.7985 8.18463 11.5135 8.77001 11.9574 9.40142C11.5006 10.0299 10.7654 10.6374 9.66834 10.8844Z"></path></svg>';
                    let facsimileSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="15" viewBox="0 0 16 15" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M15.0282 0.519266C14.9956 0.319292 14.822 0.166664 14.6128 0.166664H3.13458L3.06631 0.172173C2.86634 0.20479 2.71371 0.378338 2.71371 0.587534L2.71295 3.94837L0.838847 3.94897L0.768529 3.95481C0.562854 3.98937 0.408842 4.1729 0.41839 4.38847L0.818935 13.4318L0.847872 13.5654C1.0317 14.3071 1.55045 14.7823 2.27412 14.7823H13.6125L13.7284 14.7778C14.455 14.7212 15.0337 14.1365 15.0337 13.4132V0.587534L15.0282 0.519266ZM3.55469 1.0084H14.1912L14.192 13.4132L14.1868 13.4837C14.1491 13.7378 13.9103 13.9406 13.6125 13.9406H2.27412L2.18767 13.9352C1.90852 13.8994 1.72045 13.6867 1.65272 13.3339L1.27816 4.79011H2.71295L2.71371 12.0658L2.71922 12.1341C2.75184 12.334 2.92539 12.4867 3.13458 12.4867L3.20285 12.4812C3.40282 12.4485 3.55545 12.275 3.55545 12.0658L3.55469 1.0084Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.25632 2.46232H12.3172C12.5496 2.46232 12.7381 2.65075 12.7381 2.88319V7.47449C12.7381 7.70693 12.5496 7.89536 12.3172 7.89536H9.25632C9.02388 7.89536 8.83545 7.70693 8.83545 7.47449V2.88319C8.83545 2.65075 9.02388 2.46232 9.25632 2.46232ZM11.8963 7.05362V3.30406H9.67719V7.05362H11.8963Z"></path><path d="M7.34328 4.75797V5.59971H5.04763V4.75797H7.34328Z"></path><path d="M7.34328 2.46232V3.30406H5.04763V2.46232H7.34328Z"></path><path d="M7.34328 7.05362V7.89536H5.04763V7.05362H7.34328Z"></path><path d="M12.6998 9.34927V10.191H5.04763V9.34927H12.6998Z"></path><path d="M12.6998 11.6449V12.4867H5.04763V11.6449H12.6998Z"></path></svg>';

                    let product1 = createProductElement('Digi+', 'HS Digi+ <span>2 kk 0 € <span>(norm. 20,90 €/kk)</span></span>', readingRightsForFourSvg + '<span>Lukuoikeus neljälle</span> ' + facsimileSvg + '<span>Näköislehti</span>', button);
                    let product2 = createProductElement('Digi', 'HS Digi <span>2 kk 0 € <span>(norm. 14,90 €/kk)<span></span>', readingRightsForOneSvg + '<span>Lukuoikeus yhdelle</span>', button);
                    
                    subtitle.innerText = 'Voit irtisanoa tilauksen koska tahansa.';
                    subtitle.classList.remove('paywall__ingress');

                    //append elements to container one by one
                    containerdiv.appendChild(title);
                    
                    //delimeter element with TAI and border
                    /*let delimeter = createElem('div', 'ab-test-paywall-delimeter', '<span>TAI</span>');
                    containerdiv.appendChild(delimeter);*/
                    
                    containerdiv.appendChild(product1);
                    containerdiv.appendChild(product2);

                    if(cycloneDateUntil) { //cyclone subtitle
                        let pvmSpan = calculateDays(cycloneDateUntil, 'asti');
                        let cycloneText = createElem('div', 'paywall__text-block ab-test-paywall-additional-info', 'Lisäksi voit maksuttoman jakson jälkeen jatkaa tilausta 40 % alennuksella ' + pvmSpan);
                        containerdiv.appendChild(cycloneText);
                    }

                    containerdiv.appendChild(button);
                    containerdiv.appendChild(subtitle);

                    insertStyle(containerdiv);
                    paywall.insertBefore(containerdiv, paywall.childNodes[1]); //insert as 2nd element on paywall after paywall indicator	
            
                    dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
                    dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': 'change offer to cyclone at timanttimuuri', 'eventLabel': experimentName + ' ' + variantName});

                    if(feedTitle) { //rss feed under paywall element and this is the title of that feed
                        let paywallOffering = document.querySelector('.ab-test-hard-paywall-offering');
                        if(paywallOffering) {
                            paywallOffering.innerText = feedTitle;
                        }
                    }
                    
                    if(requireCdx) {
                        cdx.confirm(true);
                    }
                    return true;
                }
                else {
                    sendGAEvent('script failed, primary button text unexpected');
                }
            } else {
                sendGAEvent('script failed, paywall html unexpected');
            }
        };

        doExperimentChanges();
    };
} catch(e) {
    console.log(e)

  let err = e
  let err_split = e.stack.split('\n')
  let err_line = false
  if (err_split[1]) {
    err_line = err_split[1].split('>:')
  }
  if (err_line[1]) {
    err = err_line[1]
  }
  sendGAEvent('script error: ' + err)
}
 },'js-RCdtyAbGhBrkO2mWeoQc-1741783955': function (cdx) { let requireCdx = false; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if (!requireCdx) { testing = true; }
const experimentId = 'HS25-40';
const variantId = 'D';
const experimentName = experimentId + ' Timanttimuuri ot';
const variantName = variantId + ' radio +kaikki w sykloni';
let currentDefaultButtonText = 'Tilaa HS Digi+ 1. kk 0 €'; //nykyisen napin teksti
currentDefaultButtonText = 'Lue 2 viikkoa maksutta'; //nykyisen napin teksti
const paywallType = 'hard'; // hard or archived
const commonDateUntil = 30; //false or number of days
const miniDateUntil = 60;
const digiDateUntil = 60;
const cycloneDateUntil = 180;
const miniAID = 'G45VPHOK2M8DP'; //HS Digi
const digiAID = 'GTTLP98QFLWRO'; //HS Digi+
const miniPath = '/api/safe/v1/web/subscription-funnel/hs-mini-tutustu-v624';
const digiPath = '/api/safe/v1/web/subscription-funnel/hs-digi-tutustu-v624';
const kaikkiPath = '/shopping-ui/tutustu-plus-kaikki-bundle';
const kaikkiAID = 'GFYTLWU9LP5BP'; //https://www.hs.fi/tilaus/tutustu-plus-kaikki-bundle/?aid=GFYTLWU9LP5BP
const feedTitle = 'Hesarin digitilauksella pääset lukemaan rajoituksetta tämän ja yli 400 uutta timanttiartikkelia kuukaudessa';
const defaultProduct = 'Kaikki'; //which produc
const paywallEvent = 'change offer to cyclone at timanttimuuri'; //if there is some event sent to paywall category, e.g. change of offer
let paywall = document.querySelector('[data-ab="' + paywallType + '-paywall"]'); //main element to use

const timeToWaitForConfirm = 500; //time to wait before confirming experiment

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    //if(true) { //use this if not HS
    if(requireCdx === false || window.conductrics_checkIfEligibileForP2p(cdx.trait('isLoggedIn'), cdx.trait('p2p_lightgbm'), cdx.trait('p2p'))) {
        //helper to confirm experiment - we wait a while to see if Braze has modified the paywall and removed Conductrics paywall
        const confirmExperiment = function() {
            setTimeout(function() {
                paywall = document.querySelector('[data-ab="' + paywallType + '-paywall"]');
                if(paywall) {
                    //sendGAEvent('paywall found even after delay');
                    dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
                    if(paywallEvent) {
                        dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': paywallEvent, 'eventLabel': experimentName + ' ' + variantName});
                    }
                    if(requireCdx) {
                        sendGAEvent('experiment confirmed');
                        cdx.confirm(true);
                    }
                    return true;
                }
                else {
                    sendGAEvent('paywall not found after delay (braze modified it)');
                    return false;
                }
            }, timeToWaitForConfirm);
        }
        
        //helper function to create any html element
        const createElem = function(tag, classes, text) {
            let elem = document.createElement(tag);
            if(classes) {
                //split classes by space
                classes = classes.split(' ');
                for(let i = 0; i < classes.length; i++) {
                    elem.classList.add(classes[i]);
                }
            }
            if(text) {
                elem.innerHTML = text;
            }
            return elem;
        }

        //helper function to create product element 
        const createProductElement = function(productname, title, features, button) {
            let product = createElem('label', 'ab-test-paywall-product', false);
            product.setAttribute('product', productname);
            if(productname === defaultProduct) { //this is the default option
                product.classList.add('selected'); //mark it selected
                let ribbon = createElem('div', 'ab-product-ribbon', 'Uutuus!');
                product.appendChild(ribbon);
            }
            let container = createElem('div', 'ab-product-container', false);

            let check = createElem('input', 'ab-radio', false);
            check.type = 'radio';
            check.name = 'product';
            //check.id = 'radio_'+productname;  
            if(productname === defaultProduct) {
                check.checked = 'checked';
            }
            let productcontent = createElem('div', 'ab-product-content', false);
            let producttitle = createElem('p', 'ab-product-title', title);

            container.appendChild(check);
            productcontent.appendChild(producttitle);

            if(features) {
                let producttext = createElem('p', 'ab-product-text', features);
                productcontent.appendChild(producttext);
            }
            
            container.appendChild(productcontent);
            product.appendChild(container);
            check.onchange = function(e) {
                sendGAEvent('click product ' + productname);
                changeButtonUrlAndText(button, productname);
            }
            return product;
        }

        //helper function to change button url and text
        const changeButtonUrlAndText = function (button, pos) {          
            let urlParams = false;
            let pagePath = false;
            //ab-test-hard-paywall-subtitle
            let cancelAnytime = 'Voit irtisanoa tilauksen koska tahansa.';
            let allProductElements = document.querySelectorAll('.ab-test-paywall-product');
            allProductElements.forEach(function (element) {
                element.classList.remove('selected');
                if(element.getAttribute('product') === pos) {
                    element.classList.add('selected');
                }
            });

            if(pos === 'Kaikki') {
                pagePath = kaikkiPath;
                urlParams = {
                  embedded: null,
                  aid: kaikkiAID,
                  ref: 'maksumuuri_kova_eiot',
                  showPaymentPeriodList: null,
                  offer: null,
                  variant: null
                }
  
                button.innerHTML = 'Tilaa HS +Kaikki &nbsp; 1 kk 0 €';
                let pvmSpan = calculateDays(30, ' asti');
                //document.querySelector('.ab-test-hard-paywall-title').innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
                let cycloneText = document.querySelector('.ab-test-paywall-additional-info');
                if(cycloneText) {
                    cycloneText.classList.remove('emphasized');
                }
                //document.querySelector('.ab-test-hard-paywall-subtitle').innerText = cancelAnytime;
            }
            else if(pos === 'Digi') {
              pagePath = miniPath;
              urlParams = {
                embedded: null,
                aid: miniAID,
                ref: 'maksumuuri_kova_eiot',
                showPaymentPeriodList: null,
                offer: 3,
                variant: null
              }

              button.innerHTML = 'Tilaa HS ' + pos + ' &nbsp; 2 kk 0 €';
              let pvmSpan = calculateDays(60, ' asti');
              //document.querySelector('.ab-test-hard-paywall-title').innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
              let cycloneText = document.querySelector('.ab-test-paywall-additional-info');
              if(cycloneText) {
                  cycloneText.classList.add('emphasized');
              }
              //document.querySelector('.ab-test-hard-paywall-subtitle').innerText = cancelAnytime;
            }
            else if(pos === 'Digi+') {
                pagePath = digiPath;
                urlParams = {
                  embedded: null,
                  aid: digiAID,
                  ref: 'maksumuuri_kova_eiot',
                  showPaymentPeriodList: null,
                  offer: null,
                  variant: null
                }
  
                button.innerHTML = 'Tilaa HS ' + pos + ' &nbsp; 2 kk 0 €';
                let pvmSpan = calculateDays(60, ' asti');
                //document.querySelector('.ab-test-hard-paywall-title').innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
                let cycloneText = document.querySelector('.ab-test-paywall-additional-info');
                if(cycloneText) {
                    cycloneText.classList.add('emphasized');
                }
                //document.querySelector('.ab-test-hard-paywall-subtitle').innerText = cancelAnytime;
            }
            else {  //sample?
                //shouldnt happen
            }
          
            let url = new URL(button.href);
            // Update search params
            if (urlParams) {
              Object.keys(urlParams).forEach(function (key) {
                if (urlParams[key] === null) {
                  url.searchParams.delete(key)
                } else if (urlParams[key] !== undefined) {
                  url.searchParams.set(key, urlParams[key])
                }
              })
            }
            // Update path
            if (pagePath) {
                url.pathname = pagePath;
            }
            button.href = url.toString();
            button.setAttribute('data-product-name', pos);
            button.onclick = function (e) {
                sendGAEvent('click subscribe ' + pos + ' at ' + variantId)
            }
            return button;
        }

        //helper function to calculate days d.m. 
        const calculateDays = function(d, suffix) {
            let date = new Date();
            date.setDate(date.getDate() + d);
            let dd = date.getDate();
            let mm = date.getMonth()+1;
            let pvmSpan = false;
            if(suffix) {
                pvmSpan = dd.toString() + '.' + mm.toString() + '. ' + suffix;
            }
            else {
                pvmSpan = dd.toString() + '.' + mm.toString() + '.'
            }
            return pvmSpan;
        }

        //helper function to insert style
        const insertStyle = function(containerdiv) {
            let style = `
                    :root {
                        --main-color: #191919;
                        --underline-color: #787878;
                        --line-color: #E9EAED;
                        --main-font: 'Helsingin', Arial, sans-serif;
                    }
                        
                    .ab-test-paywall-container {
                        display: flex;
                        flex-direction: column;
                        width: 100%;
                        max-width: calc(100% - 16px);
                    }

                    .ab-test-paywall-container [data-ab="hard-paywall-title"] {
                        font-size: 26px;
                        margin-bottom: 16px;
                        text-align: center;
                    }

                    .ab-test-paywall-product {
                        display: flex;
                        flex-direction: column;
                        align-items: baseline;
                        font-size: 16px;
                        font-family: var(--main-font);
                        margin: 0 auto;
                        border-top: 1px solid var(--line-color);
                        padding: 12px 0px;
                        cursor: pointer;
                        width: 100%;
                        border: 1px solid #000;
                        border-radius: 4px;
                        padding:0;
                        margin-bottom: 8px;
                        background: #F8F8F8;
                    }

                    .ab-test-paywall-product[product="Kaikki"] {
                        background: #FFF6E5;
                    }

                    .ab-product-container {
                        display: flex;
                        flex-direction: row;
                        align-items: baseline;
                        padding: 12px 12px 8px;
                        width: 100%;
                    }

                    .ab-product-ribbon {
                        background: rgb(203,158,51);
                        background: linear-gradient(90deg, rgba(203,158,51,1) 0%, rgba(252,234,148,1) 25%, rgba(237,208,106,1) 50%, rgba(252,234,148,1) 75%, rgba(203,158,51,1) 100%);
                        height: 26px;
                        text-align: center;
                        margin: 0 auto;
                        width: 100%;
                        font-size: 14px;
                        font-weight: 600;
                        padding-top: 2px;
                    }

                    .ab-test-paywall-delimeter {
                        overflow: hidden;
                        margin-top: 0;
                        margin-bottom: 8px;

                        text-align: center;
                        font-family: var(--main-font);
                        font-size: 14px;
                        font-style: normal;
                        font-weight: 500;
                        line-height: normal;
                        letter-spacing: 0.36px;
                    }
                    
                    .ab-test-paywall-delimeter:before, .ab-test-paywall-delimeter:after {
                        background-color: #ccc;
                        content: "";
                        display: inline-block;
                        height: 0.5px;
                        position: relative;
                        vertical-align: middle;
                        width: 50%;
                    }

                    .ab-test-paywall-delimeter:before {
                        right: 8px;
                        margin-left: -50%;
                    }
    
                    .ab-test-paywall-delimeter:after {
                        left: 8px;
                        margin-right: -50%;
                    }

                    .ab-test-paywall-product .ab-product-content {
                        display: flex;
                        flex-direction: column;
                        margin-left: 12px;
                        width: 100%;
                    }

                    .ab-test-paywall-product .ab-radio {
                        transform: scale(1.6);
                        accent-color: var(--main-color);
                        cursor: pointer;
                    }

                    @supports (-moz-appearance:none) {
                        .ab-test-paywall-product .ab-radio {
                            transform: scale(1.5);
                        }
                    }

                    .ab-test-paywall-product .ab-product-title {
                        font-weight: 600;
                        padding-bottom: 4px;
                        font-size: 14px;
                    }

                    .ab-test-paywall-product .ab-product-title > span {
                        font-size: 14px;
                        font-weight: 600;
                        float: right;
                        letter-spacing: -0.5px;
                    }

                    .ab-test-paywall-product .ab-product-title > span > span {
                        font-size: 12px;
                        font-weight: 300;
                        color: #666;
                        text-decoration: line-through;
                        padding-left: 4px;
                        letter-spacing: 0;
                    }

                    .ab-test-paywall-product .ab-product-text {
                        font-size: 12px;
                        margin-top: 2px;
                        color: #555;
                        text-align: left;
                    }

                    .ab-test-paywall-product .ab-product-text > span {
                        margin-right: 8px;
                    }

                    .ab-test-paywall-product .ab-product-text svg {
                        fill: #191919;
                        display: inline;
                        margin-right: 2px;
                        vertical-align: baseline;
                        height: 10px;
                    }

                    .ab-test-paywall-additional-info {
                        font-family: var(--main-font);
                        font-size: 15px;
                        font-weight: 600;
                        line-height: 1.2;
                        text-align: center;
                        margin-bottom: 16px;
                        color: #777;
                        text-decoration: line-through;
                    }

                    .ab-test-paywall-additional-info.emphasized {
                        color: #191919;
                        text-decoration: none;
                    }

                    [data-ab="hard-paywall-subtitle"] {
                        font-size: 15px;
                        font-family: var(--main-font);
                        margin-top: 12px;
                        margin-bottom: 32px;
                        text-align: center;
                    }

                    [data-ab="hard-paywall-subscribe-button"] {
                        margin: 12px auto 4px;
                        width: 260px;
                        font-family: var(--main-font);
                        font-size: 16px;
                        font-weight: 600;
                    }

                    [data-ab="hard-paywall-subscribe-button"]:active {
                        margin: 12px auto 5px;
                        width: 258px;
                    }

                    [data-ab="hard-paywall-login-link"] {
                        text-decoration: underline;
                        font-size: 14px;   
                        margin-bottom: 24px;
                        margin-top: 16px;
                    }

                    [data-ab="hard-paywall-offering"] {
                        max-width: 480px;
                    }

                    /* dark mode support */
                    .sndp-dark .ab-test-paywall-product {
                        border: 1px solid #ccc;
                        background: #262626;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-text svg {
                        fill: #AFAFAF;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-title > span, .sndp-dark .ab-test-paywall-product .ab-product-text {
                        color: #fff;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-title > span > span {
                        color: #AFAFAF;
                    }

                    .sndp-dark .ab-product-ribbon {
                        color: #000;
                    }

                    .sndp-dark .ab-test-paywall-additional-info {
                        color: #aaa;
                    }

                    .sndp-dark .ab-test-paywall-additional-info.emphasized {
                        color: #fff;
                    }
                    
                    @media (min-width: 380px) {
                        .ab-test-paywall-container {
                            max-width: 350px;
                        }

                        .ab-test-paywall-product .ab-product-text {
                            font-size: 14px;
                            margin-top: 4px;
                        }

                        .ab-test-paywall-product .ab-product-title, .ab-test-paywall-product .ab-product-title > span {
                            font-size: 16px;
                            letter-spacing: 0;
                        }

                        .ab-test-paywall-product .ab-product-title > span > span {
                            font-size: 14px;
                            padding-left: 8px;
                        }

                        .ab-test-paywall-product .ab-product-content {
                            margin-left: 16px;
                        }

                        .ab-test-paywall-product .ab-product-text svg {
                            margin-right: 4px;
                            height: 12px;
                        }

                        .ab-test-paywall-product .ab-product-text > span {
                            margin-right: 12px;
                        }
                    }
            `;
            
            if(document.location.pathname.indexOf('/visio/') > -1 ||
            document.location.pathname.indexOf('/teknologia/') > -1 ||
            document.location.pathname.indexOf('/talous/') > -1 ||
            document.location.pathname.indexOf('/autot/') > -1) {
            style += `	
                    .ab-test-paywall-product {
                        background: #F5E6DC;
                    }
            
                    .ab-test-paywall-grid .ab-grid-choose-button {
                        background: #b7384b;
                    }

                    .ab-test-paywall-product .ab-radio {
                        accent-color: #b7384b;
                    }

                    .ab-test-paywall-grid .ab-grid-choose-button:hover, .ab-test-paywall-grid .ab-grid-choose-button:active, .ab-test-paywall-grid .ab-grid-choose-button:focus {
                        background: #752f35;
                    }
                `;
            }
                        
            let styleSheet = document.createElement("style");
            styleSheet.type = "text/css";
            containerdiv.appendChild(styleSheet);
            styleSheet.innerText = style;
        };

        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-test-paywall-modified');
            let title = document.querySelector('[data-ab="' + paywallType + '-paywall-title"]');
            let subtitle = document.querySelector('[data-ab="' + paywallType + '-paywall-subtitle"]');
            let button = document.querySelector('[data-ab="' + paywallType + '-paywall-subscribe-button"]');
            let secondaryButton = document.querySelector('[data-ab="' + paywallType + '-paywall-secondary-subscribe-button"]');
            paywall = document.querySelector('[data-ab="' + paywallType + '-paywall"]');
            if(experimentExists) {
                sendGAEvent('script failed, paywall already modified');
            } else if(paywall && title && button) { //paywall exists (if braze was used, paywall is null)
                if(button.innerText.trim() === currentDefaultButtonText) { //actual changes here
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
                    title.classList.add('ab-test-paywall-modified', namelower);

                    if(secondaryButton) { //katso muut tarjoukset button on HS
                        secondaryButton.style.display = 'none';
                    }

                    let loginLink = paywall.querySelector('[data-ab="' + paywallType + '-paywall-login-link"]');
                    if(loginLink) {
                        let paywallIndicator = paywall.querySelector('[data-ab="' + paywallType + '-paywall-logo"]').parentNode;
                        paywallIndicator.insertBefore(loginLink, paywallIndicator.childNodes[2]); //insert in between paywall indicators
                    }

                    //create container div - which contains all the elements
                    let containerdiv = createElem('div', 'ab-test-paywall-container', false);

                    //change subscribe button url and text
                    button = changeButtonUrlAndText(button, 'Kaikki');

                    //main date until in title
                    if(commonDateUntil) {
                        let pvmSpan = calculateDays(commonDateUntil, 'asti');
                        title.innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
                    }

                    let checkIconSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14" fill="none"><path d="M6.05367 8.43079L4.50494 6.88207C4.41264 6.78976 4.29662 6.74254 4.15687 6.74041C4.01713 6.73826 3.89897 6.78548 3.80239 6.88207C3.70581 6.97865 3.65752 7.09574 3.65752 7.23334C3.65752 7.37094 3.70581 7.48803 3.80239 7.5846L5.63187 9.41409C5.75238 9.5346 5.89298 9.59486 6.05367 9.59486C6.21435 9.59486 6.35494 9.5346 6.47545 9.41409L10.1844 5.70512C10.2767 5.61282 10.324 5.4968 10.3261 5.35705C10.3282 5.21731 10.281 5.09915 10.1844 5.00257C10.0878 4.90599 9.97076 4.8577 9.83316 4.8577C9.69556 4.8577 9.57847 4.90599 9.48189 5.00257L6.05367 8.43079ZM7.00094 13.3333C6.12498 13.3333 5.30163 13.1671 4.53087 12.8347C3.7601 12.5022 3.08965 12.051 2.5195 11.4812C1.94935 10.9113 1.49798 10.2411 1.16539 9.47067C0.832798 8.70026 0.666504 7.87708 0.666504 7.00112C0.666504 6.12517 0.832726 5.30181 1.16517 4.53105C1.49762 3.76029 1.94878 3.08983 2.51867 2.51969C3.08857 1.94953 3.75873 1.49816 4.52915 1.16557C5.29957 0.832982 6.12275 0.666687 6.9987 0.666687C7.87466 0.666687 8.69802 0.83291 9.46877 1.16535C10.2395 1.4978 10.91 1.94897 11.4801 2.51885C12.0503 3.08875 12.5017 3.75892 12.8343 4.52934C13.1668 5.29975 13.3331 6.12293 13.3331 6.99889C13.3331 7.87484 13.1669 8.6982 12.8345 9.46895C12.502 10.2397 12.0509 10.9102 11.481 11.4803C10.9111 12.0505 10.2409 12.5019 9.47049 12.8344C8.70008 13.167 7.87689 13.3333 7.00094 13.3333ZM6.99982 12.3333C8.48871 12.3333 9.74982 11.8167 10.7832 10.7833C11.8165 9.75001 12.3332 8.48889 12.3332 7C12.3332 5.51112 11.8165 4.25 10.7832 3.21667C9.74982 2.18334 8.48871 1.66667 6.99982 1.66667C5.51093 1.66667 4.24982 2.18334 3.21649 3.21667C2.18315 4.25 1.66649 5.51112 1.66649 7C1.66649 8.48889 2.18315 9.75001 3.21649 10.7833C4.24982 11.8167 5.51093 12.3333 6.99982 12.3333Z"/></svg>';
                    let readingRightsForOneSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="2 2 32 32" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M18.3725 13.5C20.0293 13.5 21.3725 12.1569 21.3725 10.5C21.3725 8.84315 20.0293 7.5 18.3725 7.5C16.7156 7.5 15.3725 8.84315 15.3725 10.5C15.3725 12.1569 16.7156 13.5 18.3725 13.5ZM18.3725 16.5C21.6862 16.5 24.3725 13.8137 24.3725 10.5C24.3725 7.18629 21.6862 4.5 18.3725 4.5C15.0588 4.5 12.3725 7.18629 12.3725 10.5C12.3725 13.8137 15.0588 16.5 18.3725 16.5ZM18.3725 18C23.8903 18 27.2436 20.6846 28.948 23.6222C28.9709 23.6617 28.9918 23.7017 29.0107 23.7423C29.3011 24.1997 29.3328 24.7992 29.0421 25.3002C27.3377 28.2379 23.8903 31.1253 18.3725 31.1253C12.8547 31.1253 9.40724 28.2379 7.70281 25.3002C7.41216 24.7992 7.44389 24.1999 7.73416 23.7425C7.7531 23.7019 7.77402 23.6617 7.79695 23.6222C9.50137 20.6846 12.8547 18 18.3725 18ZM10.7754 24.5282C12.1114 26.3666 14.5065 28.1253 18.3725 28.1253C22.2385 28.1253 24.6335 26.3666 25.9696 24.5282C24.6675 22.6761 22.3285 21 18.3725 21C14.4164 21 12.0774 22.6761 10.7754 24.5282Z"></path></svg>';
                    let readingRightsForFourSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="13" viewBox="0 0 14 13" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.5809 3.16667C7.5809 4.63943 6.387 5.83333 4.91424 5.83333C3.44148 5.83333 2.24757 4.63943 2.24757 3.16667C2.24757 1.69391 3.44148 0.5 4.91424 0.5C6.387 0.5 7.5809 1.69391 7.5809 3.16667ZM6.24757 3.16667C6.24757 3.90305 5.65062 4.5 4.91424 4.5C4.17786 4.5 3.5809 3.90305 3.5809 3.16667C3.5809 2.43029 4.17786 1.83333 4.91424 1.83333C5.65062 1.83333 6.24757 2.43029 6.24757 3.16667Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.61447 8.99877C8.85695 7.69314 7.3666 6.5 4.91424 6.5C2.46188 6.5 0.97153 7.69314 0.214008 8.99877C0.20382 9.01633 0.194523 9.03416 0.186103 9.05221C0.0570957 9.2555 0.0429897 9.52189 0.17217 9.74454C0.929692 11.0502 2.46188 12.3334 4.91425 12.3334C7.36661 12.3334 8.8988 11.0502 9.65632 9.74454C9.78552 9.52186 9.77139 9.25543 9.64234 9.05214C9.63393 9.03411 9.62464 9.0163 9.61447 8.99877ZM4.91425 11.0001C3.19602 11.0001 2.13155 10.2185 1.53775 9.40141C2.11643 8.57826 3.15599 7.83333 4.91424 7.83333C6.67249 7.83333 7.71205 8.57827 8.29073 9.40142C7.69693 10.2185 6.63246 11.0001 4.91425 11.0001Z"></path><path d="M8.58091 5.83333C8.1137 5.83333 7.67455 5.71318 7.29267 5.50209C7.60603 5.183 7.85567 4.80114 8.021 4.37709C8.19125 4.45598 8.38094 4.5 8.58091 4.5C9.31729 4.5 9.91424 3.90305 9.91424 3.16667C9.91424 2.43029 9.31729 1.83333 8.58091 1.83333C8.38094 1.83333 8.19125 1.87736 8.021 1.95624C7.85567 1.5322 7.60603 1.15033 7.29267 0.831247C7.67455 0.620154 8.1137 0.5 8.58091 0.5C10.0537 0.5 11.2476 1.69391 11.2476 3.16667C11.2476 4.63943 10.0537 5.83333 8.58091 5.83333Z"></path><path d="M9.66834 10.8844C9.21539 11.4261 8.63188 11.9239 7.91194 12.3003C8.12684 12.322 8.34979 12.3334 8.58092 12.3334C11.0333 12.3334 12.5655 11.0502 13.323 9.74454C13.4522 9.52186 13.4381 9.25543 13.309 9.05214C13.3006 9.03411 13.2913 9.0163 13.2811 8.99877C12.5236 7.69314 11.0333 6.5 8.58091 6.5C8.36457 6.5 8.15572 6.50929 7.95419 6.52711C8.67207 6.90013 9.24931 7.39617 9.6959 7.94617C10.7985 8.18463 11.5135 8.77001 11.9574 9.40142C11.5006 10.0299 10.7654 10.6374 9.66834 10.8844Z"></path></svg>';
                    let facsimileSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="15" viewBox="0 0 16 15" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M15.0282 0.519266C14.9956 0.319292 14.822 0.166664 14.6128 0.166664H3.13458L3.06631 0.172173C2.86634 0.20479 2.71371 0.378338 2.71371 0.587534L2.71295 3.94837L0.838847 3.94897L0.768529 3.95481C0.562854 3.98937 0.408842 4.1729 0.41839 4.38847L0.818935 13.4318L0.847872 13.5654C1.0317 14.3071 1.55045 14.7823 2.27412 14.7823H13.6125L13.7284 14.7778C14.455 14.7212 15.0337 14.1365 15.0337 13.4132V0.587534L15.0282 0.519266ZM3.55469 1.0084H14.1912L14.192 13.4132L14.1868 13.4837C14.1491 13.7378 13.9103 13.9406 13.6125 13.9406H2.27412L2.18767 13.9352C1.90852 13.8994 1.72045 13.6867 1.65272 13.3339L1.27816 4.79011H2.71295L2.71371 12.0658L2.71922 12.1341C2.75184 12.334 2.92539 12.4867 3.13458 12.4867L3.20285 12.4812C3.40282 12.4485 3.55545 12.275 3.55545 12.0658L3.55469 1.0084Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.25632 2.46232H12.3172C12.5496 2.46232 12.7381 2.65075 12.7381 2.88319V7.47449C12.7381 7.70693 12.5496 7.89536 12.3172 7.89536H9.25632C9.02388 7.89536 8.83545 7.70693 8.83545 7.47449V2.88319C8.83545 2.65075 9.02388 2.46232 9.25632 2.46232ZM11.8963 7.05362V3.30406H9.67719V7.05362H11.8963Z"></path><path d="M7.34328 4.75797V5.59971H5.04763V4.75797H7.34328Z"></path><path d="M7.34328 2.46232V3.30406H5.04763V2.46232H7.34328Z"></path><path d="M7.34328 7.05362V7.89536H5.04763V7.05362H7.34328Z"></path><path d="M12.6998 9.34927V10.191H5.04763V9.34927H12.6998Z"></path><path d="M12.6998 11.6449V12.4867H5.04763V11.6449H12.6998Z"></path></svg>';

                    let product1 = createProductElement('Kaikki', 'HS +Kaikki <span>1 kk 0 € <span>(norm. 24,99 €/kk)</span></span>', checkIconSvg + 'HS Digi+<br/>' + checkIconSvg + 'IS Extra+, Ruutu+ ja Supla+<br/>' + checkIconSvg + '13 muuta uutismediaa ja 15 aikakauslehteä', button);
                    let product2 = createProductElement('Digi+', 'HS Digi+ <span>2 kk 0 € <span>(norm. 20,90 €/kk)</span></span>', readingRightsForFourSvg + '<span>Lukuoikeus neljälle</span> ' + facsimileSvg + '<span>Näköislehti</span>', button);
                    let product3 = createProductElement('Digi', 'HS Digi <span>2 kk 0 € <span>(norm. 14,90 €/kk)<span></span>', readingRightsForOneSvg + '<span>Lukuoikeus yhdelle</span>', button);
                    
                    subtitle.innerText = 'Voit irtisanoa tilauksen koska tahansa.';
                    subtitle.classList.remove('paywall__ingress');

                    //append elements to container one by one
                    containerdiv.appendChild(title);
                    containerdiv.appendChild(product1);

                    //delimeter element with TAI and border
                    let delimeter = createElem('div', 'ab-test-paywall-delimeter', '<span>TAI</span>');
                    containerdiv.appendChild(delimeter);
                    
                    containerdiv.appendChild(product2);                   
                    containerdiv.appendChild(product3);

                    if(cycloneDateUntil) { //cyclone subtitle
                        let pvmSpan = calculateDays(cycloneDateUntil, 'asti');
                        let cycloneText = createElem('div', 'paywall__text-block ab-test-paywall-additional-info', 'Lisäksi voit maksuttoman jakson jälkeen jatkaa tilausta 40 % alennuksella ' + pvmSpan);
                        containerdiv.appendChild(cycloneText);
                    }

                    containerdiv.appendChild(button);
                    containerdiv.appendChild(subtitle);

                    insertStyle(containerdiv);
                    let paywall_content = document.querySelector('[data-ab="paywall-content"]');
                    if(paywall_content) {
                        paywall_content.insertBefore(containerdiv, paywall_content.childNodes[0]);
                    }
                    else {
                        paywall.insertBefore(containerdiv, paywall.childNodes[1]); //insert as 2nd element on paywall after paywall indicator	
                    }

                    if(feedTitle) { //rss feed under paywall element and this is the title of that feed
                        let paywallOffering = document.querySelector('.ab-test-hard-paywall-offering');
                        if(paywallOffering) {
                            paywallOffering.innerText = feedTitle;
                        }
                    }

                    if(confirmExperiment()) {
                        return true;
                    }
                }
                else {
                    sendGAEvent('script failed, primary button text unexpected');
                }
            } else {
                sendGAEvent('script failed, paywall not found (or braze modified it)');
            }
        };

        doExperimentChanges();
    };
} catch(e) {
    console.log(e)

  let err = e
  let err_split = e.stack.split('\n')
  let err_line = false
  if (err_split[1]) {
    err_line = err_split[1].split('>:')
  }
  if (err_line[1]) {
    err = err_line[1]
  }
  sendGAEvent('script error: ' + err)
}
 },'js-vHajUAdUYQJAOhkPJFWi': function (cdx) { window.conductrics_checkIfEligibileForP2p = function(isLoggedIn, p2p_lightgbm, p2p) {
    var isIphone = false;
    var isNotDirect = false;
    var isNotLoggedIn = false;
    var isNotTopDeciles = false;
    var topDecilesArray = ['1', '2', '3', '4']; //which deciles we look at (these are strings)

    if(navigator.userAgent.includes("iPhone")) {
    	isIphone = true; //is iphone because useragent has iphone
    }

    if(document.referrer != '' && document.referrer.includes('.hs.fi') === false) {
        isNotDirect = true; //is not direct because referrer exists and it's not hs.fi
    }

    if(isLoggedIn === 'Not_LoggedIn') {
        isNotLoggedIn = true; //is not logged-in because isLoggedIn=Not_LoggedIn
    }

    if(!topDecilesArray.includes(p2p_lightgbm) || !topDecilesArray.includes(p2p)) {
        isNotTopDeciles = true; // is not top deciles because either p2p or p2p_lightgbm is bottom decile
    }

    //if ALL of those are TRUE, then exclude from this agent.
    if(isIphone && isNotDirect && isNotLoggedIn && isNotTopDeciles) {
        return false;
    }
    return true;
}
return true;
 },'js-WzEdgyKyh8OFgTnwCfE0-1740378785': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if (!requireCdx) { testing = true; }
const experimentId = 'HS25-40';
const variantId = 'A';
const experimentName = experimentId + ' Timanttimuuri ot';
const variantName = variantId + ' control';
let currentDefaultButtonText = 'Tilaa HS Digi+ 1. kk 0 €'; //nykyisen napin teksti
// currentDefaultButtonText = 'Lue 2 viikkoa maksutta'; //nykyisen napin teksti
const paywallType = 'hard'; // hard or archived
const newAID = 'G6QWCUNRNVIKP';
const pagePath = false;
const feedTitle = 'Hesarin digitilauksella pääset lukemaan rajoituksetta tämän ja yli 400 uutta timanttiartikkelia kuukaudessa';

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    //if(true) { //use this if not HS ot
    if(requireCdx === false || window.conductrics_checkIfEligibileForP2p(cdx.trait('isLoggedIn'), cdx.trait('p2p_lightgbm'), cdx.trait('p2p'))) {       
        const changeButtonUrlAndText = function(button) {
            let urlParams = {
                'embedded': null,
                'offer': null,
                'aid': newAID,
                'ref': null,
                'showPaymentPeriodList': null,
                'variant': null
            };

            let url = new URL(button.href);
            // Update search params
            if (urlParams) {
                Object.keys(urlParams).forEach(function(key) {
                    if (urlParams[key] === null) {
                        url.searchParams.delete(key);
                    } else if (urlParams[key] !== undefined) {
                        url.searchParams.set(key, urlParams[key]);
                    }
                });
            }
            // Update path
            if (pagePath) {
                let path = url.pathname.split('/');
                path.pop();
                path = path.join('/') + pagePath;
                url.pathname = path;
            }
            button.href = url.toString();
            return button;
        };
    
        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-test-paywall-modified');
            let title = document.querySelector('[data-ab="' + paywallType + '-paywall-title"]');
            let subtitle = document.querySelector('[data-ab="' + paywallType + '-paywall-subtitle"]');
            let button = document.querySelector('[data-ab="' + paywallType + '-paywall-subscribe-button"]');
            let secondaryButton = document.querySelector('[data-ab="' + paywallType + '-paywall-secondary-subscribe-button"]');
            if(experimentExists) {
                sendGAEvent('script failed, paywall already modified');
            } else if(title && button) { 
                if(button.innerText.trim() === currentDefaultButtonText) { //actual changes here
                    button = changeButtonUrlAndText(button);
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
                    
                    title.classList.add('ab-test-paywall-modified', namelower);
            
                    dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
                    //dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': 'change offer to sample at timanttimuuri', 'eventLabel': experimentName + ' ' + variantName});
                    
                    if(feedTitle) {
                        let paywallOffering = document.querySelector('[data-ab="' + paywallType + '-paywall-offering"]');
                        if(paywallOffering) {
                            paywallOffering.innerText = feedTitle;
                        }
                    }

                    if(requireCdx) {
                        cdx.confirm(true);
                    }
                    return true;
                }
                else {
                    sendGAEvent('script failed, primary button text unexpected');
                }
            } else {
                sendGAEvent('script failed, paywall html unexpected');
            }
        };

        doExperimentChanges();
    }
} catch(err) {   
    sendGAEvent('script error: ' + err);
}
 },'js-n7tENWaxEdGhjkJiS4Dc-1740378785': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if (!requireCdx) { testing = true; }
const experimentId = 'HS25-40';
const variantId = 'B';
const experimentName = experimentId + ' Timanttimuuri ot';
const variantName = variantId + ' radio sykloni 2+6 -50%';
let currentDefaultButtonText = 'Tilaa HS Digi+ 1. kk 0 €'; //nykyisen napin teksti
// currentDefaultButtonText = 'Lue 2 viikkoa maksutta'; //nykyisen napin teksti
const paywallType = 'hard'; // hard or archived
const commonDateUntil = 60; //false or number of days
const miniDateUntil = 60;
const digiDateUntil = 60;
const cycloneDateUntil = 240;
const miniAID = 'GQ4H3XH69DZY2'; //HS Digi
const digiAID = 'GK8HTBY5VDLK8'; //HS Digi+
const miniPath = '/api/safe/v1/web/subscription-funnel/hs-mini-tutustu-v62';
const digiPath = '/api/safe/v1/web/subscription-funnel/hs-digi-tutustu-v62';
const feedTitle = 'Hesarin digitilauksella pääset lukemaan rajoituksetta tämän ja yli 400 uutta timanttiartikkelia kuukaudessa';
const defaultProduct = 'Digi+'; //which product is pre-selected

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    //if(true) { //use this if not HS ot
    if(requireCdx === false || window.conductrics_checkIfEligibileForP2p(cdx.trait('isLoggedIn'), cdx.trait('p2p_lightgbm'), cdx.trait('p2p'))) {
        //helper function to create any html element
        const createElem = function(tag, classes, text) {
            let elem = document.createElement(tag);
            if(classes) {
                //split classes by space
                classes = classes.split(' ');
                for(let i = 0; i < classes.length; i++) {
                    elem.classList.add(classes[i]);
                }
            }
            if(text) {
                elem.innerHTML = text;
            }
            return elem;
        }

        //helper function to replace text in correct child node
        function replaceText(node, newText) {
            if (node.nodeType === Node.TEXT_NODE) {
                node.nodeValue = newText;
            } else {
                node.childNodes.forEach((child) => replaceText(child, newText));  
            }
        }

        //helper function to create product element 
        const createProductElement = function(productname, title, features, button) {
            let product = createElem('label', 'ab-test-paywall-product', false);
            product.setAttribute('product', productname);
            if(productname === defaultProduct) { //this is the default option
                product.classList.add('selected'); //mark it selected
            }
            let container = createElem('div', 'ab-product-container', false);

            let check = createElem('input', 'ab-radio', false);
            check.type = 'radio';
            check.name = 'product';
            if(productname === defaultProduct) {
                check.checked = 'checked';
            }
            let productcontent = createElem('div', 'ab-product-content', false);
            let producttitle = createElem('p', 'ab-product-title', title);

            container.appendChild(check);
            productcontent.appendChild(producttitle);

            if(features) {
                let producttext = createElem('p', 'ab-product-text', features);
                productcontent.appendChild(producttext);
            }
            
            container.appendChild(productcontent);
            product.appendChild(container);
            check.onchange = function(e) {
                sendGAEvent('click product ' + productname);
                changeButtonUrlAndText(button, productname);
            }
            return product;
        }

        //helper function to change button url and text
        const changeButtonUrlAndText = function (button, pos) {          
            let urlParams = false;
            let pagePath = false;
            //ab-test-hard-paywall-subtitle
            let cancelAnytime = 'Voit irtisanoa tilauksen koska tahansa.';
            let allProductElements = document.querySelectorAll('.ab-test-paywall-product');
            allProductElements.forEach(function (element) {
                element.classList.remove('selected');
                if(element.getAttribute('product') === pos) {
                    element.classList.add('selected');
                }
            });

            if(pos === 'Digi') {
              pagePath = miniPath;
              urlParams = {
                embedded: null,
                aid: miniAID,
                ref: 'maksumuuri_kova_eiot',
                showPaymentPeriodList: null,
                offer: 3,
                variant: null
              }

              button.innerHTML = 'Tilaa HS ' + pos + ' &nbsp; 2 kk 0 €';
              //let pvmSpan = calculateDays(60, ' asti');
              //document.querySelector('.ab-test-hard-paywall-title').innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
              //document.querySelector('.ab-test-hard-paywall-subtitle').innerText = cancelAnytime;
            }
            else if(pos === 'Digi+') {
                pagePath = digiPath;
                urlParams = {
                  embedded: null,
                  aid: digiAID,
                  ref: 'maksumuuri_kova_eiot',
                  showPaymentPeriodList: null,
                  offer: null,
                  variant: null
                }
  
                button.innerHTML = 'Tilaa HS ' + pos + ' &nbsp; 2 kk 0 €';
                //document.querySelector('.ab-test-hard-paywall-subtitle').innerText = cancelAnytime;
                //let pvmSpan = calculateDays(60, ' asti');
                //document.querySelector('.ab-test-hard-paywall-title').innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
            }
            else {  //sample?
                //shouldnt happen
            }
          
            let url = new URL(button.href);
            // Update search params
            if (urlParams) {
              Object.keys(urlParams).forEach(function (key) {
                if (urlParams[key] === null) {
                  url.searchParams.delete(key)
                } else if (urlParams[key] !== undefined) {
                  url.searchParams.set(key, urlParams[key])
                }
              })
            }
            // Update path
            if (pagePath) {
                url.pathname = pagePath;
            }

            button.href = url.toString();
            button.setAttribute('data-product-name', pos);
            button.onclick = function (e) {
                sendGAEvent('click subscribe ' + pos + ' at ' + variantId)
            }
            return button;
        }

        //helper function to calculate days d.m. 
        const calculateDays = function(d, suffix) {
            let date = new Date();
            date.setDate(date.getDate() + d);
            let dd = date.getDate();
            let mm = date.getMonth()+1;
            let pvmSpan = false;
            if(suffix) {
                pvmSpan = dd.toString() + '.' + mm.toString() + '. ' + suffix;
            }
            else {
                pvmSpan = dd.toString() + '.' + mm.toString() + '.'
            }
            return pvmSpan;
        }

        //helper function to insert style
        const insertStyle = function(containerdiv) {
            let style = `
                    :root {
                        --main-color: #191919;
                        --underline-color: #787878;
                        --line-color: #E9EAED;
                        --main-font: 'Helsingin', Arial, sans-serif;
                    }
                        
                    .ab-test-paywall-container {
                        display: flex;
                        flex-direction: column;
                        width: 100%;
                        max-width: calc(100% - 16px);
                    }

                    .ab-test-paywall-container [data-ab="hard-paywall-title"] {
                        font-size: 26px;
                        margin-bottom: 16px;
                        text-align: center;
                    }

                    .ab-test-paywall-product {
                        display: flex;
                        flex-direction: column;
                        align-items: baseline;
                        font-size: 16px;
                        font-family: var(--main-font);
                        margin: 0 auto;
                        border-top: 1px solid var(--line-color);
                        padding: 12px 0px;
                        cursor: pointer;
                        width: 100%;
                        border: 1px solid #000;
                        border-radius: 4px;
                        padding:0;
                        margin-bottom: 8px;
                        background: #F8F8F8;
                    }

                    .ab-test-paywall-product[product="Kaikki"] {
                        background: #FFF6E5;
                    }

                    .ab-product-container {
                        display: flex;
                        flex-direction: row;
                        align-items: baseline;
                        padding: 12px 12px 8px;
                        width: 100%;
                    }

                    .ab-test-paywall-delimeter {
                        overflow: hidden;
                        margin-top: 0;
                        margin-bottom: 8px;

                        text-align: center;
                        font-family: var(--main-font);
                        font-size: 14px;
                        font-style: normal;
                        font-weight: 500;
                        line-height: normal;
                        letter-spacing: 0.36px;
                    }
                    
                    .ab-test-paywall-delimeter:before, .ab-test-paywall-delimeter:after {
                        background-color: #ccc;
                        content: "";
                        display: inline-block;
                        height: 0.5px;
                        position: relative;
                        vertical-align: middle;
                        width: 50%;
                    }

                    .ab-test-paywall-delimeter:before {
                        right: 8px;
                        margin-left: -50%;
                    }
    
                    .ab-test-paywall-delimeter:after {
                        left: 8px;
                        margin-right: -50%;
                    }

                    .ab-test-paywall-product .ab-product-content {
                        display: flex;
                        flex-direction: column;
                        margin-left: 12px;
                        width: 100%;
                    }

                    .ab-test-paywall-product .ab-radio {
                        transform: scale(1.6);
                        accent-color: var(--main-color);
                        cursor: pointer;
                    }

                    @supports (-moz-appearance:none) {
                        .ab-test-paywall-product .ab-radio {
                            transform: scale(1.5);
                        }
                    }

                    .ab-test-paywall-product .ab-product-title {
                        font-weight: 600;
                        padding-bottom: 4px;
                        font-size: 14px;
                    }

                    .ab-test-paywall-product .ab-product-title > span {
                        font-size: 14px;
                        font-weight: 600;
                        float: right;
                        letter-spacing: -0.5px;
                    }

                    .ab-test-paywall-product .ab-product-title > span > span {
                        font-size: 12px;
                        font-weight: 300;
                        color: #666;
                        text-decoration: line-through;
                        padding-left: 4px;
                        letter-spacing: 0;
                    }

                    .ab-test-paywall-product .ab-product-text {
                        font-size: 12px;
                        margin-top: 2px;
                        color: #555;
                        text-align: left;
                    }

                    .ab-test-paywall-product .ab-product-text > span {
                        margin-right: 8px;
                    }

                    .ab-test-paywall-product .ab-product-text svg {
                        fill: #191919;
                        display: inline;
                        margin-right: 2px;
                        vertical-align: baseline;
                        height: 10px;
                    }

                    .ab-test-paywall-additional-info {
                        font-family: var(--main-font);
                        font-size: 15px;
                        font-weight: 600;
                        line-height: 1.2;
                        text-align: center;
                        margin-bottom: 16px;
                    }

                    [data-ab="hard-paywall-subtitle"] {
                        font-size: 15px;
                        font-family: var(--main-font);
                        margin-top: 12px;
                        margin-bottom: 32px;
                        text-align: center;
                    }

                    [data-ab="hard-paywall-subscribe-button"] {
                        margin: 12px auto 4px;
                        width: 260px;
                        font-family: var(--main-font);
                        font-size: 16px;
                        font-weight: 600;
                    }

                    [data-ab="hard-paywall-subscribe-button"]:active {
                        margin: 12px auto 5px;
                        width: 258px;
                    }

                    [data-ab="hard-paywall-login-link"] {
                        text-decoration: underline;
                        font-size: 14px;   
                        margin-bottom: 24px;
                        margin-top: 16px;
                    }

                    [data-ab="hard-paywall-offering"] {
                        max-width: 480px;
                    }

                    /* dark mode support */
                    .sndp-dark .ab-test-paywall-product {
                        border: 1px solid #ccc;
                        background: #262626;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-text svg {
                        fill: #AFAFAF;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-title > span, .sndp-dark .ab-test-paywall-product .ab-product-text {
                        color: #fff;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-title > span > span {
                        color: #AFAFAF;
                    }
                    
                    @media (min-width: 380px) {
                        .ab-test-paywall-container {
                            max-width: 350px;
                        }

                        .ab-test-paywall-product .ab-product-text {
                            font-size: 14px;
                            margin-top: 4px;
                        }

                        .ab-test-paywall-product .ab-product-title, .ab-test-paywall-product .ab-product-title > span {
                            font-size: 16px;
                            letter-spacing: 0;
                        }

                        .ab-test-paywall-product .ab-product-title > span > span {
                            font-size: 14px;
                            padding-left: 8px;
                        }

                        .ab-test-paywall-product .ab-product-content {
                            margin-left: 16px;
                        }

                        .ab-test-paywall-product .ab-product-text svg {
                            margin-right: 4px;
                            height: 12px;
                        }

                        .ab-test-paywall-product .ab-product-text > span {
                            margin-right: 12px;
                        }
                    }
            `;
            
            if(document.location.pathname.indexOf('/visio/') > -1 ||
            document.location.pathname.indexOf('/teknologia/') > -1 ||
            document.location.pathname.indexOf('/talous/') > -1 ||
            document.location.pathname.indexOf('/autot/') > -1) {
            style += `	
                    .ab-test-paywall-product {
                        background: #F5E6DC;
                    }
            
                    .ab-test-paywall-grid .ab-grid-choose-button {
                        background: #b7384b;
                    }

                    .ab-test-paywall-product .ab-radio {
                        accent-color: #b7384b;
                    }

                    .ab-test-paywall-grid .ab-grid-choose-button:hover, .ab-test-paywall-grid .ab-grid-choose-button:active, .ab-test-paywall-grid .ab-grid-choose-button:focus {
                        background: #752f35;
                    }
                `;
            }
                        
            let styleSheet = document.createElement("style");
            styleSheet.type = "text/css";
            containerdiv.appendChild(styleSheet);
            styleSheet.innerText = style;
        };

        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-test-paywall-modified');
            let paywall = document.querySelector('[data-ab="' + paywallType + '-paywall"]');
            let title = document.querySelector('[data-ab="' + paywallType + '-paywall-title"]');
            let subtitle = document.querySelector('[data-ab="' + paywallType + '-paywall-subtitle"]');
            let button = document.querySelector('[data-ab="' + paywallType + '-paywall-subscribe-button"]');
            let secondaryButton = document.querySelector('[data-ab="' + paywallType + '-paywall-secondary-subscribe-button"]');
            let brazeModifiedPaywall = document.querySelector('.ab-test-paywall-modified-by-braze');
            if(brazeModifiedPaywall) {
                //sendGAEvent('script failed, paywall already modified by Braze');
            }
            else if(experimentExists) {
                //sendGAEvent('script failed, paywall already modified');
            } else if(title && button) { 
                if(button.innerText.trim() === currentDefaultButtonText) { //actual changes here
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
                    title.classList.add('ab-test-paywall-modified', namelower);

                    if(secondaryButton) { //katso muut tarjoukset button on HS
                        secondaryButton.style.display = 'none';
                    }

                    let loginLink = paywall.querySelector('[data-ab="' + paywallType + '-paywall-login-link"]');
                    if(loginLink) {
                        let paywallIndicator = paywall.querySelector('[data-ab="' + paywallType + '-paywall-logo"]').parentNode;
                        paywallIndicator.insertBefore(loginLink, paywallIndicator.childNodes[2]); //insert in between paywall indicators
                    }

                    //create container div - which contains all the elements
                    let containerdiv = createElem('div', 'ab-test-paywall-container', false);

                    //change subscribe button url and text
                    button = changeButtonUrlAndText(button, 'Digi+');

                    //main date until in title
                    if(commonDateUntil) {
                        let pvmSpan = calculateDays(commonDateUntil, 'asti');
                        title.innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
                    }

                    //let checkIconSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14" fill="none"><path d="M6.05367 8.43079L4.50494 6.88207C4.41264 6.78976 4.29662 6.74254 4.15687 6.74041C4.01713 6.73826 3.89897 6.78548 3.80239 6.88207C3.70581 6.97865 3.65752 7.09574 3.65752 7.23334C3.65752 7.37094 3.70581 7.48803 3.80239 7.5846L5.63187 9.41409C5.75238 9.5346 5.89298 9.59486 6.05367 9.59486C6.21435 9.59486 6.35494 9.5346 6.47545 9.41409L10.1844 5.70512C10.2767 5.61282 10.324 5.4968 10.3261 5.35705C10.3282 5.21731 10.281 5.09915 10.1844 5.00257C10.0878 4.90599 9.97076 4.8577 9.83316 4.8577C9.69556 4.8577 9.57847 4.90599 9.48189 5.00257L6.05367 8.43079ZM7.00094 13.3333C6.12498 13.3333 5.30163 13.1671 4.53087 12.8347C3.7601 12.5022 3.08965 12.051 2.5195 11.4812C1.94935 10.9113 1.49798 10.2411 1.16539 9.47067C0.832798 8.70026 0.666504 7.87708 0.666504 7.00112C0.666504 6.12517 0.832726 5.30181 1.16517 4.53105C1.49762 3.76029 1.94878 3.08983 2.51867 2.51969C3.08857 1.94953 3.75873 1.49816 4.52915 1.16557C5.29957 0.832982 6.12275 0.666687 6.9987 0.666687C7.87466 0.666687 8.69802 0.83291 9.46877 1.16535C10.2395 1.4978 10.91 1.94897 11.4801 2.51885C12.0503 3.08875 12.5017 3.75892 12.8343 4.52934C13.1668 5.29975 13.3331 6.12293 13.3331 6.99889C13.3331 7.87484 13.1669 8.6982 12.8345 9.46895C12.502 10.2397 12.0509 10.9102 11.481 11.4803C10.9111 12.0505 10.2409 12.5019 9.47049 12.8344C8.70008 13.167 7.87689 13.3333 7.00094 13.3333ZM6.99982 12.3333C8.48871 12.3333 9.74982 11.8167 10.7832 10.7833C11.8165 9.75001 12.3332 8.48889 12.3332 7C12.3332 5.51112 11.8165 4.25 10.7832 3.21667C9.74982 2.18334 8.48871 1.66667 6.99982 1.66667C5.51093 1.66667 4.24982 2.18334 3.21649 3.21667C2.18315 4.25 1.66649 5.51112 1.66649 7C1.66649 8.48889 2.18315 9.75001 3.21649 10.7833C4.24982 11.8167 5.51093 12.3333 6.99982 12.3333Z" fill="#191919"/></svg>';
                    let readingRightsForOneSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="2 2 32 32" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M18.3725 13.5C20.0293 13.5 21.3725 12.1569 21.3725 10.5C21.3725 8.84315 20.0293 7.5 18.3725 7.5C16.7156 7.5 15.3725 8.84315 15.3725 10.5C15.3725 12.1569 16.7156 13.5 18.3725 13.5ZM18.3725 16.5C21.6862 16.5 24.3725 13.8137 24.3725 10.5C24.3725 7.18629 21.6862 4.5 18.3725 4.5C15.0588 4.5 12.3725 7.18629 12.3725 10.5C12.3725 13.8137 15.0588 16.5 18.3725 16.5ZM18.3725 18C23.8903 18 27.2436 20.6846 28.948 23.6222C28.9709 23.6617 28.9918 23.7017 29.0107 23.7423C29.3011 24.1997 29.3328 24.7992 29.0421 25.3002C27.3377 28.2379 23.8903 31.1253 18.3725 31.1253C12.8547 31.1253 9.40724 28.2379 7.70281 25.3002C7.41216 24.7992 7.44389 24.1999 7.73416 23.7425C7.7531 23.7019 7.77402 23.6617 7.79695 23.6222C9.50137 20.6846 12.8547 18 18.3725 18ZM10.7754 24.5282C12.1114 26.3666 14.5065 28.1253 18.3725 28.1253C22.2385 28.1253 24.6335 26.3666 25.9696 24.5282C24.6675 22.6761 22.3285 21 18.3725 21C14.4164 21 12.0774 22.6761 10.7754 24.5282Z"></path></svg>';
                    let readingRightsForFourSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="13" viewBox="0 0 14 13" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.5809 3.16667C7.5809 4.63943 6.387 5.83333 4.91424 5.83333C3.44148 5.83333 2.24757 4.63943 2.24757 3.16667C2.24757 1.69391 3.44148 0.5 4.91424 0.5C6.387 0.5 7.5809 1.69391 7.5809 3.16667ZM6.24757 3.16667C6.24757 3.90305 5.65062 4.5 4.91424 4.5C4.17786 4.5 3.5809 3.90305 3.5809 3.16667C3.5809 2.43029 4.17786 1.83333 4.91424 1.83333C5.65062 1.83333 6.24757 2.43029 6.24757 3.16667Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.61447 8.99877C8.85695 7.69314 7.3666 6.5 4.91424 6.5C2.46188 6.5 0.97153 7.69314 0.214008 8.99877C0.20382 9.01633 0.194523 9.03416 0.186103 9.05221C0.0570957 9.2555 0.0429897 9.52189 0.17217 9.74454C0.929692 11.0502 2.46188 12.3334 4.91425 12.3334C7.36661 12.3334 8.8988 11.0502 9.65632 9.74454C9.78552 9.52186 9.77139 9.25543 9.64234 9.05214C9.63393 9.03411 9.62464 9.0163 9.61447 8.99877ZM4.91425 11.0001C3.19602 11.0001 2.13155 10.2185 1.53775 9.40141C2.11643 8.57826 3.15599 7.83333 4.91424 7.83333C6.67249 7.83333 7.71205 8.57827 8.29073 9.40142C7.69693 10.2185 6.63246 11.0001 4.91425 11.0001Z"></path><path d="M8.58091 5.83333C8.1137 5.83333 7.67455 5.71318 7.29267 5.50209C7.60603 5.183 7.85567 4.80114 8.021 4.37709C8.19125 4.45598 8.38094 4.5 8.58091 4.5C9.31729 4.5 9.91424 3.90305 9.91424 3.16667C9.91424 2.43029 9.31729 1.83333 8.58091 1.83333C8.38094 1.83333 8.19125 1.87736 8.021 1.95624C7.85567 1.5322 7.60603 1.15033 7.29267 0.831247C7.67455 0.620154 8.1137 0.5 8.58091 0.5C10.0537 0.5 11.2476 1.69391 11.2476 3.16667C11.2476 4.63943 10.0537 5.83333 8.58091 5.83333Z"></path><path d="M9.66834 10.8844C9.21539 11.4261 8.63188 11.9239 7.91194 12.3003C8.12684 12.322 8.34979 12.3334 8.58092 12.3334C11.0333 12.3334 12.5655 11.0502 13.323 9.74454C13.4522 9.52186 13.4381 9.25543 13.309 9.05214C13.3006 9.03411 13.2913 9.0163 13.2811 8.99877C12.5236 7.69314 11.0333 6.5 8.58091 6.5C8.36457 6.5 8.15572 6.50929 7.95419 6.52711C8.67207 6.90013 9.24931 7.39617 9.6959 7.94617C10.7985 8.18463 11.5135 8.77001 11.9574 9.40142C11.5006 10.0299 10.7654 10.6374 9.66834 10.8844Z"></path></svg>';
                    let facsimileSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="15" viewBox="0 0 16 15" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M15.0282 0.519266C14.9956 0.319292 14.822 0.166664 14.6128 0.166664H3.13458L3.06631 0.172173C2.86634 0.20479 2.71371 0.378338 2.71371 0.587534L2.71295 3.94837L0.838847 3.94897L0.768529 3.95481C0.562854 3.98937 0.408842 4.1729 0.41839 4.38847L0.818935 13.4318L0.847872 13.5654C1.0317 14.3071 1.55045 14.7823 2.27412 14.7823H13.6125L13.7284 14.7778C14.455 14.7212 15.0337 14.1365 15.0337 13.4132V0.587534L15.0282 0.519266ZM3.55469 1.0084H14.1912L14.192 13.4132L14.1868 13.4837C14.1491 13.7378 13.9103 13.9406 13.6125 13.9406H2.27412L2.18767 13.9352C1.90852 13.8994 1.72045 13.6867 1.65272 13.3339L1.27816 4.79011H2.71295L2.71371 12.0658L2.71922 12.1341C2.75184 12.334 2.92539 12.4867 3.13458 12.4867L3.20285 12.4812C3.40282 12.4485 3.55545 12.275 3.55545 12.0658L3.55469 1.0084Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.25632 2.46232H12.3172C12.5496 2.46232 12.7381 2.65075 12.7381 2.88319V7.47449C12.7381 7.70693 12.5496 7.89536 12.3172 7.89536H9.25632C9.02388 7.89536 8.83545 7.70693 8.83545 7.47449V2.88319C8.83545 2.65075 9.02388 2.46232 9.25632 2.46232ZM11.8963 7.05362V3.30406H9.67719V7.05362H11.8963Z"></path><path d="M7.34328 4.75797V5.59971H5.04763V4.75797H7.34328Z"></path><path d="M7.34328 2.46232V3.30406H5.04763V2.46232H7.34328Z"></path><path d="M7.34328 7.05362V7.89536H5.04763V7.05362H7.34328Z"></path><path d="M12.6998 9.34927V10.191H5.04763V9.34927H12.6998Z"></path><path d="M12.6998 11.6449V12.4867H5.04763V11.6449H12.6998Z"></path></svg>';

                    let product1 = createProductElement('Digi+', 'HS Digi+ <span>2 kk 0 € <span>(norm. 20,90 €/kk)</span></span>', readingRightsForFourSvg + '<span>Lukuoikeus neljälle</span> ' + facsimileSvg + '<span>Näköislehti</span>', button);
                    let product2 = createProductElement('Digi', 'HS Digi <span>2 kk 0 € <span>(norm. 14,90 €/kk)<span></span>', readingRightsForOneSvg + '<span>Lukuoikeus yhdelle</span>', button);
                    
                    subtitle.innerText = 'Voit irtisanoa tilauksen koska tahansa.';
                    subtitle.classList.remove('paywall__ingress');

                    //append elements to container one by one
                    containerdiv.appendChild(title);
                    
                    //delimeter element with TAI and border
                    /*let delimeter = createElem('div', 'ab-test-paywall-delimeter', '<span>TAI</span>');
                    containerdiv.appendChild(delimeter);*/
                    
                    containerdiv.appendChild(product1);
                    containerdiv.appendChild(product2);

                    if(cycloneDateUntil) { //cyclone subtitle
                        let pvmSpan = calculateDays(cycloneDateUntil, 'asti');
                        let cycloneText = createElem('div', 'paywall__text-block ab-test-paywall-additional-info', 'Lisäksi voit maksuttoman jakson jälkeen jatkaa tilausta 50 % alennuksella ' + pvmSpan);
                        containerdiv.appendChild(cycloneText);
                    }

                    containerdiv.appendChild(button);
                    containerdiv.appendChild(subtitle);

                    insertStyle(containerdiv);
                    paywall.insertBefore(containerdiv, paywall.childNodes[1]); //insert as 2nd element on paywall after paywall indicator	
            
                    dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
                    dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': 'change offer to cyclone at timanttimuuri', 'eventLabel': experimentName + ' ' + variantName});

                    if(feedTitle) { //rss feed under paywall element and this is the title of that feed
                        let paywallOffering = document.querySelector('.ab-test-hard-paywall-offering');
                        if(paywallOffering) {
                            paywallOffering.innerText = feedTitle;
                        }
                    }
                    
                    if(requireCdx) {
                        cdx.confirm(true);
                    }
                    return true;
                }
                else {
                    sendGAEvent('script failed, primary button text unexpected');
                }
            } else {
                sendGAEvent('script failed, paywall html unexpected');
            }
        };

        doExperimentChanges();
    };
} catch(e) {
    console.log(e)

  let err = e
  let err_split = e.stack.split('\n')
  let err_line = false
  if (err_split[1]) {
    err_line = err_split[1].split('>:')
  }
  if (err_line[1]) {
    err = err_line[1]
  }
  sendGAEvent('script error: ' + err)
}
 },'js-V3HqmOQAONCQTI1ph7Tt-1740378785': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if (!requireCdx) { testing = true; }
const experimentId = 'HS25-40';
const variantId = 'C';
const experimentName = experimentId + ' Timanttimuuri ot';
const variantName = variantId + ' radio sykloni 2+4 -40%';
let currentDefaultButtonText = 'Tilaa HS Digi+ 1. kk 0 €'; //nykyisen napin teksti
// currentDefaultButtonText = 'Lue 2 viikkoa maksutta'; //nykyisen napin teksti
const paywallType = 'hard'; // hard or archived
const commonDateUntil = 60; //false or number of days
const miniDateUntil = 60;
const digiDateUntil = 60;
const cycloneDateUntil = 180;
const miniAID = 'GUMDQXYIS8JTM'; //HS Digi
const digiAID = 'GGWLORYTBVNS6'; //HS Digi+
const miniPath = '/api/safe/v1/web/subscription-funnel/hs-mini-tutustu-v624';
const digiPath = '/api/safe/v1/web/subscription-funnel/hs-digi-tutustu-v624';
const feedTitle = 'Hesarin digitilauksella pääset lukemaan rajoituksetta tämän ja yli 400 uutta timanttiartikkelia kuukaudessa';
const defaultProduct = 'Digi+'; //which product is pre-selected

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    //if(true) { //use this if not HS ot
    if(requireCdx === false || window.conductrics_checkIfEligibileForP2p(cdx.trait('isLoggedIn'), cdx.trait('p2p_lightgbm'), cdx.trait('p2p'))) {
        //helper function to create any html element
        const createElem = function(tag, classes, text) {
            let elem = document.createElement(tag);
            if(classes) {
                //split classes by space
                classes = classes.split(' ');
                for(let i = 0; i < classes.length; i++) {
                    elem.classList.add(classes[i]);
                }
            }
            if(text) {
                elem.innerHTML = text;
            }
            return elem;
        }

        //helper function to replace text in correct child node
        function replaceText(node, newText) {
            if (node.nodeType === Node.TEXT_NODE) {
                node.nodeValue = newText;
            } else {
                node.childNodes.forEach((child) => replaceText(child, newText));  
            }
        }

        //helper function to create product element 
        const createProductElement = function(productname, title, features, button) {
            let product = createElem('label', 'ab-test-paywall-product', false);
            product.setAttribute('product', productname);
            if(productname === defaultProduct) { //this is the default option
                product.classList.add('selected'); //mark it selected
            }
            let container = createElem('div', 'ab-product-container', false);

            let check = createElem('input', 'ab-radio', false);
            check.type = 'radio';
            check.name = 'product';
            if(productname === defaultProduct) {
                check.checked = 'checked';
            }
            let productcontent = createElem('div', 'ab-product-content', false);
            let producttitle = createElem('p', 'ab-product-title', title);

            container.appendChild(check);
            productcontent.appendChild(producttitle);

            if(features) {
                let producttext = createElem('p', 'ab-product-text', features);
                productcontent.appendChild(producttext);
            }
            
            container.appendChild(productcontent);
            product.appendChild(container);
            check.onchange = function(e) {
                sendGAEvent('click product ' + productname);
                changeButtonUrlAndText(button, productname);
            }
            return product;
        }

        //helper function to change button url and text
        const changeButtonUrlAndText = function (button, pos) {          
            let urlParams = false;
            let pagePath = false;
            //ab-test-hard-paywall-subtitle
            let cancelAnytime = 'Voit irtisanoa tilauksen koska tahansa.';
            let allProductElements = document.querySelectorAll('.ab-test-paywall-product');
            allProductElements.forEach(function (element) {
                element.classList.remove('selected');
                if(element.getAttribute('product') === pos) {
                    element.classList.add('selected');
                }
            });

            if(pos === 'Digi') {
              pagePath = miniPath;
              urlParams = {
                embedded: null,
                aid: miniAID,
                ref: 'maksumuuri_kova_eiot',
                showPaymentPeriodList: null,
                offer: 3,
                variant: null
              }

              button.innerHTML = 'Tilaa HS ' + pos + ' &nbsp; 2 kk 0 €';
              //let pvmSpan = calculateDays(60, ' asti');
              //document.querySelector('.ab-test-hard-paywall-title').innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
              //document.querySelector('.ab-test-hard-paywall-subtitle').innerText = cancelAnytime;
            }
            else if(pos === 'Digi+') {
                pagePath = digiPath;
                urlParams = {
                  embedded: null,
                  aid: digiAID,
                  ref: 'maksumuuri_kova_eiot',
                  showPaymentPeriodList: null,
                  offer: null,
                  variant: null
                }
  
                button.innerHTML = 'Tilaa HS ' + pos + ' &nbsp; 2 kk 0 €';
                //document.querySelector('.ab-test-hard-paywall-subtitle').innerText = cancelAnytime;
                //let pvmSpan = calculateDays(60, ' asti');
                //document.querySelector('.ab-test-hard-paywall-title').innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
            }
            else {  //sample?
                //shouldnt happen
            }
          
            let url = new URL(button.href);
            // Update search params
            if (urlParams) {
              Object.keys(urlParams).forEach(function (key) {
                if (urlParams[key] === null) {
                  url.searchParams.delete(key)
                } else if (urlParams[key] !== undefined) {
                  url.searchParams.set(key, urlParams[key])
                }
              })
            }
            // Update path
            if (pagePath) {
                url.pathname = pagePath;
            }

            button.href = url.toString();
            button.setAttribute('data-product-name', pos);
            button.onclick = function (e) {
                sendGAEvent('click subscribe ' + pos + ' at ' + variantId)
            }
            return button;
        }

        //helper function to calculate days d.m. 
        const calculateDays = function(d, suffix) {
            let date = new Date();
            date.setDate(date.getDate() + d);
            let dd = date.getDate();
            let mm = date.getMonth()+1;
            let pvmSpan = false;
            if(suffix) {
                pvmSpan = dd.toString() + '.' + mm.toString() + '. ' + suffix;
            }
            else {
                pvmSpan = dd.toString() + '.' + mm.toString() + '.'
            }
            return pvmSpan;
        }

        //helper function to insert style
        const insertStyle = function(containerdiv) {
            let style = `
                    :root {
                        --main-color: #191919;
                        --underline-color: #787878;
                        --line-color: #E9EAED;
                        --main-font: 'Helsingin', Arial, sans-serif;
                    }
                        
                    .ab-test-paywall-container {
                        display: flex;
                        flex-direction: column;
                        width: 100%;
                        max-width: calc(100% - 16px);
                    }

                    .ab-test-paywall-container [data-ab="hard-paywall-title"] {
                        font-size: 26px;
                        margin-bottom: 16px;
                        text-align: center;
                    }

                    .ab-test-paywall-product {
                        display: flex;
                        flex-direction: column;
                        align-items: baseline;
                        font-size: 16px;
                        font-family: var(--main-font);
                        margin: 0 auto;
                        border-top: 1px solid var(--line-color);
                        padding: 12px 0px;
                        cursor: pointer;
                        width: 100%;
                        border: 1px solid #000;
                        border-radius: 4px;
                        padding:0;
                        margin-bottom: 8px;
                        background: #F8F8F8;
                    }

                    .ab-test-paywall-product[product="Kaikki"] {
                        background: #FFF6E5;
                    }

                    .ab-product-container {
                        display: flex;
                        flex-direction: row;
                        align-items: baseline;
                        padding: 12px 12px 8px;
                        width: 100%;
                    }

                    .ab-test-paywall-delimeter {
                        overflow: hidden;
                        margin-top: 0;
                        margin-bottom: 8px;

                        text-align: center;
                        font-family: var(--main-font);
                        font-size: 14px;
                        font-style: normal;
                        font-weight: 500;
                        line-height: normal;
                        letter-spacing: 0.36px;
                    }
                    
                    .ab-test-paywall-delimeter:before, .ab-test-paywall-delimeter:after {
                        background-color: #ccc;
                        content: "";
                        display: inline-block;
                        height: 0.5px;
                        position: relative;
                        vertical-align: middle;
                        width: 50%;
                    }

                    .ab-test-paywall-delimeter:before {
                        right: 8px;
                        margin-left: -50%;
                    }
    
                    .ab-test-paywall-delimeter:after {
                        left: 8px;
                        margin-right: -50%;
                    }

                    .ab-test-paywall-product .ab-product-content {
                        display: flex;
                        flex-direction: column;
                        margin-left: 12px;
                        width: 100%;
                    }

                    .ab-test-paywall-product .ab-radio {
                        transform: scale(1.6);
                        accent-color: var(--main-color);
                        cursor: pointer;
                    }

                    @supports (-moz-appearance:none) {
                        .ab-test-paywall-product .ab-radio {
                            transform: scale(1.5);
                        }
                    }

                    .ab-test-paywall-product .ab-product-title {
                        font-weight: 600;
                        padding-bottom: 4px;
                        font-size: 14px;
                    }

                    .ab-test-paywall-product .ab-product-title > span {
                        font-size: 14px;
                        font-weight: 600;
                        float: right;
                        letter-spacing: -0.5px;
                    }

                    .ab-test-paywall-product .ab-product-title > span > span {
                        font-size: 12px;
                        font-weight: 300;
                        color: #666;
                        text-decoration: line-through;
                        padding-left: 4px;
                        letter-spacing: 0;
                    }

                    .ab-test-paywall-product .ab-product-text {
                        font-size: 12px;
                        margin-top: 2px;
                        color: #555;
                        text-align: left;
                    }

                    .ab-test-paywall-product .ab-product-text > span {
                        margin-right: 8px;
                    }

                    .ab-test-paywall-product .ab-product-text svg {
                        fill: #191919;
                        display: inline;
                        margin-right: 2px;
                        vertical-align: baseline;
                        height: 10px;
                    }

                    .ab-test-paywall-additional-info {
                        font-family: var(--main-font);
                        font-size: 15px;
                        font-weight: 600;
                        line-height: 1.2;
                        text-align: center;
                        margin-bottom: 16px;
                    }

                    [data-ab="hard-paywall-subtitle"] {
                        font-size: 15px;
                        font-family: var(--main-font);
                        margin-top: 12px;
                        margin-bottom: 32px;
                        text-align: center;
                    }

                    [data-ab="hard-paywall-subscribe-button"] {
                        margin: 12px auto 4px;
                        width: 260px;
                        font-family: var(--main-font);
                        font-size: 16px;
                        font-weight: 600;
                    }

                    [data-ab="hard-paywall-subscribe-button"]:active {
                        margin: 12px auto 5px;
                        width: 258px;
                    }

                    [data-ab="hard-paywall-login-link"] {
                        text-decoration: underline;
                        font-size: 14px;   
                        margin-bottom: 24px;
                        margin-top: 16px;
                    }

                    [data-ab="hard-paywall-offering"] {
                        max-width: 480px;
                    }

                    /* dark mode support */
                    .sndp-dark .ab-test-paywall-product {
                        border: 1px solid #ccc;
                        background: #262626;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-text svg {
                        fill: #AFAFAF;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-title > span, .sndp-dark .ab-test-paywall-product .ab-product-text {
                        color: #fff;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-title > span > span {
                        color: #AFAFAF;
                    }
                    
                    @media (min-width: 380px) {
                        .ab-test-paywall-container {
                            max-width: 350px;
                        }

                        .ab-test-paywall-product .ab-product-text {
                            font-size: 14px;
                            margin-top: 4px;
                        }

                        .ab-test-paywall-product .ab-product-title, .ab-test-paywall-product .ab-product-title > span {
                            font-size: 16px;
                            letter-spacing: 0;
                        }

                        .ab-test-paywall-product .ab-product-title > span > span {
                            font-size: 14px;
                            padding-left: 8px;
                        }

                        .ab-test-paywall-product .ab-product-content {
                            margin-left: 16px;
                        }

                        .ab-test-paywall-product .ab-product-text svg {
                            margin-right: 4px;
                            height: 12px;
                        }

                        .ab-test-paywall-product .ab-product-text > span {
                            margin-right: 12px;
                        }
                    }
            `;
            
            if(document.location.pathname.indexOf('/visio/') > -1 ||
            document.location.pathname.indexOf('/teknologia/') > -1 ||
            document.location.pathname.indexOf('/talous/') > -1 ||
            document.location.pathname.indexOf('/autot/') > -1) {
            style += `	
                    .ab-test-paywall-product {
                        background: #F5E6DC;
                    }
            
                    .ab-test-paywall-grid .ab-grid-choose-button {
                        background: #b7384b;
                    }

                    .ab-test-paywall-product .ab-radio {
                        accent-color: #b7384b;
                    }

                    .ab-test-paywall-grid .ab-grid-choose-button:hover, .ab-test-paywall-grid .ab-grid-choose-button:active, .ab-test-paywall-grid .ab-grid-choose-button:focus {
                        background: #752f35;
                    }
                `;
            }
                        
            let styleSheet = document.createElement("style");
            styleSheet.type = "text/css";
            containerdiv.appendChild(styleSheet);
            styleSheet.innerText = style;
        };

        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-test-paywall-modified');
            let paywall = document.querySelector('[data-ab="' + paywallType + '-paywall"]');
            let title = document.querySelector('[data-ab="' + paywallType + '-paywall-title"]');
            let subtitle = document.querySelector('[data-ab="' + paywallType + '-paywall-subtitle"]');
            let button = document.querySelector('[data-ab="' + paywallType + '-paywall-subscribe-button"]');
            let secondaryButton = document.querySelector('[data-ab="' + paywallType + '-paywall-secondary-subscribe-button"]');
            let brazeModifiedPaywall = document.querySelector('.ab-test-paywall-modified-by-braze');
            if(brazeModifiedPaywall) {
                //sendGAEvent('script failed, paywall already modified by Braze');
            }
            else if(experimentExists) {
                //sendGAEvent('script failed, paywall already modified');
            } else if(title && button) { 
                if(button.innerText.trim() === currentDefaultButtonText) { //actual changes here
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
                    title.classList.add('ab-test-paywall-modified', namelower);

                    if(secondaryButton) { //katso muut tarjoukset button on HS
                        secondaryButton.style.display = 'none';
                    }

                    let loginLink = paywall.querySelector('[data-ab="' + paywallType + '-paywall-login-link"]');
                    if(loginLink) {
                        let paywallIndicator = paywall.querySelector('[data-ab="' + paywallType + '-paywall-logo"]').parentNode;
                        paywallIndicator.insertBefore(loginLink, paywallIndicator.childNodes[2]); //insert in between paywall indicators
                    }

                    //create container div - which contains all the elements
                    let containerdiv = createElem('div', 'ab-test-paywall-container', false);

                    //change subscribe button url and text
                    button = changeButtonUrlAndText(button, 'Digi+');

                    //main date until in title
                    if(commonDateUntil) {
                        let pvmSpan = calculateDays(commonDateUntil, 'asti');
                        title.innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
                    }

                    //let checkIconSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14" fill="none"><path d="M6.05367 8.43079L4.50494 6.88207C4.41264 6.78976 4.29662 6.74254 4.15687 6.74041C4.01713 6.73826 3.89897 6.78548 3.80239 6.88207C3.70581 6.97865 3.65752 7.09574 3.65752 7.23334C3.65752 7.37094 3.70581 7.48803 3.80239 7.5846L5.63187 9.41409C5.75238 9.5346 5.89298 9.59486 6.05367 9.59486C6.21435 9.59486 6.35494 9.5346 6.47545 9.41409L10.1844 5.70512C10.2767 5.61282 10.324 5.4968 10.3261 5.35705C10.3282 5.21731 10.281 5.09915 10.1844 5.00257C10.0878 4.90599 9.97076 4.8577 9.83316 4.8577C9.69556 4.8577 9.57847 4.90599 9.48189 5.00257L6.05367 8.43079ZM7.00094 13.3333C6.12498 13.3333 5.30163 13.1671 4.53087 12.8347C3.7601 12.5022 3.08965 12.051 2.5195 11.4812C1.94935 10.9113 1.49798 10.2411 1.16539 9.47067C0.832798 8.70026 0.666504 7.87708 0.666504 7.00112C0.666504 6.12517 0.832726 5.30181 1.16517 4.53105C1.49762 3.76029 1.94878 3.08983 2.51867 2.51969C3.08857 1.94953 3.75873 1.49816 4.52915 1.16557C5.29957 0.832982 6.12275 0.666687 6.9987 0.666687C7.87466 0.666687 8.69802 0.83291 9.46877 1.16535C10.2395 1.4978 10.91 1.94897 11.4801 2.51885C12.0503 3.08875 12.5017 3.75892 12.8343 4.52934C13.1668 5.29975 13.3331 6.12293 13.3331 6.99889C13.3331 7.87484 13.1669 8.6982 12.8345 9.46895C12.502 10.2397 12.0509 10.9102 11.481 11.4803C10.9111 12.0505 10.2409 12.5019 9.47049 12.8344C8.70008 13.167 7.87689 13.3333 7.00094 13.3333ZM6.99982 12.3333C8.48871 12.3333 9.74982 11.8167 10.7832 10.7833C11.8165 9.75001 12.3332 8.48889 12.3332 7C12.3332 5.51112 11.8165 4.25 10.7832 3.21667C9.74982 2.18334 8.48871 1.66667 6.99982 1.66667C5.51093 1.66667 4.24982 2.18334 3.21649 3.21667C2.18315 4.25 1.66649 5.51112 1.66649 7C1.66649 8.48889 2.18315 9.75001 3.21649 10.7833C4.24982 11.8167 5.51093 12.3333 6.99982 12.3333Z" fill="#191919"/></svg>';
                    let readingRightsForOneSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="2 2 32 32" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M18.3725 13.5C20.0293 13.5 21.3725 12.1569 21.3725 10.5C21.3725 8.84315 20.0293 7.5 18.3725 7.5C16.7156 7.5 15.3725 8.84315 15.3725 10.5C15.3725 12.1569 16.7156 13.5 18.3725 13.5ZM18.3725 16.5C21.6862 16.5 24.3725 13.8137 24.3725 10.5C24.3725 7.18629 21.6862 4.5 18.3725 4.5C15.0588 4.5 12.3725 7.18629 12.3725 10.5C12.3725 13.8137 15.0588 16.5 18.3725 16.5ZM18.3725 18C23.8903 18 27.2436 20.6846 28.948 23.6222C28.9709 23.6617 28.9918 23.7017 29.0107 23.7423C29.3011 24.1997 29.3328 24.7992 29.0421 25.3002C27.3377 28.2379 23.8903 31.1253 18.3725 31.1253C12.8547 31.1253 9.40724 28.2379 7.70281 25.3002C7.41216 24.7992 7.44389 24.1999 7.73416 23.7425C7.7531 23.7019 7.77402 23.6617 7.79695 23.6222C9.50137 20.6846 12.8547 18 18.3725 18ZM10.7754 24.5282C12.1114 26.3666 14.5065 28.1253 18.3725 28.1253C22.2385 28.1253 24.6335 26.3666 25.9696 24.5282C24.6675 22.6761 22.3285 21 18.3725 21C14.4164 21 12.0774 22.6761 10.7754 24.5282Z"></path></svg>';
                    let readingRightsForFourSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="13" viewBox="0 0 14 13" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.5809 3.16667C7.5809 4.63943 6.387 5.83333 4.91424 5.83333C3.44148 5.83333 2.24757 4.63943 2.24757 3.16667C2.24757 1.69391 3.44148 0.5 4.91424 0.5C6.387 0.5 7.5809 1.69391 7.5809 3.16667ZM6.24757 3.16667C6.24757 3.90305 5.65062 4.5 4.91424 4.5C4.17786 4.5 3.5809 3.90305 3.5809 3.16667C3.5809 2.43029 4.17786 1.83333 4.91424 1.83333C5.65062 1.83333 6.24757 2.43029 6.24757 3.16667Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.61447 8.99877C8.85695 7.69314 7.3666 6.5 4.91424 6.5C2.46188 6.5 0.97153 7.69314 0.214008 8.99877C0.20382 9.01633 0.194523 9.03416 0.186103 9.05221C0.0570957 9.2555 0.0429897 9.52189 0.17217 9.74454C0.929692 11.0502 2.46188 12.3334 4.91425 12.3334C7.36661 12.3334 8.8988 11.0502 9.65632 9.74454C9.78552 9.52186 9.77139 9.25543 9.64234 9.05214C9.63393 9.03411 9.62464 9.0163 9.61447 8.99877ZM4.91425 11.0001C3.19602 11.0001 2.13155 10.2185 1.53775 9.40141C2.11643 8.57826 3.15599 7.83333 4.91424 7.83333C6.67249 7.83333 7.71205 8.57827 8.29073 9.40142C7.69693 10.2185 6.63246 11.0001 4.91425 11.0001Z"></path><path d="M8.58091 5.83333C8.1137 5.83333 7.67455 5.71318 7.29267 5.50209C7.60603 5.183 7.85567 4.80114 8.021 4.37709C8.19125 4.45598 8.38094 4.5 8.58091 4.5C9.31729 4.5 9.91424 3.90305 9.91424 3.16667C9.91424 2.43029 9.31729 1.83333 8.58091 1.83333C8.38094 1.83333 8.19125 1.87736 8.021 1.95624C7.85567 1.5322 7.60603 1.15033 7.29267 0.831247C7.67455 0.620154 8.1137 0.5 8.58091 0.5C10.0537 0.5 11.2476 1.69391 11.2476 3.16667C11.2476 4.63943 10.0537 5.83333 8.58091 5.83333Z"></path><path d="M9.66834 10.8844C9.21539 11.4261 8.63188 11.9239 7.91194 12.3003C8.12684 12.322 8.34979 12.3334 8.58092 12.3334C11.0333 12.3334 12.5655 11.0502 13.323 9.74454C13.4522 9.52186 13.4381 9.25543 13.309 9.05214C13.3006 9.03411 13.2913 9.0163 13.2811 8.99877C12.5236 7.69314 11.0333 6.5 8.58091 6.5C8.36457 6.5 8.15572 6.50929 7.95419 6.52711C8.67207 6.90013 9.24931 7.39617 9.6959 7.94617C10.7985 8.18463 11.5135 8.77001 11.9574 9.40142C11.5006 10.0299 10.7654 10.6374 9.66834 10.8844Z"></path></svg>';
                    let facsimileSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="15" viewBox="0 0 16 15" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M15.0282 0.519266C14.9956 0.319292 14.822 0.166664 14.6128 0.166664H3.13458L3.06631 0.172173C2.86634 0.20479 2.71371 0.378338 2.71371 0.587534L2.71295 3.94837L0.838847 3.94897L0.768529 3.95481C0.562854 3.98937 0.408842 4.1729 0.41839 4.38847L0.818935 13.4318L0.847872 13.5654C1.0317 14.3071 1.55045 14.7823 2.27412 14.7823H13.6125L13.7284 14.7778C14.455 14.7212 15.0337 14.1365 15.0337 13.4132V0.587534L15.0282 0.519266ZM3.55469 1.0084H14.1912L14.192 13.4132L14.1868 13.4837C14.1491 13.7378 13.9103 13.9406 13.6125 13.9406H2.27412L2.18767 13.9352C1.90852 13.8994 1.72045 13.6867 1.65272 13.3339L1.27816 4.79011H2.71295L2.71371 12.0658L2.71922 12.1341C2.75184 12.334 2.92539 12.4867 3.13458 12.4867L3.20285 12.4812C3.40282 12.4485 3.55545 12.275 3.55545 12.0658L3.55469 1.0084Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.25632 2.46232H12.3172C12.5496 2.46232 12.7381 2.65075 12.7381 2.88319V7.47449C12.7381 7.70693 12.5496 7.89536 12.3172 7.89536H9.25632C9.02388 7.89536 8.83545 7.70693 8.83545 7.47449V2.88319C8.83545 2.65075 9.02388 2.46232 9.25632 2.46232ZM11.8963 7.05362V3.30406H9.67719V7.05362H11.8963Z"></path><path d="M7.34328 4.75797V5.59971H5.04763V4.75797H7.34328Z"></path><path d="M7.34328 2.46232V3.30406H5.04763V2.46232H7.34328Z"></path><path d="M7.34328 7.05362V7.89536H5.04763V7.05362H7.34328Z"></path><path d="M12.6998 9.34927V10.191H5.04763V9.34927H12.6998Z"></path><path d="M12.6998 11.6449V12.4867H5.04763V11.6449H12.6998Z"></path></svg>';

                    let product1 = createProductElement('Digi+', 'HS Digi+ <span>2 kk 0 € <span>(norm. 20,90 €/kk)</span></span>', readingRightsForFourSvg + '<span>Lukuoikeus neljälle</span> ' + facsimileSvg + '<span>Näköislehti</span>', button);
                    let product2 = createProductElement('Digi', 'HS Digi <span>2 kk 0 € <span>(norm. 14,90 €/kk)<span></span>', readingRightsForOneSvg + '<span>Lukuoikeus yhdelle</span>', button);
                    
                    subtitle.innerText = 'Voit irtisanoa tilauksen koska tahansa.';
                    subtitle.classList.remove('paywall__ingress');

                    //append elements to container one by one
                    containerdiv.appendChild(title);
                    
                    //delimeter element with TAI and border
                    /*let delimeter = createElem('div', 'ab-test-paywall-delimeter', '<span>TAI</span>');
                    containerdiv.appendChild(delimeter);*/
                    
                    containerdiv.appendChild(product1);
                    containerdiv.appendChild(product2);

                    if(cycloneDateUntil) { //cyclone subtitle
                        let pvmSpan = calculateDays(cycloneDateUntil, 'asti');
                        let cycloneText = createElem('div', 'paywall__text-block ab-test-paywall-additional-info', 'Lisäksi voit maksuttoman jakson jälkeen jatkaa tilausta 40 % alennuksella ' + pvmSpan);
                        containerdiv.appendChild(cycloneText);
                    }

                    containerdiv.appendChild(button);
                    containerdiv.appendChild(subtitle);

                    insertStyle(containerdiv);
                    paywall.insertBefore(containerdiv, paywall.childNodes[1]); //insert as 2nd element on paywall after paywall indicator	
            
                    dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
                    dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': 'change offer to cyclone at timanttimuuri', 'eventLabel': experimentName + ' ' + variantName});

                    if(feedTitle) { //rss feed under paywall element and this is the title of that feed
                        let paywallOffering = document.querySelector('.ab-test-hard-paywall-offering');
                        if(paywallOffering) {
                            paywallOffering.innerText = feedTitle;
                        }
                    }
                    
                    if(requireCdx) {
                        cdx.confirm(true);
                    }
                    return true;
                }
                else {
                    sendGAEvent('script failed, primary button text unexpected');
                }
            } else {
                sendGAEvent('script failed, paywall html unexpected');
            }
        };

        doExperimentChanges();
    };
} catch(e) {
    console.log(e)

  let err = e
  let err_split = e.stack.split('\n')
  let err_line = false
  if (err_split[1]) {
    err_line = err_split[1].split('>:')
  }
  if (err_line[1]) {
    err = err_line[1]
  }
  sendGAEvent('script error: ' + err)
}
 },'js-RCdtyAbGhBrkO2mWeoQc-1741769134': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if (!requireCdx) { testing = true; }
const experimentId = 'HS25-40';
const variantId = 'D';
const experimentName = experimentId + ' Timanttimuuri ot';
const variantName = variantId + ' radio +kaikki w sykloni';
let currentDefaultButtonText = 'Tilaa HS Digi+ 1. kk 0 €'; //nykyisen napin teksti
//currentDefaultButtonText = 'Lue 2 viikkoa maksutta'; //nykyisen napin teksti
const paywallType = 'hard'; // hard or archived
const commonDateUntil = 30; //false or number of days
const miniDateUntil = 60;
const digiDateUntil = 60;
const cycloneDateUntil = 180;
const miniAID = 'G45VPHOK2M8DP'; //HS Digi
const digiAID = 'GTTLP98QFLWRO'; //HS Digi+
const miniPath = '/api/safe/v1/web/subscription-funnel/hs-mini-tutustu-v624';
const digiPath = '/api/safe/v1/web/subscription-funnel/hs-digi-tutustu-v624';
const kaikkiPath = '/shopping-ui/tutustu-plus-kaikki-bundle';
const kaikkiAID = 'GFYTLWU9LP5BP'; //https://www.hs.fi/tilaus/tutustu-plus-kaikki-bundle/?aid=GFYTLWU9LP5BP
const feedTitle = 'Hesarin digitilauksella pääset lukemaan rajoituksetta tämän ja yli 400 uutta timanttiartikkelia kuukaudessa';
const defaultProduct = 'Kaikki'; //which product is pre-selected
const paywallEvent = 'change offer to cyclone at timanttimuuri'; //if there is some event sent to paywall category, e.g. change of offer
let paywall = document.querySelector('[data-ab="' + paywallType + '-paywall"]'); //main element to use

const timeToWaitForConfirm = 500; //time to wait before confirming experiment

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    //if(true) { //use this if not HS
    if(requireCdx === false || window.conductrics_checkIfEligibileForP2p(cdx.trait('isLoggedIn'), cdx.trait('p2p_lightgbm'), cdx.trait('p2p'))) {
        //helper to confirm experiment - we wait a while to see if Braze has modified the paywall and removed Conductrics paywall
        const confirmExperiment = function() {
            setTimeout(function() {
                paywall = document.querySelector('[data-ab="' + paywallType + '-paywall"]');
                if(paywall) {
                    //sendGAEvent('paywall found even after delay');
                    dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
                    if(paywallEvent) {
                        dataLayer.push({'event': 'eventInfo', 'eventCategory': 'paywall', 'eventAction': paywallEvent, 'eventLabel': experimentName + ' ' + variantName});
                    }
                    if(requireCdx) {
                        sendGAEvent('experiment confirmed');
                        cdx.confirm(true);
                    }
                    return true;
                }
                else {
                    sendGAEvent('paywall not found after delay (braze modified it)');
                    return false;
                }
            }, timeToWaitForConfirm);
        }
        
        //helper function to create any html element
        const createElem = function(tag, classes, text) {
            let elem = document.createElement(tag);
            if(classes) {
                //split classes by space
                classes = classes.split(' ');
                for(let i = 0; i < classes.length; i++) {
                    elem.classList.add(classes[i]);
                }
            }
            if(text) {
                elem.innerHTML = text;
            }
            return elem;
        }

        //helper function to create product element 
        const createProductElement = function(productname, title, features, button) {
            let product = createElem('label', 'ab-test-paywall-product', false);
            product.setAttribute('product', productname);
            if(productname === defaultProduct) { //this is the default option
                product.classList.add('selected'); //mark it selected
                let ribbon = createElem('div', 'ab-product-ribbon', 'Uutuus!');
                product.appendChild(ribbon);
            }
            let container = createElem('div', 'ab-product-container', false);

            let check = createElem('input', 'ab-radio', false);
            check.type = 'radio';
            check.name = 'product';
            //check.id = 'radio_'+productname;  
            if(productname === defaultProduct) {
                check.checked = 'checked';
            }
            let productcontent = createElem('div', 'ab-product-content', false);
            let producttitle = createElem('p', 'ab-product-title', title);

            container.appendChild(check);
            productcontent.appendChild(producttitle);

            if(features) {
                let producttext = createElem('p', 'ab-product-text', features);
                productcontent.appendChild(producttext);
            }
            
            container.appendChild(productcontent);
            product.appendChild(container);
            check.onchange = function(e) {
                sendGAEvent('click product ' + productname);
                changeButtonUrlAndText(button, productname);
            }
            return product;
        }

        //helper function to change button url and text
        const changeButtonUrlAndText = function (button, pos) {          
            let urlParams = false;
            let pagePath = false;
            //ab-test-hard-paywall-subtitle
            let cancelAnytime = 'Voit irtisanoa tilauksen koska tahansa.';
            let allProductElements = document.querySelectorAll('.ab-test-paywall-product');
            allProductElements.forEach(function (element) {
                element.classList.remove('selected');
                if(element.getAttribute('product') === pos) {
                    element.classList.add('selected');
                }
            });

            if(pos === 'Kaikki') {
                pagePath = kaikkiPath;
                urlParams = {
                  embedded: null,
                  aid: kaikkiAID,
                  ref: 'maksumuuri_kova_eiot',
                  showPaymentPeriodList: null,
                  offer: null,
                  variant: null
                }
  
                button.innerHTML = 'Tilaa HS +Kaikki &nbsp; 1 kk 0 €';
                let pvmSpan = calculateDays(30, ' asti');
                document.querySelector('.ab-test-hard-paywall-title').innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
                let cycloneText = document.querySelector('.ab-test-paywall-additional-info');
                if(cycloneText) {
                    cycloneText.classList.remove('emphasized');
                }
                //document.querySelector('.ab-test-hard-paywall-subtitle').innerText = cancelAnytime;
            }
            else if(pos === 'Digi') {
              pagePath = miniPath;
              urlParams = {
                embedded: null,
                aid: miniAID,
                ref: 'maksumuuri_kova_eiot',
                showPaymentPeriodList: null,
                offer: 3,
                variant: null
              }

              button.innerHTML = 'Tilaa HS ' + pos + ' &nbsp; 2 kk 0 €';
              let pvmSpan = calculateDays(60, ' asti');
              document.querySelector('.ab-test-hard-paywall-title').innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
              let cycloneText = document.querySelector('.ab-test-paywall-additional-info');
              if(cycloneText) {
                  cycloneText.classList.add('emphasized');
              }
              //document.querySelector('.ab-test-hard-paywall-subtitle').innerText = cancelAnytime;
            }
            else if(pos === 'Digi+') {
                pagePath = digiPath;
                urlParams = {
                  embedded: null,
                  aid: digiAID,
                  ref: 'maksumuuri_kova_eiot',
                  showPaymentPeriodList: null,
                  offer: null,
                  variant: null
                }
  
                button.innerHTML = 'Tilaa HS ' + pos + ' &nbsp; 2 kk 0 €';
                let pvmSpan = calculateDays(60, ' asti');
                document.querySelector('.ab-test-hard-paywall-title').innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
                let cycloneText = document.querySelector('.ab-test-paywall-additional-info');
                if(cycloneText) {
                    cycloneText.classList.add('emphasized');
                }
                //document.querySelector('.ab-test-hard-paywall-subtitle').innerText = cancelAnytime;
            }
            else {  //sample?
                //shouldnt happen
            }
          
            let url = new URL(button.href);
            // Update search params
            if (urlParams) {
              Object.keys(urlParams).forEach(function (key) {
                if (urlParams[key] === null) {
                  url.searchParams.delete(key)
                } else if (urlParams[key] !== undefined) {
                  url.searchParams.set(key, urlParams[key])
                }
              })
            }
            // Update path
            if (pagePath) {
                url.pathname = pagePath;
            }
            button.href = url.toString();
            button.setAttribute('data-product-name', pos);
            button.onclick = function (e) {
                sendGAEvent('click subscribe ' + pos + ' at ' + variantId)
            }
            return button;
        }

        //helper function to calculate days d.m. 
        const calculateDays = function(d, suffix) {
            let date = new Date();
            date.setDate(date.getDate() + d);
            let dd = date.getDate();
            let mm = date.getMonth()+1;
            let pvmSpan = false;
            if(suffix) {
                pvmSpan = dd.toString() + '.' + mm.toString() + '. ' + suffix;
            }
            else {
                pvmSpan = dd.toString() + '.' + mm.toString() + '.'
            }
            return pvmSpan;
        }

        //helper function to insert style
        const insertStyle = function(containerdiv) {
            let style = `
                    :root {
                        --main-color: #191919;
                        --underline-color: #787878;
                        --line-color: #E9EAED;
                        --main-font: 'Helsingin', Arial, sans-serif;
                    }
                        
                    .ab-test-paywall-container {
                        display: flex;
                        flex-direction: column;
                        width: 100%;
                        max-width: calc(100% - 16px);
                    }

                    .ab-test-paywall-container [data-ab="hard-paywall-title"] {
                        font-size: 26px;
                        margin-bottom: 16px;
                        text-align: center;
                    }

                    .ab-test-paywall-product {
                        display: flex;
                        flex-direction: column;
                        align-items: baseline;
                        font-size: 16px;
                        font-family: var(--main-font);
                        margin: 0 auto;
                        border-top: 1px solid var(--line-color);
                        padding: 12px 0px;
                        cursor: pointer;
                        width: 100%;
                        border: 1px solid #000;
                        border-radius: 4px;
                        padding:0;
                        margin-bottom: 8px;
                        background: #F8F8F8;
                    }

                    .ab-test-paywall-product[product="Kaikki"] {
                        background: #FFF6E5;
                    }

                    .ab-product-container {
                        display: flex;
                        flex-direction: row;
                        align-items: baseline;
                        padding: 12px 12px 8px;
                        width: 100%;
                    }

                    .ab-product-ribbon {
                        background: rgb(203,158,51);
                        background: linear-gradient(90deg, rgba(203,158,51,1) 0%, rgba(252,234,148,1) 25%, rgba(237,208,106,1) 50%, rgba(252,234,148,1) 75%, rgba(203,158,51,1) 100%);
                        height: 26px;
                        text-align: center;
                        margin: 0 auto;
                        width: 100%;
                        font-size: 14px;
                        font-weight: 600;
                        padding-top: 2px;
                    }

                    .ab-test-paywall-delimeter {
                        overflow: hidden;
                        margin-top: 0;
                        margin-bottom: 8px;

                        text-align: center;
                        font-family: var(--main-font);
                        font-size: 14px;
                        font-style: normal;
                        font-weight: 500;
                        line-height: normal;
                        letter-spacing: 0.36px;
                    }
                    
                    .ab-test-paywall-delimeter:before, .ab-test-paywall-delimeter:after {
                        background-color: #ccc;
                        content: "";
                        display: inline-block;
                        height: 0.5px;
                        position: relative;
                        vertical-align: middle;
                        width: 50%;
                    }

                    .ab-test-paywall-delimeter:before {
                        right: 8px;
                        margin-left: -50%;
                    }
    
                    .ab-test-paywall-delimeter:after {
                        left: 8px;
                        margin-right: -50%;
                    }

                    .ab-test-paywall-product .ab-product-content {
                        display: flex;
                        flex-direction: column;
                        margin-left: 12px;
                        width: 100%;
                    }

                    .ab-test-paywall-product .ab-radio {
                        transform: scale(1.6);
                        accent-color: var(--main-color);
                        cursor: pointer;
                    }

                    @supports (-moz-appearance:none) {
                        .ab-test-paywall-product .ab-radio {
                            transform: scale(1.5);
                        }
                    }

                    .ab-test-paywall-product .ab-product-title {
                        font-weight: 600;
                        padding-bottom: 4px;
                        font-size: 14px;
                    }

                    .ab-test-paywall-product .ab-product-title > span {
                        font-size: 14px;
                        font-weight: 600;
                        float: right;
                        letter-spacing: -0.5px;
                    }

                    .ab-test-paywall-product .ab-product-title > span > span {
                        font-size: 12px;
                        font-weight: 300;
                        color: #666;
                        text-decoration: line-through;
                        padding-left: 4px;
                        letter-spacing: 0;
                    }

                    .ab-test-paywall-product .ab-product-text {
                        font-size: 12px;
                        margin-top: 2px;
                        color: #555;
                        text-align: left;
                    }

                    .ab-test-paywall-product .ab-product-text > span {
                        margin-right: 8px;
                    }

                    .ab-test-paywall-product .ab-product-text svg {
                        fill: #191919;
                        display: inline;
                        margin-right: 2px;
                        vertical-align: baseline;
                        height: 10px;
                    }

                    .ab-test-paywall-additional-info {
                        font-family: var(--main-font);
                        font-size: 15px;
                        font-weight: 600;
                        line-height: 1.2;
                        text-align: center;
                        margin-bottom: 16px;
                        color: #777;
                        text-decoration: line-through;
                    }

                    .ab-test-paywall-additional-info.emphasized {
                        color: #191919;
                        text-decoration: none;
                    }

                    [data-ab="hard-paywall-subtitle"] {
                        font-size: 15px;
                        font-family: var(--main-font);
                        margin-top: 12px;
                        margin-bottom: 32px;
                        text-align: center;
                    }

                    [data-ab="hard-paywall-subscribe-button"] {
                        margin: 12px auto 4px;
                        width: 260px;
                        font-family: var(--main-font);
                        font-size: 16px;
                        font-weight: 600;
                    }

                    [data-ab="hard-paywall-subscribe-button"]:active {
                        margin: 12px auto 5px;
                        width: 258px;
                    }

                    [data-ab="hard-paywall-login-link"] {
                        text-decoration: underline;
                        font-size: 14px;   
                        margin-bottom: 24px;
                        margin-top: 16px;
                    }

                    [data-ab="hard-paywall-offering"] {
                        max-width: 480px;
                    }

                    /* dark mode support */
                    .sndp-dark .ab-test-paywall-product {
                        border: 1px solid #ccc;
                        background: #262626;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-text svg {
                        fill: #AFAFAF;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-title > span, .sndp-dark .ab-test-paywall-product .ab-product-text {
                        color: #fff;
                    }

                    .sndp-dark .ab-test-paywall-product .ab-product-title > span > span {
                        color: #AFAFAF;
                    }

                    .sndp-dark .ab-product-ribbon {
                        color: #000;
                    }

                    .sndp-dark .ab-test-paywall-additional-info {
                        color: #aaa;
                    }

                    .sndp-dark .ab-test-paywall-additional-info.emphasized {
                        color: #fff;
                    }
                    
                    @media (min-width: 380px) {
                        .ab-test-paywall-container {
                            max-width: 350px;
                        }

                        .ab-test-paywall-product .ab-product-text {
                            font-size: 14px;
                            margin-top: 4px;
                        }

                        .ab-test-paywall-product .ab-product-title, .ab-test-paywall-product .ab-product-title > span {
                            font-size: 16px;
                            letter-spacing: 0;
                        }

                        .ab-test-paywall-product .ab-product-title > span > span {
                            font-size: 14px;
                            padding-left: 8px;
                        }

                        .ab-test-paywall-product .ab-product-content {
                            margin-left: 16px;
                        }

                        .ab-test-paywall-product .ab-product-text svg {
                            margin-right: 4px;
                            height: 12px;
                        }

                        .ab-test-paywall-product .ab-product-text > span {
                            margin-right: 12px;
                        }
                    }
            `;
            
            if(document.location.pathname.indexOf('/visio/') > -1 ||
            document.location.pathname.indexOf('/teknologia/') > -1 ||
            document.location.pathname.indexOf('/talous/') > -1 ||
            document.location.pathname.indexOf('/autot/') > -1) {
            style += `	
                    .ab-test-paywall-product {
                        background: #F5E6DC;
                    }
            
                    .ab-test-paywall-grid .ab-grid-choose-button {
                        background: #b7384b;
                    }

                    .ab-test-paywall-product .ab-radio {
                        accent-color: #b7384b;
                    }

                    .ab-test-paywall-grid .ab-grid-choose-button:hover, .ab-test-paywall-grid .ab-grid-choose-button:active, .ab-test-paywall-grid .ab-grid-choose-button:focus {
                        background: #752f35;
                    }
                `;
            }
                        
            let styleSheet = document.createElement("style");
            styleSheet.type = "text/css";
            containerdiv.appendChild(styleSheet);
            styleSheet.innerText = style;
        };

        const doExperimentChanges = function () {
            let experimentExists = document.querySelector('.ab-test-paywall-modified');
            let title = document.querySelector('[data-ab="' + paywallType + '-paywall-title"]');
            let subtitle = document.querySelector('[data-ab="' + paywallType + '-paywall-subtitle"]');
            let button = document.querySelector('[data-ab="' + paywallType + '-paywall-subscribe-button"]');
            let secondaryButton = document.querySelector('[data-ab="' + paywallType + '-paywall-secondary-subscribe-button"]');
            paywall = document.querySelector('[data-ab="' + paywallType + '-paywall"]');
            if(experimentExists) {
                sendGAEvent('script failed, paywall already modified');
            } else if(paywall && title && button) { //paywall exists (if braze was used, paywall is null)
                if(button.innerText.trim() === currentDefaultButtonText) { //actual changes here
                    let namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;
                    title.classList.add('ab-test-paywall-modified', namelower);

                    if(secondaryButton) { //katso muut tarjoukset button on HS
                        secondaryButton.style.display = 'none';
                    }

                    let loginLink = paywall.querySelector('[data-ab="' + paywallType + '-paywall-login-link"]');
                    if(loginLink) {
                        let paywallIndicator = paywall.querySelector('[data-ab="' + paywallType + '-paywall-logo"]').parentNode;
                        paywallIndicator.insertBefore(loginLink, paywallIndicator.childNodes[2]); //insert in between paywall indicators
                    }

                    //create container div - which contains all the elements
                    let containerdiv = createElem('div', 'ab-test-paywall-container', false);

                    //change subscribe button url and text
                    button = changeButtonUrlAndText(button, 'Kaikki');

                    //main date until in title
                    if(commonDateUntil) {
                        let pvmSpan = calculateDays(commonDateUntil, 'asti');
                        title.innerHTML = 'Lue maksutta <nobr>' + pvmSpan + '</nobr>';
                    }

                    let checkIconSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14" fill="none"><path d="M6.05367 8.43079L4.50494 6.88207C4.41264 6.78976 4.29662 6.74254 4.15687 6.74041C4.01713 6.73826 3.89897 6.78548 3.80239 6.88207C3.70581 6.97865 3.65752 7.09574 3.65752 7.23334C3.65752 7.37094 3.70581 7.48803 3.80239 7.5846L5.63187 9.41409C5.75238 9.5346 5.89298 9.59486 6.05367 9.59486C6.21435 9.59486 6.35494 9.5346 6.47545 9.41409L10.1844 5.70512C10.2767 5.61282 10.324 5.4968 10.3261 5.35705C10.3282 5.21731 10.281 5.09915 10.1844 5.00257C10.0878 4.90599 9.97076 4.8577 9.83316 4.8577C9.69556 4.8577 9.57847 4.90599 9.48189 5.00257L6.05367 8.43079ZM7.00094 13.3333C6.12498 13.3333 5.30163 13.1671 4.53087 12.8347C3.7601 12.5022 3.08965 12.051 2.5195 11.4812C1.94935 10.9113 1.49798 10.2411 1.16539 9.47067C0.832798 8.70026 0.666504 7.87708 0.666504 7.00112C0.666504 6.12517 0.832726 5.30181 1.16517 4.53105C1.49762 3.76029 1.94878 3.08983 2.51867 2.51969C3.08857 1.94953 3.75873 1.49816 4.52915 1.16557C5.29957 0.832982 6.12275 0.666687 6.9987 0.666687C7.87466 0.666687 8.69802 0.83291 9.46877 1.16535C10.2395 1.4978 10.91 1.94897 11.4801 2.51885C12.0503 3.08875 12.5017 3.75892 12.8343 4.52934C13.1668 5.29975 13.3331 6.12293 13.3331 6.99889C13.3331 7.87484 13.1669 8.6982 12.8345 9.46895C12.502 10.2397 12.0509 10.9102 11.481 11.4803C10.9111 12.0505 10.2409 12.5019 9.47049 12.8344C8.70008 13.167 7.87689 13.3333 7.00094 13.3333ZM6.99982 12.3333C8.48871 12.3333 9.74982 11.8167 10.7832 10.7833C11.8165 9.75001 12.3332 8.48889 12.3332 7C12.3332 5.51112 11.8165 4.25 10.7832 3.21667C9.74982 2.18334 8.48871 1.66667 6.99982 1.66667C5.51093 1.66667 4.24982 2.18334 3.21649 3.21667C2.18315 4.25 1.66649 5.51112 1.66649 7C1.66649 8.48889 2.18315 9.75001 3.21649 10.7833C4.24982 11.8167 5.51093 12.3333 6.99982 12.3333Z"/></svg>';
                    let readingRightsForOneSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="2 2 32 32" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M18.3725 13.5C20.0293 13.5 21.3725 12.1569 21.3725 10.5C21.3725 8.84315 20.0293 7.5 18.3725 7.5C16.7156 7.5 15.3725 8.84315 15.3725 10.5C15.3725 12.1569 16.7156 13.5 18.3725 13.5ZM18.3725 16.5C21.6862 16.5 24.3725 13.8137 24.3725 10.5C24.3725 7.18629 21.6862 4.5 18.3725 4.5C15.0588 4.5 12.3725 7.18629 12.3725 10.5C12.3725 13.8137 15.0588 16.5 18.3725 16.5ZM18.3725 18C23.8903 18 27.2436 20.6846 28.948 23.6222C28.9709 23.6617 28.9918 23.7017 29.0107 23.7423C29.3011 24.1997 29.3328 24.7992 29.0421 25.3002C27.3377 28.2379 23.8903 31.1253 18.3725 31.1253C12.8547 31.1253 9.40724 28.2379 7.70281 25.3002C7.41216 24.7992 7.44389 24.1999 7.73416 23.7425C7.7531 23.7019 7.77402 23.6617 7.79695 23.6222C9.50137 20.6846 12.8547 18 18.3725 18ZM10.7754 24.5282C12.1114 26.3666 14.5065 28.1253 18.3725 28.1253C22.2385 28.1253 24.6335 26.3666 25.9696 24.5282C24.6675 22.6761 22.3285 21 18.3725 21C14.4164 21 12.0774 22.6761 10.7754 24.5282Z"></path></svg>';
                    let readingRightsForFourSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="14" height="13" viewBox="0 0 14 13" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.5809 3.16667C7.5809 4.63943 6.387 5.83333 4.91424 5.83333C3.44148 5.83333 2.24757 4.63943 2.24757 3.16667C2.24757 1.69391 3.44148 0.5 4.91424 0.5C6.387 0.5 7.5809 1.69391 7.5809 3.16667ZM6.24757 3.16667C6.24757 3.90305 5.65062 4.5 4.91424 4.5C4.17786 4.5 3.5809 3.90305 3.5809 3.16667C3.5809 2.43029 4.17786 1.83333 4.91424 1.83333C5.65062 1.83333 6.24757 2.43029 6.24757 3.16667Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.61447 8.99877C8.85695 7.69314 7.3666 6.5 4.91424 6.5C2.46188 6.5 0.97153 7.69314 0.214008 8.99877C0.20382 9.01633 0.194523 9.03416 0.186103 9.05221C0.0570957 9.2555 0.0429897 9.52189 0.17217 9.74454C0.929692 11.0502 2.46188 12.3334 4.91425 12.3334C7.36661 12.3334 8.8988 11.0502 9.65632 9.74454C9.78552 9.52186 9.77139 9.25543 9.64234 9.05214C9.63393 9.03411 9.62464 9.0163 9.61447 8.99877ZM4.91425 11.0001C3.19602 11.0001 2.13155 10.2185 1.53775 9.40141C2.11643 8.57826 3.15599 7.83333 4.91424 7.83333C6.67249 7.83333 7.71205 8.57827 8.29073 9.40142C7.69693 10.2185 6.63246 11.0001 4.91425 11.0001Z"></path><path d="M8.58091 5.83333C8.1137 5.83333 7.67455 5.71318 7.29267 5.50209C7.60603 5.183 7.85567 4.80114 8.021 4.37709C8.19125 4.45598 8.38094 4.5 8.58091 4.5C9.31729 4.5 9.91424 3.90305 9.91424 3.16667C9.91424 2.43029 9.31729 1.83333 8.58091 1.83333C8.38094 1.83333 8.19125 1.87736 8.021 1.95624C7.85567 1.5322 7.60603 1.15033 7.29267 0.831247C7.67455 0.620154 8.1137 0.5 8.58091 0.5C10.0537 0.5 11.2476 1.69391 11.2476 3.16667C11.2476 4.63943 10.0537 5.83333 8.58091 5.83333Z"></path><path d="M9.66834 10.8844C9.21539 11.4261 8.63188 11.9239 7.91194 12.3003C8.12684 12.322 8.34979 12.3334 8.58092 12.3334C11.0333 12.3334 12.5655 11.0502 13.323 9.74454C13.4522 9.52186 13.4381 9.25543 13.309 9.05214C13.3006 9.03411 13.2913 9.0163 13.2811 8.99877C12.5236 7.69314 11.0333 6.5 8.58091 6.5C8.36457 6.5 8.15572 6.50929 7.95419 6.52711C8.67207 6.90013 9.24931 7.39617 9.6959 7.94617C10.7985 8.18463 11.5135 8.77001 11.9574 9.40142C11.5006 10.0299 10.7654 10.6374 9.66834 10.8844Z"></path></svg>';
                    let facsimileSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="15" viewBox="0 0 16 15" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M15.0282 0.519266C14.9956 0.319292 14.822 0.166664 14.6128 0.166664H3.13458L3.06631 0.172173C2.86634 0.20479 2.71371 0.378338 2.71371 0.587534L2.71295 3.94837L0.838847 3.94897L0.768529 3.95481C0.562854 3.98937 0.408842 4.1729 0.41839 4.38847L0.818935 13.4318L0.847872 13.5654C1.0317 14.3071 1.55045 14.7823 2.27412 14.7823H13.6125L13.7284 14.7778C14.455 14.7212 15.0337 14.1365 15.0337 13.4132V0.587534L15.0282 0.519266ZM3.55469 1.0084H14.1912L14.192 13.4132L14.1868 13.4837C14.1491 13.7378 13.9103 13.9406 13.6125 13.9406H2.27412L2.18767 13.9352C1.90852 13.8994 1.72045 13.6867 1.65272 13.3339L1.27816 4.79011H2.71295L2.71371 12.0658L2.71922 12.1341C2.75184 12.334 2.92539 12.4867 3.13458 12.4867L3.20285 12.4812C3.40282 12.4485 3.55545 12.275 3.55545 12.0658L3.55469 1.0084Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M9.25632 2.46232H12.3172C12.5496 2.46232 12.7381 2.65075 12.7381 2.88319V7.47449C12.7381 7.70693 12.5496 7.89536 12.3172 7.89536H9.25632C9.02388 7.89536 8.83545 7.70693 8.83545 7.47449V2.88319C8.83545 2.65075 9.02388 2.46232 9.25632 2.46232ZM11.8963 7.05362V3.30406H9.67719V7.05362H11.8963Z"></path><path d="M7.34328 4.75797V5.59971H5.04763V4.75797H7.34328Z"></path><path d="M7.34328 2.46232V3.30406H5.04763V2.46232H7.34328Z"></path><path d="M7.34328 7.05362V7.89536H5.04763V7.05362H7.34328Z"></path><path d="M12.6998 9.34927V10.191H5.04763V9.34927H12.6998Z"></path><path d="M12.6998 11.6449V12.4867H5.04763V11.6449H12.6998Z"></path></svg>';

                    let product1 = createProductElement('Kaikki', 'HS +Kaikki <span>1 kk 0 € <span>(norm. 24,99 €/kk)</span></span>', checkIconSvg + 'HS Digi+<br/>' + checkIconSvg + 'IS Extra+, Ruutu+ ja Supla+<br/>' + checkIconSvg + '13 muuta uutismediaa ja 15 aikakauslehteä', button);
                    let product2 = createProductElement('Digi+', 'HS Digi+ <span>2 kk 0 € <span>(norm. 20,90 €/kk)</span></span>', readingRightsForFourSvg + '<span>Lukuoikeus neljälle</span> ' + facsimileSvg + '<span>Näköislehti</span>', button);
                    let product3 = createProductElement('Digi', 'HS Digi <span>2 kk 0 € <span>(norm. 14,90 €/kk)<span></span>', readingRightsForOneSvg + '<span>Lukuoikeus yhdelle</span>', button);
                    
                    subtitle.innerText = 'Voit irtisanoa tilauksen koska tahansa.';
                    subtitle.classList.remove('paywall__ingress');

                    //append elements to container one by one
                    containerdiv.appendChild(title);
                    containerdiv.appendChild(product1);

                    //delimeter element with TAI and border
                    let delimeter = createElem('div', 'ab-test-paywall-delimeter', '<span>TAI</span>');
                    containerdiv.appendChild(delimeter);
                    
                    containerdiv.appendChild(product2);                   
                    containerdiv.appendChild(product3);

                    if(cycloneDateUntil) { //cyclone subtitle
                        let pvmSpan = calculateDays(cycloneDateUntil, 'asti');
                        let cycloneText = createElem('div', 'paywall__text-block ab-test-paywall-additional-info', 'Lisäksi voit maksuttoman jakson jälkeen jatkaa tilausta 40 % alennuksella ' + pvmSpan);
                        containerdiv.appendChild(cycloneText);
                    }

                    containerdiv.appendChild(button);
                    containerdiv.appendChild(subtitle);

                    insertStyle(containerdiv);
                    paywall.insertBefore(containerdiv, paywall.childNodes[1]); //insert as 2nd element on paywall after paywall indicator	

                    if(feedTitle) { //rss feed under paywall element and this is the title of that feed
                        let paywallOffering = document.querySelector('.ab-test-hard-paywall-offering');
                        if(paywallOffering) {
                            paywallOffering.innerText = feedTitle;
                        }
                    }

                    if(confirmExperiment()) {
                        return true;
                    }
                }
                else {
                    sendGAEvent('script failed, primary button text unexpected');
                }
            } else {
                sendGAEvent('script failed, paywall not found (or braze modified it)');
            }
        };

        doExperimentChanges();
    };
} catch(e) {
    console.log(e)

  let err = e
  let err_split = e.stack.split('\n')
  let err_line = false
  if (err_split[1]) {
    err_line = err_split[1].split('>:')
  }
  if (err_line[1]) {
    err = err_line[1]
  }
  sendGAEvent('script error: ' + err)
}
 },'js-N92HpHWB1sQvjVxmIvLs-1741860363': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if(!requireCdx) { testing = true; } //set this to true if not in conductrics for easier testing
const experimentId = 'HS25-41';
const variantId = 'A';
const experimentName = experimentId + ' sovelluslatausbanneri';
const variantName = variantId + ': control smaller';
const namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;

const currentTitle = 'Lataa HS-sovellus';

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    const insertStyle = function (element) {
		let style = `		
			:root {
				--dark-color: #191919;
				--dark-blue-color: #1a326a;
				--dark-black: #191919;
			}

			.ab-test-app-download-banner {
				background: #fff;
				border-top: 1px solid #bbb;
			}

			.ab-test-app-download-banner-title {
				font-size: 20px;
				line-height: 0.9;
				margin-top: 4px;
				font-family: 'Helsingin', sans-serif;
			}
			
			.ab-test-app-download-banner-title, .ab-test-app-download-banner-text, .ab-test-app-download-banner ul {
				color: var(--dark-color) !important;
			}
			
			.ab-test-app-download-banner-accept-button {
				background: var(--dark-black);
				color: #fff;
				min-width: 106px;
				padding-left: 8px;
				padding-right: 8px;
				font-size: 14px;
			}

			.ab-test-app-download-banner-close-button {
			    margin-left: 0;
			}
		
            .ab-test-app-download-banner-close-button svg {
                color: var(--dark-color);
            }

			.ab-test-app-marketing-row {
				margin-bottom: 0;
			}

			.ab-test-app-marketing-row span {
				vertical-align: middle;	
				vertical-align: -webkit-baseline-middle;    
			}	

			.sndp-dark {
				.ab-test-app-download-banner {
					background: #333;
					border-top: 1px solid #555;
				}
				
				.ab-test-app-download-banner-title, .ab-test-app-download-banner-text, .ab-test-app-download-banner ul {
					color: #fff !important;
				}
				
				.ab-test-app-download-banner-accept-button {
					background: var(--dark-color);
					color: #fff;
					border: 1px solid #555;
				}

				.ab-test-app-download-banner-close-button svg {
					color: #fff;
				}
			}

			@media (max-width: 330px) {
				.ab-test-app-download-banner-title {
    				font-size: 19px;
				}
				.ab-test-app-download-banner-accept-button {
					font-size: 13px;
				}
			}
						
			@media (min-width: 376px) {
				.ab-test-app-download-banner-accept-button {
					padding-left: 16px;
					padding-right: 16px;
					font-size: 16px;
				}
			}

            .ab-test-app-download-banner-text.hidden {
                display: none !important;
            }
		`;
			
		var styleSheet = document.createElement("style");
		styleSheet.type = "text/css";
		element.appendChild(styleSheet);
		styleSheet.innerText = style;
	}
    
    const doExperimentChanges = function () {
        let experimentExists = document.querySelector('.app-download-banner-modified-by-conductrics');
        let banner = document.querySelector('.ab-test-app-download-banner');
		let title = document.querySelector('.ab-test-app-download-banner-title');
        let description = document.querySelector('.ab-test-app-download-banner-text');
		let rejectbutton = document.querySelector('.ab-test-app-download-banner-close-button');
		let acceptbutton = document.querySelector('.ab-test-app-download-banner-accept-button');
        if(experimentExists) {
            //sendGAEvent('script failed, exp already exists');
        } else if(banner && title && acceptbutton && rejectbutton) {
            title.classList.add('app-download-banner-modified-by-conductrics', namelower);
			if(title.innerText == currentTitle && acceptbutton.innerText == 'Lataa sovellus') {
				title.innerHTML = '<span>Lataa HS-sovellus</span>';
			
				if(!banner.querySelector('style')) {
					insertStyle(banner);
				}
	
				description.classList.add('hidden');
				
				/*if (/iPad|iPhone|iPod/.test(navigator.userAgent)) { //iOS
					acceptbutton.innerHTML = '<label class="cursor-pointer">App Storeen</label>';
				} else if (/android|Android/.test(navigator.userAgent)) { //Android
					acceptbutton.innerHTML = '<label class="cursor-pointer">Play-kauppaan</label>';
				} else { //something else
					acceptbutton.innerHTML = '<label class="cursor-pointer">Lataa</label>';
				}*/
				acceptbutton.innerHTML = '<label class="cursor-pointer">Avaa sovellus</label>';
				acceptbutton.onclick = function (e) {
					sendGAEvent('click application download');
				}
	
				let btn = acceptbutton.parentElement;
				let row = banner.querySelector('.app-marketing__row');
				if(row) {
					row.classList.add('ab-test-app-marketing-row');
					//row.innerHTML = '';
					row.appendChild(title);
					row.appendChild(btn);
					row.appendChild(rejectbutton);
				}		
	
				if(requireCdx) {
					cdx.confirm(true);
				}
	
				dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
				return true;
			}
			else {
				//sendGAEvent('script failed: app download banner text unexpected');	
			}
		}		
        else {
            sendGAEvent('script error: app download banner html unexpected');
        }
    };

    doExperimentChanges();
} catch(e) {
    //this is needed in ticker-agents. If e does not contain text "confirm" or "cdx", then call the sendGAEvent function
    if(e.toString().indexOf('confirm') < 0 && e.toString().indexOf('cdx') < 0) {
        console.log(e);
    
		let err = e;
		let err_split = e.stack.split("\n");
		let err_line = false;
		if(err_split[1]) {
			err_line = err_split[1].split('>:');
		}
		if(err_line[1]) {
			err = err_line[1];
		}
		sendGAEvent('script error: ' + err);
    }
}
 },'js-IPRyDeaZcQDJPWbgJ0tM-1741860730': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if(!requireCdx) { testing = true; } //set this to true if not in conductrics for easier testing
const experimentId = 'HS24-41';
const variantId = 'B';
const experimentName = experimentId + ' sovelluslatausbanneri';
const variantName = variantId + ': yleinen';
const namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;

const currentTitle = 'Lataa HS-sovellus';
const currentButtonText = 'Lataa sovellus';

let newTitleText = 'Lataa HS-sovellus';
let newButtonText = 'Lataa sovellus';
let newDescriptionText = 'Lataa Helsingin Sanomien sovellus, saat tärkeimmät ja kiinnostavimmat uutiset suoraan puhelimeesi.';
let newImageUrl = 'https://kampanjat.hs.fi/sovelluskuvat/hs-sovellus-yleinen.png';
let newImageAlt = 'Kuva Helsingin Sanomien sovelluksesta'; //seo and accessibility purposes, not visible

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    const insertStyle = function (element) {
		let style = `		
			:root {
                --light-border-color: #bbb;
                --light-bg-color: #fff;
                --light-button-bg-color: #191919;
                --light-button-text-color: #fff;

				--dark-border-color: #666;
                --dark-bg-color: #232323;
                --dark-button-bg-color: #fff;
                --dark-button-text-color: #191919;
			}

			[data-ab="app-download-banner"] {
				background: var(--light-bg-color);
				border-top: 1px solid var(--light-border-color);
                display: flex;
                flex-direction: row;
			}

            [data-ab="app-download-banner"] .ab-test-app-download-banner-left {
                display: flex;
                flex-direction: column;
            }

            [data-ab="app-download-banner"] .ab-test-app-download-banner-right {
                display: flex;
                flex-direction: column;
                align-items: flex-end;
                justify-content: space-between;
            }

            .ab-test-app-download-banner-image {
                position: relative;
                right: -16px;
                bottom: -16px;
                max-height: 300px;
            }

			.ab-test-app-download-banner-title {
                font-size: 22px;
			}
			
			.ab-test-app-download-banner-title, .ab-test-app-download-banner-text, .ab-test-app-download-banner ul {
				color: var(--dark-color) !important;
                margin-bottom: 8px;
			}

			[data-ab="app-download-banner"] ul {
				display: none;
			}

            [data-ab="app-download-banner-text"] span {
                font-size: 16px;
                margin-bottom: 8px;
            }
			
			[data-ab="app-download-banner-accept-button"] {
				background: var(--light-button-bg-color);
				color: var(--light-button-text-color);
				margin-bottom: 0;
                padding-top: 2px;
			}

            [data-ab="app-download-banner-accept-button"] svg {
                display: inline-block;
                vertical-align: middle;
                margin-right: 8px;
            }

            [data-ab="app-download-banner-accept-button"] svg path {
                fill: var(--light-button-text-color);
            }
            
            .ab-test-app-download-banner-close-button svg {
                color: var(--light-button-bg-color);
            }

			.sndp-dark {
				[data-ab="app-download-banner"] {
					background: var(--dark-bg-color);
					border-top: 1px solid var(--dark-border-color);
				}
				
				.ab-test-app-download-banner-title, .ab-test-app-download-banner-text, .ab-test-app-download-banner ul {
					color: #fff !important;
				}
				
				[data-ab="app-download-banner-accept-button"] {
					background: var(--dark-button-bg-color);
                    color: var(--dark-button-text-color);
				}

                .ab-test-app-download-banner-close-button svg {
					color: #fff;
				}

                [data-ab="app-download-banner-accept-button"] svg path {
                    fill: var(--dark-button-text-color);
                }
			}
						
			@media (min-width: 576px) {
				
			}

            .ab-test-app-download-banner-text.hidden {
                display: none !important;
            }
		`;
			
		var styleSheet = document.createElement("style");
		styleSheet.type = "text/css";
		element.appendChild(styleSheet);
		styleSheet.innerText = style;
	}
    
    const doExperimentChanges = function () {
        let experimentExists = document.querySelector('.app-download-banner-modified-by-conductrics');
        let banner = document.querySelector('[data-ab="app-download-banner"]');
		let title = document.querySelector('.ab-test-app-download-banner-title');
        let description = document.querySelector('.ab-test-app-download-banner-text');
		let rejectbutton = document.querySelector('.ab-test-app-download-banner-close-button');
		let acceptbutton = document.querySelector('.ab-test-app-download-banner-accept-button');
        if(experimentExists) {
            //sendGAEvent('script failed, exp already exists');
        } else if(banner && title && acceptbutton && rejectbutton) {
            title.classList.add('app-download-banner-modified-by-conductrics', namelower);
			if(title.innerText.trim() === currentTitle && acceptbutton.innerText.trim() === currentButtonText) {
				if(!banner.querySelector('style')) {
					insertStyle(banner);
				}

                let leftDiv = document.createElement('div');
                leftDiv.classList.add('ab-test-app-download-banner-left');
                leftDiv.appendChild(title);
                leftDiv.appendChild(description);               
                leftDiv.appendChild(acceptbutton);
                banner.prepend(leftDiv);

                let image = document.createElement('img');
                image.classList.add('ab-test-app-download-banner-image');
                image.src = newImageUrl;
                image.alt = newImageAlt;

                let rightDiv = document.createElement('div');
                rightDiv.classList.add('ab-test-app-download-banner-right');
                rightDiv.appendChild(rejectbutton);
                rightDiv.appendChild(image);
                banner.appendChild(rightDiv);
	
                if(newTitleText) {
                    title.innerHTML = '<span>' + newTitleText + '</span>';
                }
	
                let descriptionUl = description.querySelector('ul');
                if(descriptionUl) {
                    descriptionUl.classList.add('hidden');
                }
				let descriptionSpan = document.createElement('span');
                descriptionSpan.classList.add('app-marketing__text', 'ui-text-400');
                descriptionSpan.innerText = newDescriptionText;
                description.appendChild(descriptionSpan);
	
				let svg = '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><path d="M12 15.4115C11.8795 15.4115 11.7673 15.3923 11.6634 15.3538C11.5596 15.3154 11.4609 15.2493 11.3673 15.1557L8.2577 12.0462C8.10898 11.8974 8.03559 11.7234 8.03753 11.5241C8.03944 11.3247 8.11283 11.1475 8.2577 10.9923C8.41283 10.8372 8.59103 10.7571 8.7923 10.752C8.99358 10.7468 9.17179 10.8218 9.32692 10.977L11.25 12.9V5.25C11.25 5.03718 11.3218 4.85898 11.4654 4.7154C11.609 4.5718 11.7872 4.5 12 4.5C12.2128 4.5 12.391 4.5718 12.5346 4.7154C12.6782 4.85898 12.7499 5.03718 12.7499 5.25V12.9L14.673 10.977C14.8217 10.8282 14.9983 10.7548 15.2028 10.7568C15.4073 10.7587 15.5871 10.8372 15.7422 10.9923C15.8871 11.1475 15.9621 11.3231 15.9672 11.5193C15.9724 11.7154 15.8974 11.891 15.7422 12.0462L12.6327 15.1557C12.5391 15.2493 12.4403 15.3154 12.3365 15.3538C12.2327 15.3923 12.1205 15.4115 12 15.4115ZM6.3077 19.5C5.80257 19.5 5.375 19.325 5.025 18.975C4.675 18.625 4.5 18.1974 4.5 17.6923V15.7307C4.5 15.5179 4.5718 15.3397 4.7154 15.1961C4.85898 15.0525 5.03718 14.9808 5.25 14.9808C5.46282 14.9808 5.64102 15.0525 5.7846 15.1961C5.92818 15.3397 5.99997 15.5179 5.99997 15.7307V17.6923C5.99997 17.7692 6.03202 17.8397 6.09612 17.9038C6.16024 17.9679 6.23077 18 6.3077 18H17.6922C17.7692 18 17.8397 17.9679 17.9038 17.9038C17.9679 17.8397 18 17.7692 18 17.6923V15.7307C18 15.5179 18.0718 15.3397 18.2154 15.1961C18.3589 15.0525 18.5371 14.9808 18.75 14.9808C18.9628 14.9808 19.141 15.0525 19.2845 15.1961C19.4281 15.3397 19.5 15.5179 19.5 15.7307V17.6923C19.5 18.1974 19.325 18.625 18.975 18.975C18.625 19.325 18.1974 19.5 17.6922 19.5H6.3077Z" fill="white"/></svg>';
				acceptbutton.innerHTML = '<label class="cursor-pointer">' + svg + newButtonText + '</label>';
				acceptbutton.onclick = function (e) {
					sendGAEvent('click application download');
				}
	
				if(requireCdx) {
					cdx.confirm(true);
				}
	
				dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
				return true;
			}
			else {
				//sendGAEvent('script error: app download banner text unexpected');	
			}
		}		
        else {
            sendGAEvent('script error: app download banner html unexpected');
        }
    };

    doExperimentChanges();
} catch(e) {
    //this is needed in ticker-agents. If e does not contain text "confirm" or "cdx", then call the sendGAEvent function
    if(e.toString().indexOf('confirm') < 0 && e.toString().indexOf('cdx') < 0) {
        console.log(e);
    
		let err = e;
		let err_split = e.stack.split("\n");
		let err_line = false;
		if(err_split[1]) {
			err_line = err_split[1].split('>:');
		}
		if(err_line[1]) {
			err = err_line[1];
		}
		sendGAEvent('script error: ' + err);
    }
}
 },'js-MBFpfmpnSTNZ21tp75YX-1741862338': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = true;
if(!requireCdx) { testing = true; } //set this to true if not in conductrics for easier testing
const experimentId = 'HS24-41';
const variantId = 'C';
const experimentName = experimentId + ' sovelluslatausbanneri';
const variantName = variantId + ': kuuntelu';
const namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;

const currentTitle = 'Lataa HS-sovellus';
const currentButtonText = 'Lataa sovellus';

let newTitleText = 'Lataa HS-sovellus';
let newButtonText = 'Lataa sovellus';
let newDescriptionText = 'Kuuntele aina ajan tasalla oleva kooste: Tärkeimmät uutiset 2 minuutissa. Vain HS-sovelluksessa.';
let newImageUrl = 'https://kampanjat.hs.fi/sovelluskuvat/hs-sovellus-kuuntelu.png';
let newImageAlt = 'Kuva Helsingin Sanomien sovelluksesta'; //seo and accessibility purposes, not visible

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    const insertStyle = function (element) {
		let style = `		
			:root {
                --light-border-color: #bbb;
                --light-bg-color: #fff;
                --light-button-bg-color: #191919;
                --light-button-text-color: #fff;

				--dark-border-color: #666;
                --dark-bg-color: #232323;
                --dark-button-bg-color: #fff;
                --dark-button-text-color: #191919;
			}

			[data-ab="app-download-banner"] {
				background: var(--light-bg-color);
				border-top: 1px solid var(--light-border-color);
                display: flex;
                flex-direction: row;
			}

            [data-ab="app-download-banner"] .ab-test-app-download-banner-left {
                display: flex;
                flex-direction: column;
            }

            [data-ab="app-download-banner"] .ab-test-app-download-banner-right {
                display: flex;
                flex-direction: column;
                align-items: flex-end;
                justify-content: space-between;
            }

            .ab-test-app-download-banner-image {
                position: relative;
                right: -16px;
                bottom: -16px;
                max-height: 300px;
            }

			.ab-test-app-download-banner-title {
                font-size: 22px;
			}
			
			.ab-test-app-download-banner-title, .ab-test-app-download-banner-text, .ab-test-app-download-banner ul {
				color: var(--dark-color) !important;
                margin-bottom: 8px;
			}

			[data-ab="app-download-banner"] ul {
				display: none;
			}

            [data-ab="app-download-banner-text"] span {
                font-size: 16px;
                margin-bottom: 8px;
            }
			
			[data-ab="app-download-banner-accept-button"] {
				background: var(--light-button-bg-color);
				color: var(--light-button-text-color);
				margin-bottom: 0;
                padding-top: 2px;
			}

            [data-ab="app-download-banner-accept-button"] svg {
                display: inline-block;
                vertical-align: middle;
                margin-right: 8px;
            }

            [data-ab="app-download-banner-accept-button"] svg path {
                fill: var(--light-button-text-color);
            }
            
            .ab-test-app-download-banner-close-button svg {
                color: var(--light-button-bg-color);
            }

			.sndp-dark {
				[data-ab="app-download-banner"] {
					background: var(--dark-bg-color);
					border-top: 1px solid var(--dark-border-color);
				}
				
				.ab-test-app-download-banner-title, .ab-test-app-download-banner-text, .ab-test-app-download-banner ul {
					color: #fff !important;
				}
				
				[data-ab="app-download-banner-accept-button"] {
					background: var(--dark-button-bg-color);
                    color: var(--dark-button-text-color);
				}

                .ab-test-app-download-banner-close-button svg {
					color: #fff;
				}

                [data-ab="app-download-banner-accept-button"] svg path {
                    fill: var(--dark-button-text-color);
                }
			}
						
			@media (min-width: 576px) {
				
			}

            .ab-test-app-download-banner-text.hidden {
                display: none !important;
            }
		`;
			
		var styleSheet = document.createElement("style");
		styleSheet.type = "text/css";
		element.appendChild(styleSheet);
		styleSheet.innerText = style;
	}
    
    const doExperimentChanges = function () {
        let experimentExists = document.querySelector('.app-download-banner-modified-by-conductrics');
        let banner = document.querySelector('[data-ab="app-download-banner"]');
		let title = document.querySelector('.ab-test-app-download-banner-title');
        let description = document.querySelector('.ab-test-app-download-banner-text');
		let rejectbutton = document.querySelector('.ab-test-app-download-banner-close-button');
		let acceptbutton = document.querySelector('.ab-test-app-download-banner-accept-button');
        if(experimentExists) {
            //sendGAEvent('script failed, exp already exists');
        } else if(banner && title && acceptbutton && rejectbutton) {
            title.classList.add('app-download-banner-modified-by-conductrics', namelower);
			if(title.innerText.trim() === currentTitle && acceptbutton.innerText.trim() === currentButtonText) {
				if(!banner.querySelector('style')) {
					insertStyle(banner);
				}

                let leftDiv = document.createElement('div');
                leftDiv.classList.add('ab-test-app-download-banner-left');
                leftDiv.appendChild(title);
                leftDiv.appendChild(description);               
                leftDiv.appendChild(acceptbutton);
                banner.prepend(leftDiv);

                let image = document.createElement('img');
                image.classList.add('ab-test-app-download-banner-image');
                image.src = newImageUrl;
                image.alt = newImageAlt;

                let rightDiv = document.createElement('div');
                rightDiv.classList.add('ab-test-app-download-banner-right');
                rightDiv.appendChild(rejectbutton);
                rightDiv.appendChild(image);
                banner.appendChild(rightDiv);
	
                if(newTitleText) {
                    title.innerHTML = '<span>' + newTitleText + '</span>';
                }
	
                let descriptionUl = description.querySelector('ul');
                if(descriptionUl) {
                    descriptionUl.classList.add('hidden');
                }
				let descriptionSpan = document.createElement('span');
                descriptionSpan.classList.add('app-marketing__text', 'ui-text-400');
                descriptionSpan.innerText = newDescriptionText;
                description.appendChild(descriptionSpan);
	
				let svg = '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><path d="M12 15.4115C11.8795 15.4115 11.7673 15.3923 11.6634 15.3538C11.5596 15.3154 11.4609 15.2493 11.3673 15.1557L8.2577 12.0462C8.10898 11.8974 8.03559 11.7234 8.03753 11.5241C8.03944 11.3247 8.11283 11.1475 8.2577 10.9923C8.41283 10.8372 8.59103 10.7571 8.7923 10.752C8.99358 10.7468 9.17179 10.8218 9.32692 10.977L11.25 12.9V5.25C11.25 5.03718 11.3218 4.85898 11.4654 4.7154C11.609 4.5718 11.7872 4.5 12 4.5C12.2128 4.5 12.391 4.5718 12.5346 4.7154C12.6782 4.85898 12.7499 5.03718 12.7499 5.25V12.9L14.673 10.977C14.8217 10.8282 14.9983 10.7548 15.2028 10.7568C15.4073 10.7587 15.5871 10.8372 15.7422 10.9923C15.8871 11.1475 15.9621 11.3231 15.9672 11.5193C15.9724 11.7154 15.8974 11.891 15.7422 12.0462L12.6327 15.1557C12.5391 15.2493 12.4403 15.3154 12.3365 15.3538C12.2327 15.3923 12.1205 15.4115 12 15.4115ZM6.3077 19.5C5.80257 19.5 5.375 19.325 5.025 18.975C4.675 18.625 4.5 18.1974 4.5 17.6923V15.7307C4.5 15.5179 4.5718 15.3397 4.7154 15.1961C4.85898 15.0525 5.03718 14.9808 5.25 14.9808C5.46282 14.9808 5.64102 15.0525 5.7846 15.1961C5.92818 15.3397 5.99997 15.5179 5.99997 15.7307V17.6923C5.99997 17.7692 6.03202 17.8397 6.09612 17.9038C6.16024 17.9679 6.23077 18 6.3077 18H17.6922C17.7692 18 17.8397 17.9679 17.9038 17.9038C17.9679 17.8397 18 17.7692 18 17.6923V15.7307C18 15.5179 18.0718 15.3397 18.2154 15.1961C18.3589 15.0525 18.5371 14.9808 18.75 14.9808C18.9628 14.9808 19.141 15.0525 19.2845 15.1961C19.4281 15.3397 19.5 15.5179 19.5 15.7307V17.6923C19.5 18.1974 19.325 18.625 18.975 18.975C18.625 19.325 18.1974 19.5 17.6922 19.5H6.3077Z" fill="white"/></svg>';
				acceptbutton.innerHTML = '<label class="cursor-pointer">' + svg + newButtonText + '</label>';
				acceptbutton.onclick = function (e) {
					sendGAEvent('click application download');
				}
	
				if(requireCdx) {
					cdx.confirm(true);
				}
	
				dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
				return true;
			}
			else {
				//sendGAEvent('script error: app download banner text unexpected');	
			}
		}		
        else {
            sendGAEvent('script error: app download banner html unexpected');
        }
    };

    doExperimentChanges();
} catch(e) {
    //this is needed in ticker-agents. If e does not contain text "confirm" or "cdx", then call the sendGAEvent function
    if(e.toString().indexOf('confirm') < 0 && e.toString().indexOf('cdx') < 0) {
        console.log(e);
    
		let err = e;
		let err_split = e.stack.split("\n");
		let err_line = false;
		if(err_split[1]) {
			err_line = err_split[1].split('>:');
		}
		if(err_line[1]) {
			err = err_line[1];
		}
		sendGAEvent('script error: ' + err);
    }
}
 },'js-06YU6KqdFGahlegsZbc6-1741860730': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if(!requireCdx) { testing = true; } //set this to true if not in conductrics for easier testing
const experimentId = 'HS24-41';
const variantId = 'D';
const experimentName = experimentId + ' sovelluslatausbanneri';
const variantName = variantId + ': podcastit';
const namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;

const currentTitle = 'Lataa HS-sovellus';
const currentButtonText = 'Lataa sovellus';

let newTitleText = 'Lataa HS-sovellus';
let newButtonText = 'Lataa sovellus';
let newDescriptionText = 'Helsingin sanomien suositut podcastit sekä parhaat sisällöt. Kuuntele myös kaikki uutiset koneäänen avulla.';
let newImageUrl = 'https://kampanjat.hs.fi/sovelluskuvat/hs-sovellus-podcastit.png';
let newImageAlt = 'Kuva Helsingin Sanomien sovelluksesta'; //seo and accessibility purposes, not visible

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    const insertStyle = function (element) {
		let style = `		
			:root {
                --light-border-color: #bbb;
                --light-bg-color: #fff;
                --light-button-bg-color: #191919;
                --light-button-text-color: #fff;

				--dark-border-color: #666;
                --dark-bg-color: #232323;
                --dark-button-bg-color: #fff;
                --dark-button-text-color: #191919;
			}

			[data-ab="app-download-banner"] {
				background: var(--light-bg-color);
				border-top: 1px solid var(--light-border-color);
                display: flex;
                flex-direction: row;
			}

            [data-ab="app-download-banner"] .ab-test-app-download-banner-left {
                display: flex;
                flex-direction: column;
            }

            [data-ab="app-download-banner"] .ab-test-app-download-banner-right {
                display: flex;
                flex-direction: column;
                align-items: flex-end;
                justify-content: space-between;
            }

            .ab-test-app-download-banner-image {
                position: relative;
                right: -16px;
                bottom: -16px;
                max-height: 300px;
            }

			.ab-test-app-download-banner-title {
                font-size: 22px;
			}
			
			.ab-test-app-download-banner-title, .ab-test-app-download-banner-text, .ab-test-app-download-banner ul {
				color: var(--dark-color) !important;
                margin-bottom: 8px;
			}

			[data-ab="app-download-banner"] ul {
				display: none;
			}

            [data-ab="app-download-banner-text"] span {
                font-size: 16px;
                margin-bottom: 8px;
            }
			
			[data-ab="app-download-banner-accept-button"] {
				background: var(--light-button-bg-color);
				color: var(--light-button-text-color);
				margin-bottom: 0;
                padding-top: 2px;
			}

            [data-ab="app-download-banner-accept-button"] svg {
                display: inline-block;
                vertical-align: middle;
                margin-right: 8px;
            }

            [data-ab="app-download-banner-accept-button"] svg path {
                fill: var(--light-button-text-color);
            }
            
            .ab-test-app-download-banner-close-button svg {
                color: var(--light-button-bg-color);
            }

			.sndp-dark {
				[data-ab="app-download-banner"] {
					background: var(--dark-bg-color);
					border-top: 1px solid var(--dark-border-color);
				}
				
				.ab-test-app-download-banner-title, .ab-test-app-download-banner-text, .ab-test-app-download-banner ul {
					color: #fff !important;
				}
				
				[data-ab="app-download-banner-accept-button"] {
					background: var(--dark-button-bg-color);
                    color: var(--dark-button-text-color);
				}

                .ab-test-app-download-banner-close-button svg {
					color: #fff;
				}

                [data-ab="app-download-banner-accept-button"] svg path {
                    fill: var(--dark-button-text-color);
                }
			}
						
			@media (min-width: 576px) {
				
			}

            .ab-test-app-download-banner-text.hidden {
                display: none !important;
            }
		`;
			
		var styleSheet = document.createElement("style");
		styleSheet.type = "text/css";
		element.appendChild(styleSheet);
		styleSheet.innerText = style;
	}
    
    const doExperimentChanges = function () {
        let experimentExists = document.querySelector('.app-download-banner-modified-by-conductrics');
        let banner = document.querySelector('[data-ab="app-download-banner"]');
		let title = document.querySelector('.ab-test-app-download-banner-title');
        let description = document.querySelector('.ab-test-app-download-banner-text');
		let rejectbutton = document.querySelector('.ab-test-app-download-banner-close-button');
		let acceptbutton = document.querySelector('.ab-test-app-download-banner-accept-button');
        if(experimentExists) {
            //sendGAEvent('script failed, exp already exists');
        } else if(banner && title && acceptbutton && rejectbutton) {
            title.classList.add('app-download-banner-modified-by-conductrics', namelower);
			if(title.innerText.trim() === currentTitle && acceptbutton.innerText.trim() === currentButtonText) {
				if(!banner.querySelector('style')) {
					insertStyle(banner);
				}

                let leftDiv = document.createElement('div');
                leftDiv.classList.add('ab-test-app-download-banner-left');
                leftDiv.appendChild(title);
                leftDiv.appendChild(description);               
                leftDiv.appendChild(acceptbutton);
                banner.prepend(leftDiv);

                let image = document.createElement('img');
                image.classList.add('ab-test-app-download-banner-image');
                image.src = newImageUrl;
                image.alt = newImageAlt;

                let rightDiv = document.createElement('div');
                rightDiv.classList.add('ab-test-app-download-banner-right');
                rightDiv.appendChild(rejectbutton);
                rightDiv.appendChild(image);
                banner.appendChild(rightDiv);
	
                if(newTitleText) {
                    title.innerHTML = '<span>' + newTitleText + '</span>';
                }
	
                let descriptionUl = description.querySelector('ul');
                if(descriptionUl) {
                    descriptionUl.classList.add('hidden');
                }
				let descriptionSpan = document.createElement('span');
                descriptionSpan.classList.add('app-marketing__text', 'ui-text-400');
                descriptionSpan.innerText = newDescriptionText;
                description.appendChild(descriptionSpan);
	
				let svg = '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><path d="M12 15.4115C11.8795 15.4115 11.7673 15.3923 11.6634 15.3538C11.5596 15.3154 11.4609 15.2493 11.3673 15.1557L8.2577 12.0462C8.10898 11.8974 8.03559 11.7234 8.03753 11.5241C8.03944 11.3247 8.11283 11.1475 8.2577 10.9923C8.41283 10.8372 8.59103 10.7571 8.7923 10.752C8.99358 10.7468 9.17179 10.8218 9.32692 10.977L11.25 12.9V5.25C11.25 5.03718 11.3218 4.85898 11.4654 4.7154C11.609 4.5718 11.7872 4.5 12 4.5C12.2128 4.5 12.391 4.5718 12.5346 4.7154C12.6782 4.85898 12.7499 5.03718 12.7499 5.25V12.9L14.673 10.977C14.8217 10.8282 14.9983 10.7548 15.2028 10.7568C15.4073 10.7587 15.5871 10.8372 15.7422 10.9923C15.8871 11.1475 15.9621 11.3231 15.9672 11.5193C15.9724 11.7154 15.8974 11.891 15.7422 12.0462L12.6327 15.1557C12.5391 15.2493 12.4403 15.3154 12.3365 15.3538C12.2327 15.3923 12.1205 15.4115 12 15.4115ZM6.3077 19.5C5.80257 19.5 5.375 19.325 5.025 18.975C4.675 18.625 4.5 18.1974 4.5 17.6923V15.7307C4.5 15.5179 4.5718 15.3397 4.7154 15.1961C4.85898 15.0525 5.03718 14.9808 5.25 14.9808C5.46282 14.9808 5.64102 15.0525 5.7846 15.1961C5.92818 15.3397 5.99997 15.5179 5.99997 15.7307V17.6923C5.99997 17.7692 6.03202 17.8397 6.09612 17.9038C6.16024 17.9679 6.23077 18 6.3077 18H17.6922C17.7692 18 17.8397 17.9679 17.9038 17.9038C17.9679 17.8397 18 17.7692 18 17.6923V15.7307C18 15.5179 18.0718 15.3397 18.2154 15.1961C18.3589 15.0525 18.5371 14.9808 18.75 14.9808C18.9628 14.9808 19.141 15.0525 19.2845 15.1961C19.4281 15.3397 19.5 15.5179 19.5 15.7307V17.6923C19.5 18.1974 19.325 18.625 18.975 18.975C18.625 19.325 18.1974 19.5 17.6922 19.5H6.3077Z" fill="white"/></svg>';
				acceptbutton.innerHTML = '<label class="cursor-pointer">' + svg + newButtonText + '</label>';
				acceptbutton.onclick = function (e) {
					sendGAEvent('click application download');
				}
	
				if(requireCdx) {
					cdx.confirm(true);
				}
	
				dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
				return true;
			}
			else {
				//sendGAEvent('script error: app download banner text unexpected');	
			}
		}		
        else {
            sendGAEvent('script error: app download banner html unexpected');
        }
    };

    doExperimentChanges();
} catch(e) {
    //this is needed in ticker-agents. If e does not contain text "confirm" or "cdx", then call the sendGAEvent function
    if(e.toString().indexOf('confirm') < 0 && e.toString().indexOf('cdx') < 0) {
        console.log(e);
    
		let err = e;
		let err_split = e.stack.split("\n");
		let err_line = false;
		if(err_split[1]) {
			err_line = err_split[1].split('>:');
		}
		if(err_line[1]) {
			err = err_line[1];
		}
		sendGAEvent('script error: ' + err);
    }
}
 },'js-nuRjESXNMs8kZmFvFinC-1741860730': function (cdx) { let requireCdx = true; //on Conductrics set this to true!
//requireCdx: false = use vanilla js only. true = use Conductrics functions such as cdx.trait() and cdx.confirm()

let testing = false;
if(!requireCdx) { testing = true; } //set this to true if not in conductrics for easier testing
const experimentId = 'HS24-41';
const variantId = 'E';
const experimentName = experimentId + ' sovelluslatausbanneri';
const variantName = variantId + ': pelit';
const namelower = 'ab-test-from-conductrics-' + experimentId.toLowerCase() + '-' + variantId;

const currentTitle = 'Lataa HS-sovellus';
const currentButtonText = 'Lataa sovellus';

let newTitleText = 'Lataa HS-sovellus';
let newButtonText = 'Lataa sovellus';
let newDescriptionText = 'HS:n päivittäin ilmestyvät pelit uudistuivat: uusi Sanalouhos haastaa kirjainpelien ystävät.';
let newImageUrl = 'https://kampanjat.hs.fi/sovelluskuvat/hs-sovellus-pelit.png';
let newImageAlt = 'Kuva Helsingin Sanomien sovelluksesta'; //seo and accessibility purposes, not visible

//these are just to remove warnings shown in editor
if (typeof cdx === 'undefined') { window.cdx = window.cdx || {}; }
if (typeof dataLayer === 'undefined') { window.dataLayer = window.dataLayer || []; }

const stringIdPlusVariant = experimentId + ' ' + variantId + ': ';
const sendGAEvent = function (label) { if(testing) {console.log(label); } else { dataLayer.push({'event': 'eventInfo', 'eventCategory': 'Conductrics', 'eventAction': 'conductrics_event', 'eventLabel': stringIdPlusVariant + label});}};

try {
    const insertStyle = function (element) {
		let style = `		
			:root {
                --light-border-color: #bbb;
                --light-bg-color: #fff;
                --light-button-bg-color: #191919;
                --light-button-text-color: #fff;

				--dark-border-color: #666;
                --dark-bg-color: #232323;
                --dark-button-bg-color: #fff;
                --dark-button-text-color: #191919;
			}

			[data-ab="app-download-banner"] {
				background: var(--light-bg-color);
				border-top: 1px solid var(--light-border-color);
                display: flex;
                flex-direction: row;
			}

            [data-ab="app-download-banner"] .ab-test-app-download-banner-left {
                display: flex;
                flex-direction: column;
            }

            [data-ab="app-download-banner"] .ab-test-app-download-banner-right {
                display: flex;
                flex-direction: column;
                align-items: flex-end;
                justify-content: space-between;
            }

            .ab-test-app-download-banner-image {
                position: relative;
                right: -16px;
                bottom: -16px;
                max-height: 300px;
            }

			.ab-test-app-download-banner-title {
                font-size: 22px;
			}
			
			.ab-test-app-download-banner-title, .ab-test-app-download-banner-text, .ab-test-app-download-banner ul {
				color: var(--dark-color) !important;
                margin-bottom: 8px;
			}

			[data-ab="app-download-banner"] ul {
				display: none;
			}

            [data-ab="app-download-banner-text"] span {
                font-size: 16px;
                margin-bottom: 8px;
            }
			
			[data-ab="app-download-banner-accept-button"] {
				background: var(--light-button-bg-color);
				color: var(--light-button-text-color);
				margin-bottom: 0;
                padding-top: 2px;
			}

            [data-ab="app-download-banner-accept-button"] svg {
                display: inline-block;
                vertical-align: middle;
                margin-right: 8px;
            }

            [data-ab="app-download-banner-accept-button"] svg path {
                fill: var(--light-button-text-color);
            }
            
            .ab-test-app-download-banner-close-button svg {
                color: var(--light-button-bg-color);
            }

			.sndp-dark {
				[data-ab="app-download-banner"] {
					background: var(--dark-bg-color);
					border-top: 1px solid var(--dark-border-color);
				}
				
				.ab-test-app-download-banner-title, .ab-test-app-download-banner-text, .ab-test-app-download-banner ul {
					color: #fff !important;
				}
				
				[data-ab="app-download-banner-accept-button"] {
					background: var(--dark-button-bg-color);
                    color: var(--dark-button-text-color);
				}

                .ab-test-app-download-banner-close-button svg {
					color: #fff;
				}

                [data-ab="app-download-banner-accept-button"] svg path {
                    fill: var(--dark-button-text-color);
                }
			}
						
			@media (min-width: 576px) {
				
			}

            .ab-test-app-download-banner-text.hidden {
                display: none !important;
            }
		`;
			
		var styleSheet = document.createElement("style");
		styleSheet.type = "text/css";
		element.appendChild(styleSheet);
		styleSheet.innerText = style;
	}
    
    const doExperimentChanges = function () {
        let experimentExists = document.querySelector('.app-download-banner-modified-by-conductrics');
        let banner = document.querySelector('[data-ab="app-download-banner"]');
		let title = document.querySelector('.ab-test-app-download-banner-title');
        let description = document.querySelector('.ab-test-app-download-banner-text');
		let rejectbutton = document.querySelector('.ab-test-app-download-banner-close-button');
		let acceptbutton = document.querySelector('.ab-test-app-download-banner-accept-button');
        if(experimentExists) {
            //sendGAEvent('script failed, exp already exists');
        } else if(banner && title && acceptbutton && rejectbutton) {
            title.classList.add('app-download-banner-modified-by-conductrics', namelower);
			if(title.innerText.trim() === currentTitle && acceptbutton.innerText.trim() === currentButtonText) {
				if(!banner.querySelector('style')) {
					insertStyle(banner);
				}

                let leftDiv = document.createElement('div');
                leftDiv.classList.add('ab-test-app-download-banner-left');
                leftDiv.appendChild(title);
                leftDiv.appendChild(description);               
                leftDiv.appendChild(acceptbutton);
                banner.prepend(leftDiv);

                let image = document.createElement('img');
                image.classList.add('ab-test-app-download-banner-image');
                image.src = newImageUrl;
                image.alt = newImageAlt;

                let rightDiv = document.createElement('div');
                rightDiv.classList.add('ab-test-app-download-banner-right');
                rightDiv.appendChild(rejectbutton);
                rightDiv.appendChild(image);
                banner.appendChild(rightDiv);
	
                if(newTitleText) {
                    title.innerHTML = '<span>' + newTitleText + '</span>';
                }
	
                let descriptionUl = description.querySelector('ul');
                if(descriptionUl) {
                    descriptionUl.classList.add('hidden');
                }
				let descriptionSpan = document.createElement('span');
                descriptionSpan.classList.add('app-marketing__text', 'ui-text-400');
                descriptionSpan.innerText = newDescriptionText;
                description.appendChild(descriptionSpan);
	
				let svg = '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><path d="M12 15.4115C11.8795 15.4115 11.7673 15.3923 11.6634 15.3538C11.5596 15.3154 11.4609 15.2493 11.3673 15.1557L8.2577 12.0462C8.10898 11.8974 8.03559 11.7234 8.03753 11.5241C8.03944 11.3247 8.11283 11.1475 8.2577 10.9923C8.41283 10.8372 8.59103 10.7571 8.7923 10.752C8.99358 10.7468 9.17179 10.8218 9.32692 10.977L11.25 12.9V5.25C11.25 5.03718 11.3218 4.85898 11.4654 4.7154C11.609 4.5718 11.7872 4.5 12 4.5C12.2128 4.5 12.391 4.5718 12.5346 4.7154C12.6782 4.85898 12.7499 5.03718 12.7499 5.25V12.9L14.673 10.977C14.8217 10.8282 14.9983 10.7548 15.2028 10.7568C15.4073 10.7587 15.5871 10.8372 15.7422 10.9923C15.8871 11.1475 15.9621 11.3231 15.9672 11.5193C15.9724 11.7154 15.8974 11.891 15.7422 12.0462L12.6327 15.1557C12.5391 15.2493 12.4403 15.3154 12.3365 15.3538C12.2327 15.3923 12.1205 15.4115 12 15.4115ZM6.3077 19.5C5.80257 19.5 5.375 19.325 5.025 18.975C4.675 18.625 4.5 18.1974 4.5 17.6923V15.7307C4.5 15.5179 4.5718 15.3397 4.7154 15.1961C4.85898 15.0525 5.03718 14.9808 5.25 14.9808C5.46282 14.9808 5.64102 15.0525 5.7846 15.1961C5.92818 15.3397 5.99997 15.5179 5.99997 15.7307V17.6923C5.99997 17.7692 6.03202 17.8397 6.09612 17.9038C6.16024 17.9679 6.23077 18 6.3077 18H17.6922C17.7692 18 17.8397 17.9679 17.9038 17.9038C17.9679 17.8397 18 17.7692 18 17.6923V15.7307C18 15.5179 18.0718 15.3397 18.2154 15.1961C18.3589 15.0525 18.5371 14.9808 18.75 14.9808C18.9628 14.9808 19.141 15.0525 19.2845 15.1961C19.4281 15.3397 19.5 15.5179 19.5 15.7307V17.6923C19.5 18.1974 19.325 18.625 18.975 18.975C18.625 19.325 18.1974 19.5 17.6922 19.5H6.3077Z" fill="white"/></svg>';
				acceptbutton.innerHTML = '<label class="cursor-pointer">' + svg + newButtonText + '</label>';
				acceptbutton.onclick = function (e) {
					sendGAEvent('click application download');
				}
	
				if(requireCdx) {
					cdx.confirm(true);
				}
	
				dataLayer.push({'experiment': 'Conductrics', 'experimentID': experimentName, 'description': variantName});
				return true;
			}
			else {
				//sendGAEvent('script error: app download banner text unexpected');	
			}
		}		
        else {
            sendGAEvent('script error: app download banner html unexpected');
        }
    };

    doExperimentChanges();
} catch(e) {
    //this is needed in ticker-agents. If e does not contain text "confirm" or "cdx", then call the sendGAEvent function
    if(e.toString().indexOf('confirm') < 0 && e.toString().indexOf('cdx') < 0) {
        console.log(e);
    
		let err = e;
		let err_split = e.stack.split("\n");
		let err_line = false;
		if(err_split[1]) {
			err_line = err_split[1].split('>:');
		}
		if(err_line[1]) {
			err = err_line[1];
		}
		sendGAEvent('script error: ' + err);
    }
}
 },'js-4MrY6KAvdzX1gllgzcJz-1741095692': function (cdx) { 
 },'js-h1uk3dXPTHGwYoR0IexJ-1741095760': function (cdx) { document.querySelector('.ab-test-hard-paywall-subscribe-button span').innerText = 'Tutustu Hesariin 1 kk 0 €';
 } }; var _wa_js = { 'cm-baMuJpVcDqrZoFeioEgT': function(fields, ctx) {"undefined"==typeof ctx&&(window.ctx=window.ctx||{}),"undefined"==typeof dataLayer&&(window.dataLayer=window.dataLayer||[]),"undefined"==typeof fields&&(window.fields=window.fields||[]);var debugging=fields.debugging,requireCdx=!0,testing=!1;testing&&(requireCdx=!1,fields.debugging=!0,fields.oldTickerText="Tilaa Satakunnan Kansa Länsi-Suomi 1 €/kk.",fields.aid="GB2QOXOO52MH8",fields.pagePath="/tilaus/tutustu-plus-kaikki-bundle",fields.days=30,fields.cycloneDays=30,fields.newText="Tilaa Aamulehti"),debugging&&(requireCdx=!1);var experimentId="Macro",variantId="macro";ctx&&ctx.agent&&(experimentId=ctx.agent);const experimentName=experimentId+" myyntitikkeri",oldTickerText=fields.oldTickerText,aid=fields.aid,pagePath=fields.pagePath,days=fields.days,cycloneDays=fields.cycloneDays,newText=fields.newText,stringIdPlusVariant=experimentId+" "+variantId+": ",sendGAEvent=function(e){debugging?console.log(e):dataLayer.push({event:"eventInfo",eventCategory:"Conductrics",eventAction:"conductrics_event",eventLabel:stringIdPlusVariant+e})};try{const changeTickerLink=function(e){var t={aid:aid},n=new URL(e.href);if(t&&Object.keys(t).forEach(function(e){null===t[e]?n.searchParams["delete"](e):void 0!==t[e]&&n.searchParams.set(e,t[e])}),pagePath){var i=n.pathname.split("/");i.pop(),i=i.join("/")+pagePath,n.pathname=i;var r=n.pathname;if(i.includes("/tilaus/"))return r=r.replace("https://www.tilaa.sanoma.fi/",window.location.href);n.pathname=i}return n.toString()},changeTickerText=function(e){var t=e;if(parseInt(days)>0){var n=new Date;n.setDate(n.getDate()+parseInt(days));var i=n.getDate(),r=n.getMonth()+1;t=t.replace("p.k.",i.toString()+"."+r.toString()+".")}if(parseInt(cycloneDays)>0){var a=new Date;a.setDate(a.getDate()+parseInt(cycloneDays));var d=a.getDate(),c=a.getMonth()+1;t=t.replace("d.m.",d.toString()+"."+c.toString()+".")}return t},doExperimentChanges=function(){var e=document.querySelector(".ticker-modified-by-conductrics"),t=document.querySelector(".ticker.ticker--promo-10");if(e);else{if(t){var n=t.parentNode,i=t.querySelector(".ticker__title span:not(.ticker__storylogo)");if(n.href.indexOf("/u/oma/tilaa/")<0&&n.href.indexOf("tilaa.sanoma.fi/")<0&&(n=!1),t&&n&&i)if(i.innerText.indexOf(oldTickerText)>-1){if(n){newText&&(i.innerText=changeTickerText(newText)),aid&&(n.href=changeTickerLink(n));var r="ab-test-from-conductrics-"+experimentId.toLowerCase()+"-"+variantId;return t.classList.add("ticker-modified-by-conductrics",r),requireCdx&&"undefined"!=typeof cdx&&cdx.confirm(!0),!0}sendGAEvent("script error: ticker link could not be changed")}else sendGAEvent("script error: ticker text unexpected: "+i.innerText);else sendGAEvent("script error: ticker html unexpected or wrong funnel");return dataLayer.push({experiment:"Conductrics",experimentID:experimentName,description:variantId}),!0}sendGAEvent("script failed, ticker n/a")}};doExperimentChanges()}catch(e){if(e.toString().indexOf("confirm")<0&&e.toString().indexOf("cdx")<0){console.log(e);var err=e,err_split=e.stack.split("\n"),err_line=!1;err_split[1]&&(err_line=err_split[1].split(">:")),err_line[1]&&(err=err_line[1]),sendGAEvent("script error: "+err)}}} }; if (!Array.isArray) {Array.isArray = function(arg) {return Object.prototype.toString.call(arg) === '[object Array]'}};
if (!String.prototype.trim) {String.prototype.trim = function () {return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, '')}};
if (!String.prototype.startsWith) {String.prototype.startsWith = function(s) {return this.indexOf(s) == 0}}
if (!Array.prototype.filter) {Array.prototype.filter = function(fn) { res = []; for (var i = 0; i < this.length; i++) { v = this[i]; if ( fn(v) ) { res.push(v); }} return res; }}
if (!Array.prototype.map) {Array.prototype.map = function(fn) { res = []; for (var i = 0; i < this.length; i++) { v = this[i]; res.push(fn(v)); } return res; }}
if (!Object.keys) {Object.keys = function(o) { var ar = []; for (var k in o) {ar.push(k)}; return ar; }}
if (!Object.assign) {Object.assign = function(r){for(var n=1;n<arguments.length;n++){var a=arguments[n];for(var f in a)r[f]=a[f]}return r};}
if (!Array.prototype.includes) {Array.prototype.includes = function(v) {return this.indexOf(v) >= 0}}  var require = undefined; var define = undefined; require=(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r})()({"./modules/api-steps":[function(require,module,exports){
(function(){var t,e=function(t,e){function s(){this.constructor=t}for(var n in e)o.call(e,n)&&(t[n]=e[n]);return s.prototype=e.prototype,t.prototype=new s,t.__super__=e.prototype,t},o={}.hasOwnProperty;t=require("../diagrams").M,exports.m=function(t){function o(conf){this.conf=conf}return e(o,t),o.prototype.process=function(t,e){var o,s,n,r,i,l,u,p,c,m,a;if((a=null!=(i=null!=(l=t.steps)?l:e.r.steps)?i:[]).length>0){for(null==t.items&&(t.items=[]),null==t._items&&(t._items=t.items.concat()),s={module:"group",items:[]},n=0,r=a.length;r>n;n++)m=a[n],s.items.push({module:"step-set",step:m}),null!=(o=t.diags[null!=(u=null!=(p=m.a)?p:m.g)?u:m.t])&&s.items.push(o);0,"pre"!==(null!=(c=t._items[0])?c.group:void 0)&&e.log("No prelude!","e"),t.items=t._items.concat(),t.items.splice(1,0,s)}},o}(t)}).call(this);
},{"../diagrams":16}],"./modules/api-task":[function(require,module,exports){
(function(){var t,r=function(t,r){function n(){this.constructor=t}for(var p in r)o.call(r,p)&&(t[p]=r[p]);return n.prototype=r.prototype,t.prototype=new n,t.__super__=r.prototype,t},o={}.hasOwnProperty;t=require("../diagrams").M,exports.m=function(t){function o(){return o.__super__.constructor.apply(this,arguments)}return r(o,t),o.prototype.process=function(t,r){r.log("Task: '"+t.task+"'","a")},o}(t)}).call(this);
},{"../diagrams":16}],"./modules/condition":[function(require,module,exports){
(function(){var r,t=function(r,t){function n(){this.constructor=r}for(var e in t)o.call(t,e)&&(r[e]=t[e]);return n.prototype=t.prototype,r.prototype=new n,r.__super__=t.prototype,r},o={}.hasOwnProperty;r=require("../diagrams").M,exports.m=function(r){function o(){return o.__super__.constructor.apply(this,arguments)}return t(o,r),o}(r)}).call(this);
},{"../diagrams":16}],"./modules/decision":[function(require,module,exports){
(function(){var n,t=function(n,t){function e(){this.constructor=n}for(var o in t)r.call(t,o)&&(n[o]=t[o]);return e.prototype=t.prototype,n.prototype=new e,n.__super__=t.prototype,n},r={}.hasOwnProperty;n=require("../diagrams").M,exports.m=function(n){function r(){return r.__super__.constructor.apply(this,arguments)}return t(r,n),r.prototype.active=function(n,t){var r;return t.qa()&&t.selsOnly()&&!t.selPre(n.agent)?(t.log("Skipping agent '"+n.agent+"' during preview","q"),!1):!(n.qa&&(r=t.qa(),t.log("QA-only agent '"+n.agent+"' (QA visitor? "+r+")","q"),!r))},r.prototype.getConds=function(n,t){if(t.selPre(n.agent)){if(!t.enfVcPre())return t.log("Skipping entry conditions for '"+n.agent+"'","q"),[];t.log("Enforcing entry conditions during preview for '"+n.agent+"'","q")}return n.conds},r}(n)}).call(this);
},{"../diagrams":16}],"./modules/entry":[function(require,module,exports){
(function(){var t,r=function(t,r){function n(){this.constructor=t}for(var e in r)o.call(r,e)&&(t[e]=r[e]);return n.prototype=r.prototype,t.prototype=new n,t.__super__=r.prototype,t},o={}.hasOwnProperty;t=require("../diagrams").M,exports.m=function(t){function o(){return o.__super__.constructor.apply(this,arguments)}return r(o,t),o.prototype.active=function(t,r){return r.data["d.ep"]===t.entry},o}(t)}).call(this);
},{"../diagrams":16}],"./modules/feature-set":[function(require,module,exports){
(function(){var t,r=function(t,r){function e(){this.constructor=t}for(var n in r)o.call(r,n)&&(t[n]=r[n]);return e.prototype=r.prototype,t.prototype=new e,t.__super__=r.prototype,t},o={}.hasOwnProperty;t=require("../diagrams").M,exports.m=function(t){function o(){return o.__super__.constructor.apply(this,arguments)}return r(o,t),o.prototype.process=function(t,r){r.tAdd(t.feature,t.def?"def":"set")},o}(t)}).call(this);
},{"../diagrams":16}],"./modules/features-profile":[function(require,module,exports){
arguments[4]["./modules/condition"][0].apply(exports,arguments)
},{"../diagrams":16,"dup":"./modules/condition"}],"./modules/group":[function(require,module,exports){
arguments[4]["./modules/condition"][0].apply(exports,arguments)
},{"../diagrams":16,"dup":"./modules/condition"}],"./modules/reward":[function(require,module,exports){
(function(){var e,o,t,r=function(e,o){function t(){this.constructor=e}for(var r in o)n.call(o,r)&&(e[r]=o[r]);return t.prototype=o.prototype,e.prototype=new t,e.__super__=o.prototype,e},n={}.hasOwnProperty;e=require("../diagrams").M,t=require("../../../utils"),o=require("../../../rewards"),exports.m=function(e){function n(conf){this.conf=conf,this.rewarder=new o.Rewarder(this.conf),n.__super__.constructor.call(this,this.conf)}return r(n,e),n.prototype.process=function(e,o){var r,n,s,a,l,i,u,c,d,g,p,f,v;if(null==o.sess)throw"No session";if(o.reread(),f=null!=(l=o.step)?l:{},v={goal:e.goal,value:function(){switch(!1){case!(f.g===e.goal&&"number"==typeof f.v):return f.v;default:return parseFloat(e.value)}}(),vc:null!=(i=f.vc)?i:e.vc,agents:null!=(u=e.to)?u:f.to},!0===e.er)return this.sendViaRest(e,o,v);for(a={countMax:e.countMax,valueMin:e.valueMin,valueMax:e.valueMax,valueDef:e.valueDef,rw:e.rw,ps_ok:e.ps_ok,forex:e.forex},0===(g=this.rewarder.handleStep(o,v,a)).items.length&&o.log("No agents to reward for "+e.goal,"g"),p={g:e.goal,rs:[]},r=0,s=(c=g.items).length;s>r;r++)null!=(n=c[r])&&(o.log("Reward of "+v.value+" ("+n.v+" accepted) to agent "+n.a+" for goal "+n.g,"g"),n=t.Obj.extend({},n,{t:"r",rts:o.ts(),c:function(){switch(!1){case!Array.isArray(n.c):return n.c.join(",");default:return n.c}}(),s:void 0}),!0===this.conf["sqs:use-ddid"]&&(n.ddid=n.a+":"+n.g+":"+(null!=(d=n.ri)?d:0)),o.done(n),p.rs.push({a:n.a.split(":")[1],v:n.v}));return o.resp(p)},n.prototype.sendViaRest=function(e,o,r){var n,s,a,l,i,u,c;return n={g:r.goal,v:r.value,to:r.agents},a=o.qa()?"q":"p",(i=null!=(l=_d.rt.use_rest)?l[a]:void 0)?(u=o.data["v.sid"],t.Strings.isId(u)?(o.log("Sending Goal '"+r.goal+"' to REST API","g"),c=i+"&session="+encodeURIComponent(u),(s=null!=s?s:require("harness")).beacon(c,JSON.stringify({commands:[n]}))):void o.log("Could not send Goal '"+r.goal+"' to REST API (no Session ID)","e")):void o.log("Could not send Goal '"+r.goal+"' to REST API (no endpoint)","e")},n}(e)}).call(this);
},{"../../../rewards":9,"../../../utils":22,"../diagrams":16,"harness":"harness"}],"./modules/root":[function(require,module,exports){
arguments[4]["./modules/condition"][0].apply(exports,arguments)
},{"../diagrams":16,"dup":"./modules/condition"}],"./modules/select":[function(require,module,exports){
(function(){var n,e,t=function(n,e){function t(){this.constructor=n}for(var a in e)c.call(e,a)&&(n[a]=e[a]);return t.prototype=e.prototype,n.prototype=new t,n.__super__=e.prototype,n},c={}.hasOwnProperty;n=require("../diagrams").M,require("../../../utils"),e=require("../../../selection"),exports.m=function(n){function c(n){this.conf=n,this.chooser=new e.Chooser(this.conf),c.__super__.constructor.call(this,this.conf)}return t(c,n),c.prototype.process=function(n,e){var t,c,conf,a,r,s,o,l,i,u,p,d,f,_,g,h,m,y,v,x,b,w,A,k,O,j,q,C,E,N,P,S,D,J,M,U;if(conf=this.conf,null==e.sess)throw"No session for dec";if(E=e.data,N=null!=(m=e.step)?m:{},c=null!=(y="undefined"!=typeof _d&&null!==_d?_d.A[n.agent]:void 0)?y:{a:{c:{}},md:{}},r=function(n){var e;return n===S.a?e=c.aac:_d.A[n]&&(e=_d.A[n].aac),null!=e?e:n},!0!==N.discard||N.a!==n.agent)if(S={a:n.agent,c:function(){switch(!1){case!(N.a===n.agent&&null!=N.c):return N.c;default:return n.choices}}(),x:null!=(v=N.x)?v:[],p:n.policy,exr:n.exr,gdy:n.gdy,n:function(){var e,t;switch(typeof n.num){case"number":return null!=(e=null!=(t=N.n)?t:n.num)?e:1;default:return}}(),w:c.w},null!=(P=c.a.s)){if("running"!==P&&(S.p="p"),q=this.chooser.handleStep(e,S),J="p"===(h=null!=(x=null!=(b=n.s)?b:N.s)?x:q.ps),M="ok"===h,q.s=J&&"ok"!==q.ps?"p":"ok",p=!J,u=M&&"p"===q.ps,d=n.silent||N.silent,j=null!=(w=q.pp)?w:q.p,"p"===n.rap&&(j=q.p=n.rap),q.dp=e.pool(),e.selAdd(q),u?e.log("Confirming selection '"+q.c+"' for agent '"+n.agent+"'","a"):(e.log("selection '"+q.c+"' for agent '"+n.agent+"' (policy "+q.p+", traits ["+q.fs+"])","a"),"p"===q.s&&e.log("selection for '"+n.agent+"' is pending","a")),(!J&&"p"!==(A=q.p)&&"b"!==A&&"s"!==A&&"x"!==A||u)&&e.done({t:"d",a:S.a,c:Array.isArray(q.c)?q.c.join(","):q.c,p:j,fs:q.fs,dts:q.ts}),"api"===E["d.ep"]&&(d||e.resp({a:S.a,c:q.c,p:q.p,md:Array.isArray(q.c)?function(){var n;return n={},q.c.forEach(function(e){return n[e]=Object.assign({},c.md[e])}),n}():Object.assign({},c.md[q.c]),s:q.s})),(U=conf["dl:names"])&&(g=e.c_name(S.a,q.c)),s=r(S.a),p&&null!=e.handlers){for(f in C={},k=E["v.sels"])D=k[f],C[o=f===S.a?s:r(f)]={c:D.c,p:D.p},U&&(t=e.c_name(f,D.c),Object.assign(C[o],{a_name:t.a,c_name:t.c}));for(i=0,_=(O=e.handlers).length;_>i;i++){l=O[i];try{l(C,S.a)}catch(n){a=n,e.log("Could not call post-selection handler: "+a,"e")}}}!function(){var n,t,c,a,r,o,l,i,u,f;p&&(t=e.r._dl,a=conf["dl:ev-style"],o=t.enabled()&&"none"!==a,l=conf["dl:cdl"],(o||l)&&((r=conf["dl:px"]).length>0&&r.indexOf(j)>=0||d&&(u=null!=t._rm?t._rm:t._rm={})[i="s:"+S.a+":"+q.c+":"+j]||d&&conf["dl:slx"]||(f=function(){var n;return n={item:{t:"s",a:s,c:q.c,p:j},ep:E["d.ep"]},U&&Object.assign(n.item,{a_name:g.a,c_name:g.c}),n},n=function(){var n,e,t,c;switch(a){case"ga4":n={event:"experience_impression",exp_variant_string:"conductrics-"+s+"-"+q.c,conductrics_agent_code:s,conductrics_variation_code:q.c,conductrics_selection_policy:j},U&&(n.conductrics_agent_name=g.a,n.conductrics_variation_name=g.c);break;case"cust":e=null!=(t=conf["dl:ev-cust"])?t:"",c={agent_code:s,variation_code:q.c,policy_code:j,agent_name:U?g.a:s,variation_name:U?g.c:q.c},Object.keys(c).forEach(function(n){var t;return e=e.replaceAll("${"+n+"}",null!=(t=c[n])?t:"")}),n=function(){try{return JSON.parse(e)}catch(n){}}();break;default:n=f()}return n},o&&(c="ga4"===a||"cust"===a?null:conf["dl:key-sl"],e.log("Pushing selection '"+q.c+"' into data layer for Agent '"+S.a+"' (policy "+j+")","a"),t.push(c,n())),l&&e.cdl_push(f()),d&&(u[i]=!0))))}()}else e.log("Unknown agent '"+n.agent+"' or status '"+P+"'","a");else e.selDel(n.agent)},c}(n)}).call(this);
},{"../../../selection":10,"../../../utils":22,"../diagrams":16}],"./modules/step-set":[function(require,module,exports){
(function(){var t,r=function(t,r){function n(){this.constructor=t}for(var e in r)o.call(r,e)&&(t[e]=r[e]);return n.prototype=r.prototype,t.prototype=new n,t.__super__=r.prototype,t},o={}.hasOwnProperty;t=require("../diagrams").M,exports.m=function(t){function o(){return o.__super__.constructor.apply(this,arguments)}return r(o,t),o.prototype.process=function(t,r){r.stepSet(t.step)},o}(t)}).call(this);
},{"../diagrams":16}],"./modules/switch":[function(require,module,exports){
(function(){var t,o,r,n={}.hasOwnProperty;o=(r=require("../diagrams")).M,t=r.Conds,exports.m=function(o){function r(){return r.__super__.constructor.apply(this,arguments)}return function(t,o){function r(){this.constructor=t}for(var e in o)n.call(o,e)&&(t[e]=o[e]);r.prototype=o.prototype,t.prototype=new r,t.__super__=o.prototype}(r,o),r.prototype.process=function(o,r){var n,e,s,i;for(o.items=[],e=0,s=(i=o.cases).length;s>e;e++)if(n=i[e],t.evalConds(n.conds,r))return void(o.items=n.items)},r}(o)}).call(this);
},{"../diagrams":16}],"./modules/trait-read":[function(require,module,exports){
(function(){var r,t,e=function(r,t){function e(){this.constructor=r}for(var o in t)n.call(t,o)&&(r[o]=t[o]);return e.prototype=t.prototype,r.prototype=new e,r.__super__=t.prototype,r},n={}.hasOwnProperty,o=[].indexOf||function(r){for(var t=0,e=this.length;e>t;t++)if(t in this&&this[t]===r)return t;return-1};r=require("../diagrams").M,t=require("../../../utils"),exports.m=function(r){function n(){return n.__super__.constructor.apply(this,arguments)}return e(n,r),n.prototype.process=function(r,e){var n,i,s,a,p;for(a=t.Strings.interpolate(r.expr,e.data),n=0,i=(p=function(){var r;switch(!1){case!Array.isArray(a):return a;case"string"!=typeof a:return a.split(/[,; ]+/);case r=typeof a,o.call("boolean",r)<0:case!1:return[a]}}()).length;i>n;n++)s=p[n],this.isId(s)&&e.tAdd(r.ns+"/"+r.type+":"+s,"read")},n}(r)}).call(this);
},{"../../../utils":22,"../diagrams":16}],"./modules/vstate-apply":[function(require,module,exports){
(function(){var e,t,r,n,o,i,s,u,c=function(e,t){function r(){this.constructor=e}for(var n in t)a.call(t,n)&&(e[n]=t[n]);return r.prototype=t.prototype,e.prototype=new r,e.__super__=t.prototype,e},a={}.hasOwnProperty;r=require("../diagrams").M,o=require("../../../dom-utils").doc_ready,s=require("../../../utils"),i=s.nested,u=s.waitFor,e=s.Conds,n=require("../wa-utils").dl_eventMsgApplies,t=require("../../client/exit-intent").ExitIntent,exports.m=function(r){function s(){return s.__super__.constructor.apply(this,arguments)}var a,l;return c(s,r),s.prototype.active=function(e,t){return!(e.qa&&!t.qa())},s.prototype.process=function(e,t){return o(function(){var r,n,o,i;for(r=0,n=(o=e.trigs).length;n>r;r++)i=o[r],a(e,t,i)})},a=function(r,o,s){var c,a,v,d,g,f,m,h,b,p,w,_;switch(h="view-state '"+r.vstate+"'",v=function(){var t;return!((t=s.ev_conds)&&t.length>0)||e.evalConds(t,o,"Event Conditions for view-state '"+r.vstate+"'","x")},p=function(){var e;return e=function(){var e;if(v())return o.log("Triggering view-state '"+r.vstate+"'","x"),e=new CustomEvent("ConductricsStateChange",{detail:r.vstate}),window.dispatchEvent(e)},s.ms>0?(o.log("Will trigger "+h+" in "+s.ms+" ms (trigger mode '"+s.mode+"')","x"),setTimeout(e,s.ms)):e()},s.mode){case"timeout":return p();case"scroll":if(!IntersectionObserver)return;return l(s.sel,function(e){return o.log("Will trigger "+h+" on '"+s.sel+"' scroll (trigger mode '"+s.mode+"')","x"),new IntersectionObserver(function(e){return e.some(function(e){return e.isIntersecting})?p():void 0},{threshold:.5}).observe(e)});case"visible":case"not-visible":if(!IntersectionObserver)return;return l(s.sel,function(e){var t,r,n,i;i="visible"===s.mode,r=function(e){return e.some(function(e){return e.isIntersecting===i})?p():void 0};try{n=document.querySelector(s.container)}catch(e){}return n?(t=new IntersectionObserver(r,{root:n,threshold:1}),o.log("Will trigger "+h+" on '"+s.sel+"' visibility (trigger mode '"+s.mode+"')","x"),t.observe(e)):void 0});case"class-has":case"class-not":if(!MutationObserver)return;return o.log("Prerequisite for "+h+" (trigger mode '"+s.mode+"'})","x"),l(s.sel,function(e){var t;return o.log("Will trigger "+h+" on CSS class changes (trigger mode '"+s.mode+"' for '"+s.css_class+"')","x"),t=function(){var t;return t=e.classList.contains(s.css_class),"class-has"===s.mode===t},new MutationObserver(function(e,r){return t()?p():void 0}).observe(e,{attributes:!0,attributeFilter:["class"],childList:!1,subtree:!1})});case"present":case"not-present":if(!MutationObserver)return;try{c=document.querySelector(s.container)}catch(e){}if(!c)return;return o.log("Will trigger "+h+" upon DOM changes (trigger mode '"+s.mode+"')","x"),b=function(){var e,t,r,n;r=c.matches(s.sel)?1:0;try{e=c.querySelectorAll(s.sel).length}catch(t){e=0}return t=r+e>=(null!=(n=s.num)?n:1),"present"===s.mode===t},new MutationObserver(function(e,t){return b()?p():void 0}).observe(c,{childList:!0,subtree:!0});case"js-ev":return o.log("Will trigger "+h+" upon JS event '"+s.js_ev+"'","x"),u(300,100,function(){return i(s.js_obj,window)},function(e){try{return e[s.js_fn](s.js_ev,function(){return o.log("Detected '"+s.js_ev+"' event for "+h,"x"),p()})}catch(e){}});case"dl-ev":if((a=o.r._dl).enabled())return o.log("Will trigger "+h+" on Data Layer event '"+s.dl_ev+"'","x"),a.sub(function(e){var t;return e=null!=(t=e.eventInfo)?t:e,n(s.dl_ev,s.dl_crit,e,a)?p():void 0});break;case"exit-intent":return o.log("Will trigger "+h+" on 'exit-intent'","x"),t.waitForIntent(h,Object.assign({},s,{cb:function(){return o.log("Detected 'exit-intent' for "+h,"x"),p()}}));case"ui-inact":for(_="mousedown mousemove touchstart scroll keydown".split(" "),o.log("Will trigger "+h+" after "+s.ms+" ms of inaction","x"),f=function(e){return o.data["v.uits"]=Date.now()},m={passive:!0},u(1e3,7200,function(){var e;return e=o.data["v.uits"],Date.now()-e>s.ms},function(){var e,t,r,n;for(o.log("No UI action detected for "+s.ms,"x"),p(),r=[],e=0,t=_.length;t>e;e++)n=_[e],r.push(document.removeEventListener(n,f,m));return r}),d=0,g=_.length;g>d;d++)w=_[d],document.addEventListener(w,f,m)}},l=function(e,t){var r,n;return(r=(n=function(){try{return document.querySelector(e)}catch(e){}})())?t(r):MutationObserver?new MutationObserver(function(e,o){return(r=n())?(o.disconnect(),t(r)):void 0}).observe(document,{childList:!0,subtree:!0}):void 0},s}(r)}).call(this);
},{"../../../dom-utils":4,"../../../utils":22,"../../client/exit-intent":12,"../diagrams":16,"../wa-utils":18}],"./modules/wa-await":[function(require,module,exports){
(function(){var e,r,t,o={}.hasOwnProperty;e=(r=require("../diagrams")).M,r.Reapplyer,require("../../../dom-utils").await_selector,t=require("sentinel-js"),exports.m=function(e){function r(){return r.__super__.constructor.apply(this,arguments)}return function(e,r){function t(){this.constructor=e}for(var n in r)o.call(r,n)&&(e[n]=r[n]);t.prototype=r.prototype,e.prototype=new t,e.__super__=r.prototype}(r,e),r.prototype.process=function(e,r,o){var n,u,s,c,i,l,p,a;if(!(e.selectors.length>0))return!1;for(n=0,a=(new Date).getTime(),l=function(){var t;return e.resumed?void 0:(t=(new Date).getTime(),r.log("Selector found ("+p+") after "+(t-a)+" ms","s"),o.resume(e,r),e.resumed=!0)},u=0,s=(i=e.selectors).length;s>u;u++){p=i[u];try{c=null!==document.querySelector(p)}catch(e){}if(r.log("Selector matches? "+(null!=c)+" ("+p+")","x"),c&&!0===e.one)return!1;c||(t.on(p,l),n++)}return n>0},r}(e)}).call(this);
},{"../../../dom-utils":4,"../diagrams":16,"sentinel-js":5}],"./modules/wa-decision":[function(require,module,exports){
(function(){var e,t,r=function(e,t){function r(){this.constructor=e}for(var i in t)n.call(t,i)&&(e[i]=t[i]);return r.prototype=t.prototype,e.prototype=new r,e.__super__=t.prototype,e},n={}.hasOwnProperty,i=[].indexOf||function(e){for(var t=0,r=this.length;r>t;t++)if(t in this&&this[t]===e)return t;return-1};e=require("../diagrams").M,t=require("../../../dom-utils").await_selector,exports.m=function(e){function n(){return n.__super__.constructor.apply(this,arguments)}var o,s;return r(n,e),n.prototype.active=function(e,t){var r,n,o;return t.qa()&&t.selsOnly()&&!t.selPre(e.agent)?(t.log("Skipping agent '"+e.agent+"' during preview","q"),!1):!(e.qa&&(n=t.qa(),t.log("QA-only agent '"+e.agent+"' (QA visitor? "+n+")","q"),!n))&&(o=t.vstate(),r=i.call(e.vstates,o)>=0,t.log("Agent '"+e.agent+"' used at view-state '"+t.vstate()+"'? "+r,"a"),r)},n.prototype.process=function(e,t,r){return!(!e.await||!o(e,t,r))||(e.js_id&&!s(e,t)?"skip":void 0)},s=function(e,t){var r,n;if(!e.js_id)return!0;try{n=(0,_wa_cjs[e.js_id])()}catch(n){return r=n,t.log("Eligibility JS error for Agent '"+e.agent+"': "+r,"e"),!1}return!0===n?(t.log("Eligibility JS for Agent '"+e.agent+"' returned true (eligible)","s"),!0):(t.log("Eligibility JS for Agent '"+e.agent+"' returned "+n+" (not eligible)","s"),!1)},o=function(e,r,n){var i;return document.querySelector(e.selector)?(r.log("Eligibility selector already present ("+e.selector+")","s"),!1):(i=(new Date).getTime(),r.log("Eligibility selector not yet present ("+e.selector+")","x"),t(e.selector,function(){var t;return r.pvd[e.agent+"_res"]?void 0:(t=(new Date).getTime()-i,r.log("Selector found ("+e.selector+") after "+t+" ms","s"),e.js_id&&!s(e,r)?"skip":(n.resume(e,r),r.pvd[e.agent+"_res"]=!0))}),!0)},n}(e)}).call(this);
},{"../../../dom-utils":4,"../diagrams":16}],"./modules/wa-entry":[function(require,module,exports){
(function(){var r,t=function(r,t){function n(){this.constructor=r}for(var e in t)o.call(t,e)&&(r[e]=t[e]);return n.prototype=t.prototype,r.prototype=new n,r.__super__=t.prototype,r},o={}.hasOwnProperty;r=require("../diagrams").M,exports.m=function(r){function o(){return o.__super__.constructor.apply(this,arguments)}return t(o,r),o.prototype.active=function(r,t){var o;return!r.mdn_only||"m"===(o=t.mdn())||(t.log("Stopping because 'modern' browser features not available ("+o+")","cf"),!1)},o}(r)}).call(this);
},{"../diagrams":16}],"./modules/wa-goal":[function(require,module,exports){
(function(){var e,t,n,r,o,i,l,a,u=function(e,t){function n(){this.constructor=e}for(var r in t)c.call(t,r)&&(e[r]=t[r]);return n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype,e},c={}.hasOwnProperty,s=[].indexOf||function(e){for(var t=0,n=this.length;n>t;t++)if(t in this&&this[t]===e)return t;return-1};n=require("../diagrams").M,t=require("../../client/ga").GA,l=require("../../../utils"),i=l.nested,a=l.waitFor,e=l.Conds,o=require("../../../dom-utils").doc_ready,r=require("../wa-utils").dl_eventMsgApplies,exports.m=function(n){function l(){return l.__super__.constructor.apply(this,arguments)}var c,v,g;return u(l,n),l.prototype.active=function(e,t){return!(e.qa&&!t.qa())&&!e._done},l.prototype.process=function(n,l,u){var v,d,f,p,_,h,w;switch(v=function(){var t,r;return!((t=null!=(r=n.ev_conds)?r:[]).length>0)||e.evalConds(t,l,"wa-goal ("+n.goal+" "+n.event+")","g")},p=function(e,t){if(v()){if(l.log(e+" triggered goal "+n.goal,"g"),t)try{n.items[0].items[0].to=t}catch(e){return void e}return u.resume(n,l)}},!1){case"load"!==n.event:o(function(){return p("Page load")});break;case"ga-ev"!==n.event:this.conf["x-ga:wgi"]&&t.init(this.conf),g(document,"ga.conductrics",function(e,r){return"event"===(null!=(r=null!=r?r:e.detail)?r.get("hitType"):void 0)&&t.eventApplies(n,r)?p("GA Event"):void 0});break;case"dl-ev"!==n.event:(d=l.r._dl).enabled()&&(l.log("Goal "+n.goal+" will watch for DL event '"+n.dl_eventName+"'","g"),d.sub(function(e){return r(n.dl_eventName,n.dl_crit,e,d)?p("DL event '"+n.dl_eventName+"'"):void 0}));break;case"js-ev"!==n.event:l.log("Goal "+n.goal+" will watch for JS event '"+n.js_ev+"'","g"),a(300,100,function(){return i(n.js_obj,window)},function(e){try{return e[n.js_fn](n.js_ev,function(){return p("JS Event '"+n.js_ev+"'")})}catch(e){}});break;case"vs"!==n.event:window.addEventListener("ConductricsStateChanged",function(e){var t;return t=e.detail,s.call(n.vs,t)>=0?p("View-state '"+e.detail+"'"):void 0});break;case!(null!=n.eventSelector&&null!=n.event):h=this,f=null!=(_=n.events)?_:n.event,w=void 0,l.log("Goal "+n.goal+" will watch for DOM event '"+f+"' on '"+n.eventSelector+"'","g"),c(document,f,n.eventSelector,n.sel_i,n.sel_n,n.evuc,function(e){var t,r,o,i;if(f.indexOf(" ")){if(o=(new Date).getTime(),w>=o)return void l.log(e.type+" too soon for goal "+n.goal,"g");w=o+100}return l.log(e.type+" from '"+n.eventSelector+"' triggered goal "+n.goal,"g"),n.gpa?(r=h.conf["wa:gpa-att"],(t=h.closest(e.target,"["+r+"]"))?p("DOM event '"+e.type+"'",null!=(i=t.getAttribute(r))?i.split(" "):void 0):void 0):p("DOM event '"+e.type+"'")});break;default:l.log("Unknown trigger for "+n.goal,"g")}return n._done=!0,!0},g=function(e,t,n){return e.addEventListener(t,n)},c=function(e,t,n,r,o,i,l){var a,u,c,s,g;for(null==i&&(i=!1),g=[],u=0,c=(s=t.split(" ")).length;c>u;u++)a=s[u],g.push(e.addEventListener(a,function(t){return v(e,n,t.target,r,o)?(i||t.stopPropagation(),l(t)):void 0},i));return g},v=function(e,t,n,r,o){var i,l,a,u,c;null==r&&(r=0),null==o&&(o=9999);try{for(c=e.querySelectorAll(t),l=a=0,u=c.length;u>a;l=++a)if(i=c[l],l>=r&&r+o>l&&i.contains(n))return!0}catch(e){}return!1},function(e,t,n,r){var o,i;i=0,(o=function(){var l;return i++,(l=n())?r(l):i>=t?void 0:setTimeout(o,e)})()},l}(n)}).call(this);
},{"../../../dom-utils":4,"../../../utils":22,"../../client/ga":13,"../diagrams":16,"../wa-utils":18}],"./modules/wa-macro":[function(require,module,exports){
(function(){var r,t,o,n={}.hasOwnProperty;r=(o=require("../diagrams")).M,t=o.Reapplyer,exports.m=function(r){function o(){return o.__super__.constructor.apply(this,arguments)}return function(r,t){function o(){this.constructor=r}for(var e in t)n.call(t,e)&&(r[e]=t[e]);o.prototype=t.prototype,r.prototype=new o,r.__super__=t.prototype}(o,r),o.prototype.process=function(r,o){var n,e,a,c,p;n={agent:r.agent,log:function(r){return o.log(r)}},(c=o.selGet(r.agent))&&Object.assign(n,{sel:{c:c.c,p:c.p}}),(a=function(){var t;try{return o.log("Macro '"+r.macro+"' ("+r.agent+")","x"),_wa_js[r.macro](r.fields,n)}catch(n){return t=n,o.log("Error for macro '"+r.macro+"': "+t,"e")}})(),(p=null!=(e=n.watch)?e.targets:void 0)&&new t(a,p).start()},o}(r)}).call(this);
},{"../diagrams":16}],"./modules/wa-pre-un":[function(require,module,exports){
(function(){var t,r=function(t,r){function n(){this.constructor=t}for(var o in r)e.call(r,o)&&(t[o]=r[o]);return n.prototype=r.prototype,t.prototype=new n,t.__super__=r.prototype,t},e={}.hasOwnProperty;t=require("../diagrams").M,exports.m=function(t){function e(){return e.__super__.constructor.apply(this,arguments)}return r(e,t),e.prototype.active=function(t,r){var e;switch(e=r.selHas(t.agent),!1){case!t.exists:return e;case!!e:return!0;case!t.qa:return!1===r.qa();default:return!1}},e.prototype.process=function(t,r){var e,n,o,u,a;for(a="style.__c-pre-"+t.agent,n=0,o=(u=document.querySelectorAll(a)).length;o>n;n++)e=u[n],r.log("un-pre-hiding for "+t.agent,"x"),e.disabled=!0},e}(t)}).call(this);
},{"../diagrams":16}],"./modules/wa-reward":[function(require,module,exports){
(function(){var e,t,r=function(e,t){function r(){this.constructor=e}for(var o in t)n.call(t,o)&&(e[o]=t[o]);return r.prototype=t.prototype,e.prototype=new r,e.__super__=t.prototype,e},n={}.hasOwnProperty;e=require("../diagrams").M,exports.m=function(e){function n(){return n.__super__.constructor.apply(this,arguments)}return r(n,e),n.prototype.process=function(e,t){var r,n,o,u,l,c;for(c=this.val(e,t),r=0,n=(u=e.items).length;n>r;r++)"reward"===(o=u[r]).module&&(l=o);null!=l?(l.value=c,e.forex&&(l.vc=this.cur(e,t))):e.items=[]},n.prototype.val=function(e,r){var n,o,u,l,c;return u=null!=(o=e.valueSelector)?o:"",l=function(){var o,l;switch(e.valueSelectorType){case"dl":if((n=r.r._dl).enabled())return c=function(e,r){var o,u;return u=n.get(r.trim())+"",e+(null!=(o=t(u))?o:0)},u.split("+").reduce(c,0);break;case"dom":return null!=(o=document.querySelector(u))?o.textContent:void 0;case"meta":return null!=(l=document.querySelector("meta[name='"+u+"']"))?l.content:void 0;default:return""}}(),t(l)},n.prototype.cur=function(e,t){var r,n,o,u;return o=null!=(n=e.currSelector)?n:"",null!=(u=function(){var n,u;switch(e.currSelectorType){case"dl":if((r=t.r._dl).enabled())return r.get(o);break;case"dom":return null!=(n=document.querySelector(o))?n.textContent:void 0;case"meta":return null!=(u=document.querySelector("meta[name='"+o+"']"))?u.content:void 0}}())?(""+u).trim().toUpperCase():void 0},n}(e),t=function(e){var t;return"number"==typeof e?e:(null!=e?e.length:void 0)>0?(t=parseFloat(parseFloat(e.replace(/[^0-9. ]/g," ")).toFixed(2)),isFinite(t)?t:null):null}}).call(this);
},{"../diagrams":16}],"./modules/wa-script":[function(require,module,exports){
(function(){var t,r,n,e,o,i=function(t,r){function n(){this.constructor=t}for(var e in r)c.call(r,e)&&(t[e]=r[e]);return n.prototype=r.prototype,t.prototype=new n,t.__super__=r.prototype,t},c={}.hasOwnProperty,u=function(t,r){return function(){return t.apply(r,arguments)}},s=[].indexOf||function(t){for(var r=0,n=this.length;n>r;r++)if(r in this&&this[r]===t)return r;return-1};t=(o=require("../diagrams")).M,r=o.Reapplyer,n=require("./wa-script-reg").ScriptReg,exports.m=function(t){function o(){return o.__super__.constructor.apply(this,arguments)}var c;return i(o,t),o.prototype.process=function(t,r,e){var o;return t.ext?(r.log("Loading "+t.id,"s"),(null!=(o=window.Conductrics).reg?o.reg:o.reg=new n).load(t.id,function(n){return r.log("Loaded "+t.id,"s"),c(t,r,e)})):c(t,r,e),t.confirm},c=function(t,n,o){var i,c,u,s,l,f,a,p,d;a=!0===t.confirm,c=t.agent,i=function(t,r){return n.log("Custom script "+t+" for agent '"+c+"'",null!=r?r:"s")},u=new e(n.tr(),t.types),Object.assign(u,{agent:t.agent,sel:function(){var r;return(r=n.data["v.sels"][t.agent])?{c:r.c,p:r.p}:null}});try{l=_wa_cjs[t.id],(s=function(){var r,e;return i(""+(null!=(r=t.id)?r:"")),l(u),a?(e=function(){var r;return!1===(r=u.confirmed())?(i("called confirm(false)"),n.keep()):r?t.resumed?i("re-confirmed selection"):(i("confirmed selection"),o.resume(t,n),t.resumed=!0):i("declined to confirm")},null!=u._ok?e():u.on_confirm=e):void 0})()}catch(r){i("error: "+r,"e"),t.items&&(t.items=t.items.filter(function(t){return"decision"!==t.module}))}try{t.watch&&(p=null!=(f=t.watch_sel)?f:t.selector,(d=document.querySelectorAll(p)).length>0&&new r(s,d,null,t["ra-max"]).start())}catch(t){}},function(t,r){var e;return(null!=(e=window.Conductrics).reg?e.reg:e.reg=new n).load(t.id,r)},o}(t),e=function(){function t(t,r){this.tr=t,this.ok=r,this.confirm=u(this.confirm,this)}return t.prototype.trait=function(t){var r,n,e,o,i,c;if(null==t&&(t=""),s.call(t,"/")<0&&(t="cust/"+t),s.call(this.ok,t)<0)return"";for(r=0,n=(e=this.tr).length;n>r;r++)if(c=(o=e[r].split(":"))[0],i=o[1],c===t)return i;return""},t.prototype.confirm=function(t){return this._ok=t,"function"==typeof this.on_confirm?this.on_confirm(t):void 0},t.prototype.confirmed=function(){return this._ok},t}()}).call(this);
},{"../diagrams":16,"./wa-script-reg":17}],"./modules/wa-start":[function(require,module,exports){
arguments[4]["./modules/condition"][0].apply(exports,arguments)
},{"../diagrams":16,"dup":"./modules/condition"}],"./modules/wa-survey-show":[function(require,module,exports){
(function(){var e,t,n,r,i,s,u,o,a,l={}.hasOwnProperty,d=[].indexOf||function(e){for(var t=0,n=this.length;n>t;t++)if(t in this&&this[t]===e)return t;return-1};t=require("../diagrams").M,o=require("../../../utils"),e=o.Conds,i=o.Strings,s=o.arrayFrom,u=require("../../../dom-utils").doc_ready,r=require("./wa-script-reg").ScriptReg;try{a=require("tinybind")}catch(e){}try{n=require("../../../lib/micromodal.min.js")}catch(e){}exports.m=function(t){function o(){return o.__super__.constructor.apply(this,arguments)}return function(e,t){function n(){this.constructor=e}for(var r in t)l.call(t,r)&&(e[r]=t[r]);n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(o,t),o.prototype.process=function(t,o,l){var c,f,g,v,p,b,h,m,y;return y=t.survey,v=(h=this).isId,c=h.closest,f=h.getStyleNonce,o.log("Survey: Show '"+y.code+"' via agent '"+t.agent+"' (CSP)","x"),!(m=this.getNodes(t).find(function(e){return"wa-survey-submit"===e.module}))||(g=function(){return document.getElementById(t.dom_id)},b=function(e,t){var n,i,s;return e?(s=null!=(n=window.Conductrics).reg?n.reg:n.reg=new r,i=y.code+"/"+e,o.log("Loading language '"+e+"' for survey '"+y.code+"'","s"),s.load_lang(i,function(n){return o.log("Loaded '"+e+"' for survey '"+y.code+"'","s"),t(n)})):(o.log("No language for survey '"+y.code+"'","s"),t())},p=function(e){var t,n,r;if(null==e&&(e=[]),!e.length)return null;r=o.data["v.lang"];try{n=new Intl.Locale(r)}catch(e){}return(null!=n?n.language:void 0)?(t=[n.language+"-"+n.region,""+n.language,n.language+"-"+n.language],e=e.map(function(e){return e.toLowerCase()}),t.find(function(t){return e.includes(t.toLowerCase())})):null}(y.langs),u(function(){return b(p,function(r){var u,b,h,_,S;return h={agent:t.agent,survey:y.code,values:t.values,focus:{},status:"init",step:0,visible:{},stepNextVisible:!1,stepNextEnabled:!1,stepPrevVisible:!1,stepPrevEnabled:!1,buttonsVisible:!0,submitVisible:!1,submitEnabled:!1,farewellVisible:!1,lang_code:p,init:function(){this._stepSet(0),0===this.visible.length&&this.stepNext(),Object.assign(t.values,this._getValuesFromPage()),this.randomizeAnswers(),o.qs=this,this.status="show",this._onChange(),this.applyLang(r),(t.modal||t.focus_first)&&this.focusFirstInput()},applyLang:function(e){return null==e&&(e={}),Object.keys(e).forEach(function(t){var n;return(n=document.querySelector("[data-lang-text='"+t+"']"))&&(n.innerText=e[t]),(n=document.querySelector("[data-lang-label='"+t+"']"))?n.setAttribute("aria-label",e[t]):void 0})},randomizeAnswers:function(){document.querySelectorAll(".c-q-has-random-items[data-rand-from][data-rand-thru]").forEach(function(e){var t,n,r;return n=parseInt(e.getAttribute("data-rand-from")),r=parseInt(e.getAttribute("data-rand-thru")),(t=s(e.querySelectorAll(".c-q-field-option")).map(function(e,t){return{el:e,order:function(){switch(!1){case!(t>=n&&r>=t):return Math.floor(1e3*Math.random());case!(t>=r):return 9999;default:return-1}}()}})).sort(function(e,t){return e.order-t.order}),t.forEach(function(t){return e.appendChild(t.el)})})},stepNext:function(){return h.stepNextEnabled?(h._stepSet(h._getNextStepIndex()),h.focusFirstInput()):void 0},stepPrev:function(){return h.stepPrevEnabled?(h._stepSet(h._getPrevStepIndex()),h.focusFirstInput()):void 0},_stepSet:function(e,n){e>=0&&e<t.steps.length&&(this.step=e,this._onChange(),o.log("Survey: Now at step "+(e+1)+" of "+t.steps.length,"x"))},_getValuesFromPage:function(){var e,n,r,s,u,a;for(n in u={},s=t.fields)(e=s[n]).readFrom&&(r=i.interpolate(e.readFrom,o.data),null!=(a=function(){switch(typeof r){case"string":return r.slice(0,300);case"number":if(isFinite(val)&&!isNaN(val))return r;break;case"object":if(Array.isArray(r))return r.join(",").slice(0,300);break;default:return null}}())&&(o.log("Survey: found value '"+a+"' for survey response field '"+n+"'","x"),this.values[n]=a));return u},_getNextStepIndex:function(){return t.steps.findIndex((e=this,function(t,n){return n>e.step?e._fieldsForStep(n,!0).length>0:void 0}));var e},_getPrevStepIndex:function(){return t.steps.findLastIndex((e=this,function(t,n){return n<e.step?e._fieldsForStep(n,!0).length>0:void 0}));var e},onFieldValue:function(e){var t;return t=e.target.getAttribute("data-field"),h._onFieldValueChanged(t)},_onFieldValueChanged:function(e){return o.log("Survey: Question '"+e+"' now has value: "+h.values[e]+" ("+typeof h.values[e]+")","x"),h._onChange(),d.call(t.auto_submit,e)>=0&&h.isValid()?h.surveySubmit():void 0},onFieldFocus:function(e){var t;return t=e.target.getAttribute("data-field"),h.focus[t]=!0,!0},onFieldBlur:function(e){var t;return t=e.target.getAttribute("data-field"),h.focus[t]=!1,!0},_onChange:function(){var n,r,i,s,u,a,l;return l=h.step,s=t.steps.length>1,i=-1===h._getNextStepIndex(),u=h.isStepValid(l),n=h._fieldsForStep(l,!0),r=n.filter(function(t){var n;return!((n=y.fields.find(function(e){return e.code===t}))&&n.conds&&n.conds.length)||e.evalConds(n.conds,o,"Survey")}),Object.keys(h.visible).forEach(function(e){return d.call(r,e)<0?h.visible[e]=!1:void 0}),r.forEach(function(e){return h.visible[e]=!0}),h.submitVisible=i,h.submitEnabled=h.submitVisible&&u&&h.isValid(),h.stepNextVisible=s&&!h.submitVisible&&!i,h.stepNextEnabled=h.stepNextVisible&&u,a=h._getPrevStepIndex(),h.stepPrevVisible=s&&h.step>0&&a>-1&&a<h.step,h.stepPrevEnabled=h.stepPrevVisible},isValid:function(){return!0},isStepValid:function(e){var n,r,i,s,u;for(i=0,s=(r=this._fieldsForStep(e,!0)).length;s>i;i++)if(n=r[i],t.fields[n].required)if(u=this.values[n],Array.isArray(u)){if(!(u.length>0))return!1}else if(null==u||""===u)return!1;return!0},surveySubmit:function(){return h.isValid()?(o.log("Visitor submitted survey","x"),h.status="submit",h._submit(),y.options.farewell?(h.visible=[],h.buttonsVisible=!1,h.farewellVisible=!0):h.hide()):void o.log("Survey input failed validation","x")},surveyClose:function(){o.log("Visitor closed survey","x"),y.options.send_on_close&&"show"===h.status?(h.status="close",h._submit(),h.hide()):h.hide()},_submit:function(){m.model=this,l.resume(t,o)},getValues:function(){var e,n,r,i,s,u,o,a,l,d;for(l=function(){switch(this.status){case"close":return this.step-1;case"submit":return this.step;default:return-1}}.call(this),d={},a=n=0,i=(u=t.steps).length;i>n;a=++n)if(u[a],l>=a)for(r=0,s=(o=this._fieldsForStep(a,!0)).length;s>r;r++)d[e=o[r]]=this.getFieldValue(e);return d},getFieldValue:function(e){var n,r,i;return n=null!=(i=t.fields[e])?i:{},r=this.values[e],n.numeric&&"string"==typeof r&&!isNaN(+r)&&(r=+r),r},answer:function(e){var t,n,r,i;e&&2===e.eventPhase&&(n=c(e.target,"[data-c-q-answer]"))&&(r=(i=n.getAttribute("data-c-q-answer").split(" "))[0],t=i[1],v(r)&&v(t)&&(h.values[r]=t,h._onFieldValueChanged(r)))},hide:function(){var e;return t.modal?n.close(t.dom_id):null!=(e=document.getElementById(t.dom_id))&&e.classList.add("c-q-submitted"),setTimeout(function(){var e;return null!=(e=document.getElementById(t.dom_id))&&e.remove(),o.qs===this&&(o.qs=null),document.querySelectorAll("style.c-q-theme-style[data-survey='"+y.code+"']").forEach(function(e){return e.remove()})},1500)},_fieldsForStep:function(n,r){var i,s,u;return i=null!=(s=null!=(u=t.steps[n])?u.fields:void 0)?s:[],!0===r&&(i=i.filter(function(t){var n;return!((n=y.fields.find(function(e){return e.code===t}))&&n.conds&&n.conds.length)||e.evalConds(n.conds,o,"Survey")})),i},_getFocusableNodes:function(e){var t,n,r,i,u;return(u=g())?(t=h._fieldsForStep(h.step,!0),r=":not([disabled]):not([tabindex^='-'])",i=t.map(function(e){return[".c-q-field[data-field='"+e+"'] input"+r,".c-q-field[data-field='"+e+"'] select"+r,".c-q-field[data-field='"+e+"'] textarea"+r].join(",")}).concat("button"),n=s(u.querySelectorAll(i)),e&&(n=n.filter(function(e){return null!==e.offsetParent||parseInt(e.getAttribute("tabindex"))>=0})),n):[]},focusFirstInput:function(){var e,t;t=h._getFocusableNodes(!0),(e=t[0])&&setTimeout(function(){return e.focus()},250)}},(u=document.querySelector(t.selector))?(b=""+t.markup,b=(_=f())?b.replace(/data-c-q-style-nonce/g," nonce='"+_+"'"):b.replace(/data-c-q-style-nonce/g,""),u.insertAdjacentHTML(t.adjacency,b),a.formatters.number={read:function(e){return(+e).toFixed(0)},publish:function(e){return parseInt(e)}},a.binders.checkedvals={bind:function(e){return this.callback=function(){var t,n,r,i;return n=e.getAttribute("data-field"),i=h.values[n],Array.isArray(i)?(t=e.getAttribute("value"),e.checked?i.push(t):(r=i.indexOf(t))?i.splice(r,1):void 0):void 0},e.addEventListener("click",this.callback)},unbind:function(e){return e.removeEventListener(e,this.callback)}},a.binders.tabindex=function(e,t){var n;return n=!0===t||""===t?0:-1,e.setAttribute("tabindex",n)},a.binders.tabindexval=function(e,t){var n,r,i;return r=e.getAttribute("data-option-value"),n=e.getAttribute("data-field"),i=r===t&&h.visible[n]?0:-1,e.setAttribute("tabindex",i)},a.binders.ariachecked=function(e,t){var n;return n=e.getAttribute("data-option-value"),e.setAttribute("aria-checked",n===t)},a.binders.classunfilled=function(e,t){return t?e.classList.add("c-q-radio-group-unfilled"):e.classList.remove("c-q-radio-group-unfilled")},g=function(){return document.getElementById(t.dom_id)},h.init(),S=g(),a.bind(S,h),document.querySelectorAll("style.c-q-theme-style[data-survey='"+y.code+"']").forEach(function(e){return e.setAttribute("media","all")}),t.modal?n.show(t.dom_id,{awaitOpenAnimation:!0,awaitCloseAnimation:!0,getFocusableNodes:function(){return h._getFocusableNodes()}}):void 0):(o.log("No container for survey '"+y.code+"' using selector '"+t.selector+"'","x"),!0)})}),!0)},o}(t)}).call(this);
},{"../../../dom-utils":4,"../../../lib/micromodal.min.js":"/opt/mpath/api/bin/lib/micromodal.min.js","../../../utils":22,"../diagrams":16,"./wa-script-reg":17,"tinybind":"tinybind"}],"./modules/wa-survey-submit":[function(require,module,exports){
(function(){var e,r,t,n,s=function(e,r){function t(){this.constructor=e}for(var n in r)a.call(r,n)&&(e[n]=r[n]);return t.prototype=r.prototype,e.prototype=new t,e.__super__=r.prototype,e},a={}.hasOwnProperty;r=require("../diagrams").M,e=require("../../../utils").Dates,exports.m=function(r){function a(){return a.__super__.constructor.apply(this,arguments)}return s(a,r),a.prototype.process=function(r,s,a){var o,i,conf,u,l,c,p,f,d,h,v,y,m,g,_,w,S,b,A,P;if(h=r.model,conf=this.conf,null!=h)if(h.isValid())if(g=s.selGet(h.agent))if(b=h.getValues(),Object.keys(b).length>0){for(c in _={t:"qs",rid:"qs-"+e.stamp()+"-"+n(10),s:r.survey_code,v:b,a:g.a,c:g.c,fs:g.fs,p:g.p,dts:g.dts,aa:{},ev:"close"===h.status?"x":"s",lang:h.lang_code},y=r.value_trait_map)w=y[c],(S=h.values[c])&&(Array.isArray(S)?S.forEach(function(e){return s.tAdd(w+":"+e,"surv")}):s.tAdd(w+":"+S,"surv"));for(p=0,d=(m=r.assoc).length;d>p;p++)o=m[p],(i=s.selGet(o))&&(_.aa[o]={c:i.c,p:i.p});r.keepUrl&&(_.url=function(){try{return window.location.href.split("?")[0]}catch(e){}}(),r.keepUrlParams&&"undefined"!=typeof URLSearchParams&&null!==URLSearchParams&&(v=new URLSearchParams(window.location.search),P=new URLSearchParams,r.keepUrlParams.filter(function(e){return v.has(e)}).forEach(function(e){return P.set(e,v.get(e))}),P.size>0&&(_.url+="?"+P))),s.log("Submitting survey response item: "+JSON.stringify(_),"x"),s.done(_),h.status="done",r.submit_vstate&&(A=new CustomEvent("ConductricsStateChange",{detail:r.submit_vstate}),window.dispatchEvent(A)),!0===conf["dl:sr"]&&(l=t(r,_),(u=s.r._dl).enabled()&&(s.log("Pushing survey response item into Analytics Data Layer"),f=conf["dl:key-sr"],u.push(f,l)),conf["dl:cdl"]&&(s.log("Pushing survey response item into Simple Data Layer"),s.cdl_push(l)))}else s.log("Survey response empty, abort","x");else s.log("Survey selection missing, abort","x");else s.log("Survey failed validation, abort","x");else s.log("Survey data model missing, abort","x")},a}(r),t=function(e,r){var t,n,s,a,o,i,u;for(a in i=e.model.agent,t=[],s=function(r){var t;return null!=(t=e.q_names[r])?t:r},n=function(r,t){var n;return null!=(n=e.q_vals[r+":"+t])?n:t},o=r.v)u=o[a],Array.isArray(u)?u.forEach(function(e){return t.push({Q:s(a),A:n(a,e)})}):t.push({Q:s(a),A:n(a,u)});return{item:{t:"qs",rid:r.rid,survey:i,survey_name:s("."),answers:t,lang:r.lang},ep:"wax"}},n=function(e,r){var t;return null==r&&(r="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"),function(){t=[];for(var r=0;e>=0?e>r:r>e;e>=0?r++:r--)t.push(r);return t}.apply(this).map(function(){return r[Math.floor(Math.random()*r.length)]}).join("")}}).call(this);
},{"../../../utils":22,"../diagrams":16}],"./modules/wa-survey":[function(require,module,exports){
(function(){var e,r=function(e,r){function t(){this.constructor=e}for(var n in r)o.call(r,n)&&(e[n]=r[n]);return t.prototype=r.prototype,e.prototype=new t,e.__super__=r.prototype,e},o={}.hasOwnProperty;e=require("../diagrams").M,exports.m=function(e){function o(){return o.__super__.constructor.apply(this,arguments)}return r(o,e),o.prototype.active=function(e,r){var o;return r.dnt()?(r.log("Survey: Not showing survey '"+e.survey_code+"' due to Do-Not-Track (DNT) preference","e"),!1):null!=document.querySelector(".c-q-survey")?(r.log("Survey: Not showing '"+e.survey_code+"' because there is already a survey present in the DOM","x"),!1):(o=r.rwdCnt(e.sel_g,e.agent))>=e.countMax?r.qa()?(r.log("Showing survey for QA Visitor, even though already offered "+o+"x for agent '"+e.agent+"'","q"),!0):(r.log("Survey already offered "+o+"x for agent '"+e.agent+"'","x"),!1):(r.log("Prior-offer count for Survey #agent '"+e.agent+"': "+o,"x"),!0)},o}(e)}).call(this);
},{"../diagrams":16}],"./plugins/cust":[function(require,module,exports){
(function(){var t,n=function(t,n){function r(){this.constructor=t}for(var e in n)o.call(n,e)&&(t[e]=n[e]);return r.prototype=n.prototype,t.prototype=new r,t.__super__=n.prototype,t},o={}.hasOwnProperty;t=require("../targeting"),exports.p=function(t){function o(conf){this.conf=conf}return n(o,t),o.ns="cust",o.modes=["b"],o.sync=!0,o.prototype.resolve=function(t,n,o,r){return r(!1,null)},o}(t.Plugin)}).call(this);
},{"../targeting":21}],"./plugins/dt":[function(require,module,exports){
(function(){var t,r,o=function(t,r){function o(){this.constructor=t}for(var e in r)n.call(r,e)&&(t[e]=r[e]);return o.prototype=r.prototype,t.prototype=new o,t.__super__=r.prototype,t},n={}.hasOwnProperty;t=require("../targeting"),r=require("../dt-resolve")._resolve,exports.p=function(t){function n(conf){this.conf=conf}return o(n,t),n.ns="dt",n.modes=["s","b"],n.sync=!0,n.prototype.ttl=function(t){return 60},n.prototype.resolve=function(t,o,n,e){return e(!1,r(o,t.ts(),t.data["v.tzo"]))},n}(t.Plugin)}).call(this);
},{"../dt-resolve":19,"../targeting":21}],"./plugins/geo":[function(require,module,exports){
(function(){var t,n=function(t,n){function r(){this.constructor=t}for(var e in n)o.call(n,e)&&(t[e]=n[e]);return r.prototype=n.prototype,t.prototype=new r,t.__super__=n.prototype,t},o={}.hasOwnProperty;t=require("../targeting"),exports.p=function(t){function o(conf){this.conf=conf}return n(o,t),o.ns="geo",o.modes=["b","s"],o.sync=!0,o.prototype.resolve=function(t,n,o,r){return r(!1,null)},o}(t.Plugin)}).call(this);
},{"../targeting":21}],"./plugins/rand":[function(require,module,exports){
(function(){var t,r=function(t,r){function o(){this.constructor=t}for(var e in r)n.call(r,e)&&(t[e]=r[e]);return o.prototype=r.prototype,t.prototype=new o,t.__super__=r.prototype,t},n={}.hasOwnProperty;t=require("../targeting"),exports.p=function(t){function n(conf){this.conf=conf}return r(n,t),n.ns="rdm",n.modes=["b","s"],n.sync=!0,n.prototype.ttl=function(t){return 31536e3},n.prototype.resolve=function(t,r,n,o){return o(!1,function(){switch(r){case"r100":return this.rand(100)}}.call(this))},n.prototype.rand=function(t){return Math.floor(Math.random()*t)+1},n}(t.Plugin)}).call(this);
},{"../targeting":21}],"./plugins/ua":[function(require,module,exports){
(function(){var e,r,n,t=function(e,r){function n(){this.constructor=e}for(var t in r)a.call(r,t)&&(e[t]=r[t]);return n.prototype=r.prototype,e.prototype=new n,e.__super__=r.prototype,e},a={}.hasOwnProperty;r=require("ua-parser-js"),e=require("../targeting"),n={},exports.p=function(e){function a(conf){this.conf=conf}var o,s,u,i;return t(a,e),a.ns="ua",a.modes=["s","b"],a.sync=!0,a.UA_CACHE={},a.prototype.ttl=function(e){return 0},i=function(e){return"os"===e||"br"===e||"dv"===e||"mo"===e},u=function(){return"object"==typeof window&&"ontouchstart"in window},s=function(e){var r,n;return null!=(r=e.data["v.ua"])?r:null!=(n=e.r)?n.ua:void 0},o=function(e,t){var a,o;return n[a="ua:"+t]?n[a]:(o=new r(t).getResult(),n[a]=Object.assign({},o),o)},a.prototype.resolve=function(e,r,n,t){var a,c,d;if(i(r)){if("string"!=typeof(d=s(e)))return t(!1);c=o(0,d)}return t(!1,function(){switch(r){case"os":switch(c.os.name){case"Android":return"a";case"iOS":return"i";case"Mac OS":return"m";case"Windows":case"Windows Phone":case"Windows Mobile":return"w";default:return"o"}break;case"br":switch(c.browser.name){case"Chrome":return"c";case"Firefox":return"f";case"Safari":case"Mobile Safari":return"s";case"IE":case"IEMobile":case"Edge":return"i";default:return"o"}break;case"dv":switch(c.device.type){case"mobile":return"m";case"tablet":return"t";case void 0:case null:case"":return"d";default:return"o"}break;case"mo":switch(c.device.type){case"mobile":case"tablet":return"m";default:return"n"}break;case"vi":return e.mdn();case"wi":return a="undefined"!=typeof window&&null!==window?window.innerWidth:void 0;case"wb":switch(a="undefined"!=typeof window&&null!==window?window.innerWidth:void 0,!1){case!(a>=1400):return"xxl";case!(a>=1200):return"xl";case!(a>=992):return"lg";case!(a>=768):return"md";case!(a>=576):return"sm";case!(576>a):return"xs"}break;case"te":return u()?"t":"n";case"ag":return s(e)}}())},a}(e.Plugin)}).call(this);
},{"../targeting":21,"ua-parser-js":8}],"./plugins/x-gcp-bq":[function(require,module,exports){
(function(){var t,r=function(t,r){function o(){this.constructor=t}for(var e in r)n.call(r,e)&&(t[e]=r[e]);return o.prototype=r.prototype,t.prototype=new o,t.__super__=r.prototype,t},n={}.hasOwnProperty;t=require("../targeting"),exports.p=function(t){function n(){return n.__super__.constructor.apply(this,arguments)}return r(n,t),n.ns="x-gcp-bq",n.modes=["b","s"],n.sync=!0,n.prototype.active=function(t){return null!=t.data["v.vid"]},n.prototype.resolve=function(t,r,n,o){return o(!1,null)},n}(t.Plugin)}).call(this);
},{"../targeting":21}],1:[function(require,module,exports){
(function(){exports.Bots=function(){function t(conf){this.conf=conf}var n;return t.prototype.detect=function(t){var o,e,i,r;if(!((null!=t?t.length:void 0)>0))return null;for(t=t.toLowerCase(),o=0,e=(i=n.concat(this.conf["bots:cust"])).length;e>o;o++)if(r=i[o],t.indexOf(r)>=0)return r;return null},n=["bot","spider","crawler","search","track","ping","monitor","google","twitter","yahoo","bing","akamai","y!j","mozilla/5.0 (compatible; msie 10.0; windows nt 6.1; wow64; trident/6.0)","synthetic","waitfor","delay","sleep"],t}()}).call(this);
},{}],2:[function(require,module,exports){
(function(){var n;n=exports,require("./data"),n.merged=function(n){return null==n&&(n=[]),_d.conf}}).call(this);
},{"./data":3}],3:[function(require,module,exports){
(function(){var c,t;if("string"==typeof _d)try{t=require,c=t("jsonpack"),_d=c.unpack(_d)}catch(a){}}).call(this);

},{}],4:[function(require,module,exports){
(function(){exports.doc_ready=function(e){return(document.attachEvent?"complete"===document.readyState:"loading"!==document.readyState)?e():document.addEventListener("DOMContentLoaded",e)},exports.await_selector=function(e,t){var o,n;try{o=document.querySelector(e)}catch(e){return}return o?t():(n=new MutationObserver(function(){return document.querySelector(e)?(n.disconnect(),t()):void 0})).observe(document,{childList:!0,subtree:!0})},exports.cookie_get=function(e){try{return decodeURIComponent(document.cookie.replace(RegExp("(?:(?:^|.*;)\\s*"+encodeURIComponent(e).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=\\s*([^;]*).*$)|^.*$"),"$1"))||null}catch(e){}},exports.cookie_set=function(e,t,o,n){var c;try{return null==o&&(o=_d.conf["a:session-ttl-secs"]),null==n&&(n=null!=(c=_d.conf["js:cook-dom"])?c:document.location.hostname.split(".").slice(-2).join(".")),document.cookie=e+"="+encodeURIComponent(t)+"; max-age="+o+"; domain="+n+"; path=/"}catch(e){}}}).call(this);
},{}],"/opt/mpath/api/bin/lib/micromodal.min.js":[function(require,module,exports){
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).MicroModal=t()}(this,function(){"use strict";function e(e,t){for(var o=0;o<t.length;o++){var n=t[o];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function t(e){return function(e){if(Array.isArray(e))return o(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,n=new Array(t);o<t;o++)n[o]=e[o];return n}var n,i,a,r,s,l=(n=["a[href]","area[href]",'input:not([disabled]):not([type="hidden"]):not([aria-hidden])',"select:not([disabled]):not([aria-hidden])","textarea:not([disabled]):not([aria-hidden])","button:not([disabled]):not([aria-hidden])","iframe","object","embed","[contenteditable]",'[tabindex]:not([tabindex^="-"])'],i=function(){function o(e){var n=e.targetModal,i=e.triggers,a=void 0===i?[]:i,r=e.onShow,s=void 0===r?function(){}:r,l=e.onClose,c=void 0===l?function(){}:l,d=e.openTrigger,u=void 0===d?"data-micromodal-trigger":d,f=e.closeTrigger,h=void 0===f?"data-micromodal-close":f,g=e.openClass,v=void 0===g?"is-open":g,m=e.disableScroll,b=void 0!==m&&m,y=e.disableFocus,p=void 0!==y&&y,w=e.awaitCloseAnimation,E=void 0!==w&&w,k=e.awaitOpenAnimation,M=void 0!==k&&k,A=e.getFocusableNodes,C=void 0===A?null:A,L=e.debugMode,T=void 0!==L&&L;!function(e,t){if(!(e instanceof o))throw new TypeError("Cannot call a class as a function")}(this),this.modal=document.getElementById(n),this.config={debugMode:T,disableScroll:b,openTrigger:u,closeTrigger:h,openClass:v,onShow:s,onClose:c,awaitCloseAnimation:E,awaitOpenAnimation:M,disableFocus:p,getFocusableNodes:C},a.length>0&&this.registerTriggers.apply(this,t(a)),this.onClick=this.onClick.bind(this),this.onKeydown=this.onKeydown.bind(this)}var i,a;return i=o,(a=[{key:"registerTriggers",value:function(){for(var e=this,t=arguments.length,o=new Array(t),n=0;n<t;n++)o[n]=arguments[n];o.filter(Boolean).forEach(function(t){t.addEventListener("click",function(t){return e.showModal(t)})})}},{key:"showModal",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;if(this.activeElement=document.activeElement,this.modal.setAttribute("aria-hidden","false"),this.modal.classList.add(this.config.openClass),this.scrollBehaviour("disable"),this.addEventListeners(),this.config.awaitOpenAnimation){this.modal.addEventListener("animationend",function t(){e.modal.removeEventListener("animationend",t,!1),e.setFocusToFirstNode()},!1)}else this.setFocusToFirstNode();this.config.onShow(this.modal,this.activeElement,t)}},{key:"closeModal",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=this.modal;if(this.modal.setAttribute("aria-hidden","true"),this.removeEventListeners(),this.scrollBehaviour("enable"),this.activeElement&&this.activeElement.focus&&this.activeElement.focus(),this.config.onClose(this.modal,this.activeElement,e),this.config.awaitCloseAnimation){var o=this.config.openClass;this.modal.addEventListener("animationend",function e(){t.classList.remove(o),t.removeEventListener("animationend",e,!1)},!1)}else t.classList.remove(this.config.openClass)}},{key:"closeModalById",value:function(e){this.modal=document.getElementById(e),this.modal&&this.closeModal()}},{key:"scrollBehaviour",value:function(e){if(this.config.disableScroll){var t=document.querySelector("body");switch(e){case"enable":Object.assign(t.style,{overflow:""});break;case"disable":Object.assign(t.style,{overflow:"hidden"})}}}},{key:"addEventListeners",value:function(){this.modal.addEventListener("touchstart",this.onClick),this.modal.addEventListener("click",this.onClick),document.addEventListener("keydown",this.onKeydown)}},{key:"removeEventListeners",value:function(){this.modal.removeEventListener("touchstart",this.onClick),this.modal.removeEventListener("click",this.onClick),document.removeEventListener("keydown",this.onKeydown)}},{key:"onClick",value:function(e){(e.target.hasAttribute(this.config.closeTrigger)||e.target.parentNode.hasAttribute(this.config.closeTrigger))&&(e.preventDefault(),e.stopPropagation(),this.closeModal(e))}},{key:"onKeydown",value:function(e){27===e.keyCode&&this.closeModal(e),9===e.keyCode&&this.retainFocus(e)}},{key:"getFocusableNodes",value:function(){if(this.config.getFocusableNodes)return this.config.getFocusableNodes(this.modal);var e=this.modal.querySelectorAll(n);return Array.apply(void 0,t(e))}},{key:"setFocusToFirstNode",value:function(){var e=this;if(!this.config.disableFocus){var t=this.getFocusableNodes();if(0!==t.length){var o=t.filter(function(t){return!t.hasAttribute(e.config.closeTrigger)});o.length>0&&o[0].focus(),0===o.length&&t[0].focus()}}}},{key:"retainFocus",value:function(e){var t=this.getFocusableNodes();if(0!==t.length)if(t=t.filter(function(e){return null!==e.offsetParent||parseInt(e.getAttribute("tabindex"))>=0}),this.modal.contains(document.activeElement)){var o=t.indexOf(document.activeElement);e.shiftKey&&0===o&&(t[t.length-1].focus(),e.preventDefault()),!e.shiftKey&&t.length>0&&o===t.length-1&&(t[0].focus(),e.preventDefault())}else t[0].focus()}}])&&e(i.prototype,a),o}(),a=null,r=function(e){if(!document.getElementById(e))return console.warn("MicroModal: ❗Seems like you have missed %c'".concat(e,"'"),"background-color: #f8f9fa;color: #50596c;font-weight: bold;","ID somewhere in your code. Refer example below to resolve it."),console.warn("%cExample:","background-color: #f8f9fa;color: #50596c;font-weight: bold;",'<div class="modal" id="'.concat(e,'"></div>')),!1},s=function(e,t){if(function(e){e.length<=0&&(console.warn("MicroModal: ❗Please specify at least one %c'micromodal-trigger'","background-color: #f8f9fa;color: #50596c;font-weight: bold;","data attribute."),console.warn("%cExample:","background-color: #f8f9fa;color: #50596c;font-weight: bold;",'<a href="#" data-micromodal-trigger="my-modal"></a>'))}(e),!t)return!0;for(var o in t)r(o);return!0},{init:function(e){var o=Object.assign({},{openTrigger:"data-micromodal-trigger"},e),n=t(document.querySelectorAll("[".concat(o.openTrigger,"]"))),r=function(e,t){var o=[];return e.forEach(function(e){var n=e.attributes[t].value;void 0===o[n]&&(o[n]=[]),o[n].push(e)}),o}(n,o.openTrigger);if(!0!==o.debugMode||!1!==s(n,r))for(var l in r){var c=r[l];o.targetModal=l,o.triggers=t(c),a=new i(o)}},show:function(e,t){var o=t||{};o.targetModal=e,!0===o.debugMode&&!1===r(e)||(a&&a.removeEventListeners(),(a=new i(o)).showModal())},close:function(e){e?a.closeModalById(e):a.closeModal()}});return"undefined"!=typeof window&&(window.MicroModal=l),l});
},{}],5:[function(require,module,exports){
!function(e,n){"function"==typeof define&&define.amd?define([],n):"object"==typeof exports?module.exports=n():e.sentinel=n()}(this,function(){var e,n,t,i=Array.isArray,o={},r={};return{on:function(a,f){if(f){if(!e){var s=document,c=s.head;s.addEventListener("animationstart",function(e,n,t,i){if(n=r[e.animationName])for(e.stopImmediatePropagation(),t=n.length,i=0;t>i;i++)n[i](e.target)},!0);e=s.createElement("style");var l=function(){var e=document.querySelector("style[nonce]")||document.querySelector("script[nonce]");return e?e.nonce||e.getAttribute("nonce"):void 0}();l&&(e.nonce=l),c.insertBefore(e,c.firstChild),n=e.sheet,t=n.cssRules}(i(a)?a:[a]).map(function(e,i,a){(i=o[e])||(a="!"==e[0],o[e]=i=a?e.slice(1):"sentinel-"+Math.random().toString(16).slice(2),t[n.insertRule("@keyframes "+i+"{from{transform:none;}to{transform:none;}}",t.length)]._id=e,a||(t[n.insertRule(e+"{animation-duration:0.0001s;animation-name:"+i+";}",t.length)]._id=e),o[e]=i),(r[i]=r[i]||[]).push(f)})}},off:function(e,a){(i(e)?e:[e]).map(function(e,i,f,s){if(i=o[e]){if(f=r[i],a)for(s=f.length;s--;)f[s]===a&&f.splice(s,1);else f=[];if(!f.length){for(s=t.length;s--;)t[s]._id==e&&n.deleteRule(s);delete o[e],delete r[i]}}})},reset:function(){o={},r={},e&&e.parentNode.removeChild(e),e=0}}});
},{}],6:[function(require,module,exports){

},{}],7:[function(require,module,exports){
var cachedSetTimeout,cachedClearTimeout,process=module.exports={};function defaultSetTimout(){throw new Error("setTimeout has not been defined")}function defaultClearTimeout(){throw new Error("clearTimeout has not been defined")}function runTimeout(e){if(cachedSetTimeout===setTimeout)return setTimeout(e,0);if((cachedSetTimeout===defaultSetTimout||!cachedSetTimeout)&&setTimeout)return cachedSetTimeout=setTimeout,setTimeout(e,0);try{return cachedSetTimeout(e,0)}catch(t){try{return cachedSetTimeout.call(null,e,0)}catch(t){return cachedSetTimeout.call(this,e,0)}}}function runClearTimeout(e){if(cachedClearTimeout===clearTimeout)return clearTimeout(e);if((cachedClearTimeout===defaultClearTimeout||!cachedClearTimeout)&&clearTimeout)return cachedClearTimeout=clearTimeout,clearTimeout(e);try{return cachedClearTimeout(e)}catch(t){try{return cachedClearTimeout.call(null,e)}catch(t){return cachedClearTimeout.call(this,e)}}}!function(){try{cachedSetTimeout="function"==typeof setTimeout?setTimeout:defaultSetTimout}catch(e){cachedSetTimeout=defaultSetTimout}try{cachedClearTimeout="function"==typeof clearTimeout?clearTimeout:defaultClearTimeout}catch(e){cachedClearTimeout=defaultClearTimeout}}();var currentQueue,queue=[],draining=!1,queueIndex=-1;function cleanUpNextTick(){draining&&currentQueue&&(draining=!1,currentQueue.length?queue=currentQueue.concat(queue):queueIndex=-1,queue.length&&drainQueue())}function drainQueue(){if(!draining){var e=runTimeout(cleanUpNextTick);draining=!0;for(var t=queue.length;t;){for(currentQueue=queue,queue=[];++queueIndex<t;)currentQueue&&currentQueue[queueIndex].run();queueIndex=-1,t=queue.length}currentQueue=null,draining=!1,runClearTimeout(e)}}function Item(e,t){this.fun=e,this.array=t}function noop(){}process.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)t[r-1]=arguments[r];queue.push(new Item(e,t)),1!==queue.length||draining||runTimeout(drainQueue)},Item.prototype.run=function(){this.fun.apply(null,this.array)},process.title="browser",process.browser=!0,process.env={},process.argv=[],process.version="",process.versions={},process.on=noop,process.addListener=noop,process.once=noop,process.off=noop,process.removeListener=noop,process.removeAllListeners=noop,process.emit=noop,process.prependListener=noop,process.prependOnceListener=noop,process.listeners=function(e){return[]},process.binding=function(e){throw new Error("process.binding is not supported")},process.cwd=function(){return"/"},process.chdir=function(e){throw new Error("process.chdir is not supported")},process.umask=function(){return 0};
},{}],8:[function(require,module,exports){
!function(i,e){"use strict";function o(i){for(var e={},o=0;o<i.length;o++)e[i[o].toUpperCase()]=i[o];return e}function a(i,e){return typeof i==d&&-1!==Z(e).indexOf(Z(i))}function r(i,e){if(typeof i==d)return i=i.replace(/^\s\s*/,""),typeof e==b?i:i.substring(0,500)}function t(i,o){for(var a,r,t,n,b,d=0;d<o.length&&!n;){for(var l=o[d],c=o[d+1],u=a=0;u<l.length&&!n&&l[u];)if(n=l[u++].exec(i))for(r=0;r<c.length;r++)b=n[++a],typeof(t=c[r])==w&&0<t.length?2===t.length?typeof t[1]==s?this[t[0]]=t[1].call(this,b):this[t[0]]=t[1]:3===t.length?typeof t[1]!=s||t[1].exec&&t[1].test?this[t[0]]=b?b.replace(t[1],t[2]):e:this[t[0]]=b?t[1].call(this,b,t[2]):e:4===t.length&&(this[t[0]]=b?t[3].call(this,b.replace(t[1],t[2])):e):this[t]=b||e;d+=2}}function n(i,o){for(var r in o)if(typeof o[r]==w&&0<o[r].length){for(var t=0;t<o[r].length;t++)if(a(o[r][t],i))return"?"===r?e:r}else if(a(o[r],i))return"?"===r?e:r;return o.hasOwnProperty("*")?o["*"]:i}var s="function",b="undefined",w="object",d="string",l="major",c="model",u="name",p="type",m="vendor",h="version",f="architecture",g="console",v="mobile",x="tablet",k="smarttv",y="wearable",_="embedded",T="Amazon",S="Apple",q="ASUS",z="BlackBerry",N="Browser",A="Chrome",O="Firefox",E="Google",C="Huawei",U="LG",P="Microsoft",j="Motorola",B="Opera",M="Samsung",R="Sharp",D="Sony",V="Xiaomi",I="Zebra",G="Facebook",L="Chromium OS",F="Mac OS",H=" Browser",Z=function(i){return i.toLowerCase()},$={ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2000:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2",8.1:"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"},W={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[h,[u,"Chrome"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[h,[u,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[u,h],[/opios[\/ ]+([\w\.]+)/i],[h,[u,B+" Mini"]],[/\bop(?:rg)?x\/([\w\.]+)/i],[h,[u,B+" GX"]],[/\bopr\/([\w\.]+)/i],[h,[u,B]],[/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i],[h,[u,"Baidu"]],[/(kindle)\/([\w\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer|sleipnir)[\/ ]?([\w\.]*)/i,/(avant|iemobile|slim)\s?(?:browser)?[\/ ]?([\w\.]*)/i,/(?:ms|\()(ie) ([\w\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|duckduckgo|klar|helio)\/([-\w\.]+)/i,/(heytap|ovi)browser\/([\d\.]+)/i,/(weibo)__([\d\.]+)/i],[u,h],[/quark(?:pc)?\/([-\w\.]+)/i],[h,[u,"Quark"]],[/\bddg\/([\w\.]+)/i],[h,[u,"DuckDuckGo"]],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[h,[u,"UC"+N]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i,/micromessenger\/([\w\.]+)/i],[h,[u,"WeChat"]],[/konqueror\/([\w\.]+)/i],[h,[u,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[h,[u,"IE"]],[/ya(?:search)?browser\/([\w\.]+)/i],[h,[u,"Yandex"]],[/slbrowser\/([\w\.]+)/i],[h,[u,"Smart Lenovo "+N]],[/(avast|avg)\/([\w\.]+)/i],[[u,/(.+)/,"$1 Secure "+N],h],[/\bfocus\/([\w\.]+)/i],[h,[u,O+" Focus"]],[/\bopt\/([\w\.]+)/i],[h,[u,B+" Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[h,[u,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[h,[u,"Dolphin"]],[/coast\/([\w\.]+)/i],[h,[u,B+" Coast"]],[/miuibrowser\/([\w\.]+)/i],[h,[u,"MIUI "+N]],[/fxios\/([-\w\.]+)/i],[h,[u,O]],[/\bqihu|(qi?ho?o?|360)browser/i],[[u,"360"+H]],[/\b(qq)\/([\w\.]+)/i],[[u,/(.+)/,"$1Browser"],h],[/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i],[[u,/(.+)/,"$1"+H],h],[/samsungbrowser\/([\w\.]+)/i],[h,[u,M+" Internet"]],[/(comodo_dragon)\/([\w\.]+)/i],[[u,/_/g," "],h],[/metasr[\/ ]?([\d\.]+)/i],[h,[u,"Sogou Explorer"]],[/(sogou)mo\w+\/([\d\.]+)/i],[[u,"Sogou Mobile"],h],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|2345Explorer)[\/ ]?([\w\.]+)/i],[u,h],[/(lbbrowser|rekonq)/i,/\[(linkedin)app\]/i],[u],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[u,G],h],[/(Klarna)\/([\w\.]+)/i,/(kakao(?:talk|story))[\/ ]([\w\.]+)/i,/(naver)\(.*?(\d+\.[\w\.]+).*\)/i,/safari (line)\/([\w\.]+)/i,/\b(line)\/([\w\.]+)\/iab/i,/(alipay)client\/([\w\.]+)/i,/(twitter)(?:and| f.+e\/([\w\.]+))/i,/(chromium|instagram|snapchat)[\/ ]([-\w\.]+)/i],[u,h],[/\bgsa\/([\w\.]+) .*safari\//i],[h,[u,"GSA"]],[/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i],[h,[u,"TikTok"]],[/headlesschrome(?:\/([\w\.]+)| )/i],[h,[u,A+" Headless"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[u,A+" WebView"],h],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[h,[u,"Android "+N]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[u,h],[/version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i],[h,[u,"Mobile Safari"]],[/version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i],[h,u],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[u,[h,n,{"1.0":"/8",1.2:"/1",1.3:"/3","2.0":"/412","2.0.2":"/416","2.0.3":"/417","2.0.4":"/419","?":"/"}]],[/(webkit|khtml)\/([\w\.]+)/i],[u,h],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[u,"Netscape"],h],[/(wolvic)\/([\w\.]+)/i],[u,h],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[h,[u,O+" Reality"]],[/ekiohf.+(flow)\/([\w\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror)[\/ ]?([\w\.\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,/(firefox)\/([\w\.]+)/i,/(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,/(links) \(([\w\.]+)/i],[u,[h,/_/g,"."]],[/(cobalt)\/([\w\.]+)/i],[u,[h,/master.|lts./,""]]],cpu:[[/(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\)]/i],[[f,"amd64"]],[/(ia32(?=;))/i],[[f,Z]],[/((?:i[346]|x)86)[;\)]/i],[[f,"ia32"]],[/\b(aarch64|arm(v?8e?l?|_?64))\b/i],[[f,"arm64"]],[/\b(arm(?:v[67])?ht?n?[fl]p?)\b/i],[[f,"armhf"]],[/windows (ce|mobile); ppc;/i],[[f,"arm"]],[/((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i],[[f,/ower/,"",Z]],[/(sun4\w)[;\)]/i],[[f,"sparc"]],[/((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i],[[f,Z]]],device:[[/\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i],[c,[m,M],[p,x]],[/\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,/samsung[- ]((?!sm-[lr])[-\w]+)/i,/sec-(sgh\w+)/i],[c,[m,M],[p,v]],[/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i],[c,[m,S],[p,v]],[/\((ipad);[-\w\),; ]+apple/i,/applecoremedia\/[\w\.]+ \((ipad)/i,/\b(ipad)\d\d?,\d\d?[;\]].+ios/i],[c,[m,S],[p,x]],[/(macintosh);/i],[c,[m,S]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[c,[m,R],[p,v]],[/\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i],[c,[m,C],[p,x]],[/(?:huawei|honor)([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i],[c,[m,C],[p,v]],[/\b(poco[\w ]+|m2\d{3}j\d\d[a-z]{2})(?: bui|\))/i,/\b; (\w+) build\/hm\1/i,/\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,/\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,/oid[^\)]+; (m?[12][0-389][01]\w{3,6}[c-y])( bui|; wv|\))/i,/\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite|pro)?)(?: bui|\))/i],[[c,/_/g," "],[m,V],[p,v]],[/oid[^\)]+; (2\d{4}(283|rpbf)[cgl])( bui|\))/i,/\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i],[[c,/_/g," "],[m,V],[p,x]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[c,[m,"OPPO"],[p,v]],[/\b(opd2\d{3}a?) bui/i],[c,[m,"OPPO"],[p,x]],[/vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[c,[m,"Vivo"],[p,v]],[/\b(rmx[1-3]\d{3})(?: bui|;|\))/i],[c,[m,"Realme"],[p,v]],[/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,/\bmot(?:orola)?[- ](\w*)/i,/((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i],[c,[m,j],[p,v]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[c,[m,j],[p,x]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[c,[m,U],[p,x]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i,/\blg-?([\d\w]+) bui/i],[c,[m,U],[p,v]],[/(ideatab[-\w ]+)/i,/lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i],[c,[m,"Lenovo"],[p,x]],[/(?:maemo|nokia).*(n900|lumia \d+)/i,/nokia[-_ ]?([-\w\.]*)/i],[[c,/_/g," "],[m,"Nokia"],[p,v]],[/(pixel c)\b/i],[c,[m,E],[p,x]],[/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i],[c,[m,E],[p,v]],[/droid.+ (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],[c,[m,D],[p,v]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[c,"Xperia Tablet"],[m,D],[p,x]],[/ (kb2005|in20[12]5|be20[12][59])\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[c,[m,"OnePlus"],[p,v]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[c,[m,T],[p,x]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[c,/(.+)/g,"Fire Phone $1"],[m,T],[p,v]],[/(playbook);[-\w\),; ]+(rim)/i],[c,m,[p,x]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/\(bb10; (\w+)/i],[c,[m,z],[p,v]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[c,[m,q],[p,x]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[c,[m,q],[p,v]],[/(nexus 9)/i],[c,[m,"HTC"],[p,x]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i],[m,[c,/_/g," "],[p,v]],[/droid [\w\.]+; ((?:8[14]9[16]|9(?:0(?:48|60|8[01])|1(?:3[27]|66)|2(?:6[69]|9[56])|466))[gqswx])\w*(\)| bui)/i],[c,[m,"TCL"],[p,x]],[/(itel) ((\w+))/i],[[m,Z],c,[p,n,{tablet:["p10001l","w7001"],"*":"mobile"}]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[c,[m,"Acer"],[p,x]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[c,[m,"Meizu"],[p,v]],[/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i],[c,[m,"Ulefone"],[p,v]],[/droid.+; (a(?:015|06[35]|142p?))/i],[c,[m,"Nothing"],[p,v]],[/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron|infinix|tecno)[-_ ]?([-\w]*)/i,/(hp) ([\w ]+\w)/i,/(asus)-?(\w+)/i,/(microsoft); (lumia[\w ]+)/i,/(lenovo)[-_ ]?([-\w]+)/i,/(jolla)/i,/(oppo) ?([\w ]+) bui/i],[m,c,[p,v]],[/(kobo)\s(ereader|touch)/i,/(archos) (gamepad2?)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i,/(nook)[\w ]+build\/(\w+)/i,/(dell) (strea[kpr\d ]*[\dko])/i,/(le[- ]+pan)[- ]+(\w{1,9}) bui/i,/(trinity)[- ]*(t\d{3}) bui/i,/(gigaset)[- ]+(q\w{1,9}) bui/i,/(vodafone) ([\w ]+)(?:\)| bui)/i],[m,c,[p,x]],[/(surface duo)/i],[c,[m,P],[p,x]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[c,[m,"Fairphone"],[p,v]],[/(u304aa)/i],[c,[m,"AT&T"],[p,v]],[/\bsie-(\w*)/i],[c,[m,"Siemens"],[p,v]],[/\b(rct\w+) b/i],[c,[m,"RCA"],[p,x]],[/\b(venue[\d ]{2,7}) b/i],[c,[m,"Dell"],[p,x]],[/\b(q(?:mv|ta)\w+) b/i],[c,[m,"Verizon"],[p,x]],[/\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i],[c,[m,"Barnes & Noble"],[p,x]],[/\b(tm\d{3}\w+) b/i],[c,[m,"NuVision"],[p,x]],[/\b(k88) b/i],[c,[m,"ZTE"],[p,x]],[/\b(nx\d{3}j) b/i],[c,[m,"ZTE"],[p,v]],[/\b(gen\d{3}) b.+49h/i],[c,[m,"Swiss"],[p,v]],[/\b(zur\d{3}) b/i],[c,[m,"Swiss"],[p,x]],[/\b((zeki)?tb.*\b) b/i],[c,[m,"Zeki"],[p,x]],[/\b([yr]\d{2}) b/i,/\b(dragon[- ]+touch |dt)(\w{5}) b/i],[[m,"Dragon Touch"],c,[p,x]],[/\b(ns-?\w{0,9}) b/i],[c,[m,"Insignia"],[p,x]],[/\b((nxa|next)-?\w{0,9}) b/i],[c,[m,"NextBook"],[p,x]],[/\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[m,"Voice"],c,[p,v]],[/\b(lvtel\-)?(v1[12]) b/i],[[m,"LvTel"],c,[p,v]],[/\b(ph-1) /i],[c,[m,"Essential"],[p,v]],[/\b(v(100md|700na|7011|917g).*\b) b/i],[c,[m,"Envizen"],[p,x]],[/\b(trio[-\w\. ]+) b/i],[c,[m,"MachSpeed"],[p,x]],[/\btu_(1491) b/i],[c,[m,"Rotor"],[p,x]],[/(shield[\w ]+) b/i],[c,[m,"Nvidia"],[p,x]],[/(sprint) (\w+)/i],[m,c,[p,v]],[/(kin\.[onetw]{3})/i],[[c,/\./g," "],[m,P],[p,v]],[/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[c,[m,I],[p,x]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[c,[m,I],[p,v]],[/smart-tv.+(samsung)/i],[m,[p,k]],[/hbbtv.+maple;(\d+)/i],[[c,/^/,"SmartTV"],[m,M],[p,k]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[m,U],[p,k]],[/(apple) ?tv/i],[m,[c,S+" TV"],[p,k]],[/crkey/i],[[c,A+"cast"],[m,E],[p,k]],[/droid.+aft(\w+)( bui|\))/i],[c,[m,T],[p,k]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[c,[m,R],[p,k]],[/(bravia[\w ]+)( bui|\))/i],[c,[m,D],[p,k]],[/(mitv-\w{5}) bui/i],[c,[m,V],[p,k]],[/Hbbtv.*(technisat) (.*);/i],[m,c,[p,k]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],[[m,r],[c,r],[p,k]],[/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i],[[p,k]],[/(ouya)/i,/(nintendo) ([wids3utch]+)/i],[m,c,[p,g]],[/droid.+; (shield) bui/i],[c,[m,"Nvidia"],[p,g]],[/(playstation [345portablevi]+)/i],[c,[m,D],[p,g]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[c,[m,P],[p,g]],[/\b(sm-[lr]\d\d[05][fnuw]?s?)\b/i],[c,[m,M],[p,y]],[/((pebble))app/i],[m,c,[p,y]],[/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],[c,[m,S],[p,y]],[/droid.+; (glass) \d/i],[c,[m,E],[p,y]],[/droid.+; (wt63?0{2,3})\)/i],[c,[m,I],[p,y]],[/(quest( \d| pro)?)/i],[c,[m,G],[p,y]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[m,[p,_]],[/(aeobc)\b/i],[c,[m,T],[p,_]],[/droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew).+? mobile safari/i],[c,[p,v]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i],[c,[p,x]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[p,x]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[p,v]],[/(android[-\w\. ]{0,9});.+buil/i],[c,[m,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[h,[u,"EdgeHTML"]],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[h,[u,"Blink"]],[/(presto)\/([\w\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i,/ekioh(flow)\/([\w\.]+)/i,/(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,/(icab)[\/ ]([23]\.[\d\.]+)/i,/\b(libweb)/i],[u,h],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[h,u]],os:[[/microsoft (windows) (vista|xp)/i],[u,h],[/(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i],[u,[h,n,$]],[/windows nt 6\.2; (arm)/i,/windows[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i,/(?:win(?=3|9|n)|win 9x )([nt\d\.]+)/i],[[h,n,$],[u,"Windows"]],[/ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i,/(?:ios;fbsv\/|iphone.+ios[\/ ])([\d\.]+)/i,/cfnetwork\/.+darwin/i],[[h,/_/g,"."],[u,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+haiku)/i],[[u,F],[h,/_/g,"."]],[/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i],[h,u],[/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\/ ]?([\w\.]*)/i,/(blackberry)\w*\/([\w\.]*)/i,/(tizen|kaios)[\/ ]([\w\.]+)/i,/\((series40);/i],[u,h],[/\(bb(10);/i],[h,[u,z]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i],[h,[u,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[h,[u,O+" OS"]],[/web0s;.+rt(tv)/i,/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i],[h,[u,"webOS"]],[/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i],[h,[u,"watchOS"]],[/crkey\/([\d\.]+)/i],[h,[u,A+"cast"]],[/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i],[[u,L],h],[/panasonic;(viera)/i,/(netrange)mmh/i,/(nettv)\/(\d+\.[\w\.]+)/i,/(nintendo|playstation) ([wids345portablevuch]+)/i,/(xbox); +xbox ([^\);]+)/i,/\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,/(mint)[\/\(\) ]?(\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,/(hurd|linux) ?([\w\.]*)/i,/(gnu) ?([\w\.]*)/i,/\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,/(haiku) (\w+)/i],[u,h],[/(sunos) ?([\w\.\d]*)/i],[[u,"Solaris"],h],[/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/(aix) ((\d)(?=\.|\)| )[\w\.])*/i,/\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,/(unix) ?([\w\.]*)/i],[u,h]]},X=function(o,a){if(typeof o==w&&(a=o,o=e),!(this instanceof X))return new X(o,a).getResult();var n=typeof i!=b&&i.navigator?i.navigator:e,g=o||(n&&n.userAgent?n.userAgent:""),k=n&&n.userAgentData?n.userAgentData:e,y=a?function(i,e){var o,a={};for(o in i)e[o]&&e[o].length%2==0?a[o]=e[o].concat(i[o]):a[o]=i[o];return a}(W,a):W,_=n&&n.userAgent==g;return this.getBrowser=function(){var i,o={};return o[u]=e,o[h]=e,t.call(o,g,y.browser),o[l]=typeof(i=o[h])==d?i.replace(/[^\d\.]/g,"").split(".")[0]:e,_&&n&&n.brave&&typeof n.brave.isBrave==s&&(o[u]="Brave"),o},this.getCPU=function(){var i={};return i[f]=e,t.call(i,g,y.cpu),i},this.getDevice=function(){var i={};return i[m]=e,i[c]=e,i[p]=e,t.call(i,g,y.device),_&&!i[p]&&k&&k.mobile&&(i[p]=v),_&&"Macintosh"==i[c]&&n&&typeof n.standalone!=b&&n.maxTouchPoints&&2<n.maxTouchPoints&&(i[c]="iPad",i[p]=x),i},this.getEngine=function(){var i={};return i[u]=e,i[h]=e,t.call(i,g,y.engine),i},this.getOS=function(){var i={};return i[u]=e,i[h]=e,t.call(i,g,y.os),_&&!i[u]&&k&&k.platform&&"Unknown"!=k.platform&&(i[u]=k.platform.replace(/chrome os/i,L).replace(/macos/i,F)),i},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return g},this.setUA=function(i){return g=typeof i==d&&500<i.length?r(i,500):i,this},this.setUA(g),this};X.VERSION="0.7.39",X.BROWSER=o([u,h,l]),X.CPU=o([f]),X.DEVICE=o([c,m,p,g,v,k,x,y,_]),X.ENGINE=X.OS=o([u,h]),typeof exports!=b?(typeof module!=b&&module.exports&&(exports=module.exports=X),exports.UAParser=X):typeof define==s&&define.amd?define(function(){return X}):typeof i!=b&&(i.UAParser=X);var K,Q=typeof i!=b&&(i.jQuery||i.Zepto);Q&&!Q.ua&&(K=new X,Q.ua=K.getResult(),Q.ua.get=function(){return K.getUA()},Q.ua.set=function(i){K.setUA(i);var e,o=K.getResult();for(e in o)Q.ua[e]=o[e]})}("object"==typeof window?window:this);
},{}],9:[function(require,module,exports){
(function(){var l,n,e,a=[].indexOf||function(l){for(var n=0,e=this.length;e>n;n++)if(n in this&&this[n]===l)return n;return-1};n=exports,e=require("./utils"),l=999999,n.Rewarder=function(){function n(conf){this.conf=conf}var t;return n.prototype.handleStep=function(n,t,r){var o,u,s,g,i,v,d,p,c,f,w,h,y,x,G,M,b,m,A,_,D,N;for(h=e.Dates.stamp(),-l<(x=t.value)&&l>x||(t.value=null!=(G=r.valueDef)?G:1),i=null!=(M=_d.G[t.goal])?M:{},s=null!=(b=i.a)?b:[],Array.isArray(t.agents)&&(s=t.agents.filter(function(l){return a.call(s,l)>=0})),p=this.selsFor(n,t,s),N=!1,i.gpr,n.log("Goal '"+t.goal+"' mapped to agents: "+s+" (value "+t.value+" "+(null!=(m=t.vc)?m:"")+")","g"),v=c=0,f=p.length;f>c;v=++c)(d=p[v]).g=t.goal,d.v=this.val(n,t,r,d),d.vc=t.vc,o="running"===(u=null!=(A=_d.A[d.a])?A.a.s:void 0)&&"p"!==(_=d.p)&&"b"!==_&&"x"!==_,"p"===d.s&&("number"==typeof r.ps_ok&&h-d.dts<=r.ps_ok?n.log("Allowing reward for pending selection","g"):i.gpr?N?(n.log("Allowing 'pending' reward for goal '"+t.goal+"' and agent '"+d.a+"'","g"),o=!0):(n.log("Goal '"+t.goal+"' may not be sent via this Deploy Target","g"),o=!1):(n.log("Not rewarding '"+d.a+"' for Goal '"+t.goal+"' due to 'pending' selection","g"),o=!1)),i.gpr&&(n.log("Goal '"+t.goal+"' may only be sent via the REST API","g"),o=!1),o&&i.ewe>0&&h-d.dts>i.ewe&&(n.log("Not rewarding '"+d.a+"' for Goal '"+t.goal+"' due to eligibility window ("+i.ewe+")","g"),o=!1),o&&null!=d.v&&null!=d.fs?(null==(g=n.sess.rwds)[w=d.a]&&(g[w]={}),D=this.getPrior(n,d.a,d.g),d.pr=D[0],d.ri=D[1],r.rw&&d.pr&&(y=h-d.pr.gts)<r.rw?(n.log("Not rewarding "+d.a+" for "+d.g+" ("+y+" of "+r.rw+" secs)","g"),p[v]=null):n.rwdAdd(d.a,d.g,d.v)):(n.log("Not rewarding "+d.a+" for "+d.g+" (policy "+d.p+" - status "+u+")","g"),p[v]=null);return{items:p}},n.prototype.selsFor=function(l,n,e){var a,t,r,o,u;for(r=[],o=0,u=e.length;u>o;o++)a=e[o],null!=(t=l.selGet(a))&&r.push({a:a,c:t.c,p:t.p,s:t.s,fs:t.fs.concat(),dts:t.ts,dp:t.dp});return r},n.prototype.getPrior=function(l,n,e){var a,r,o,u,s,g;for(a in s=0,r={v:0,n:0,gv:0,gn:0,gts:0,ts:0},g=null!=(u=l.sess.rwds[n])?u:{})null!=(o=g[a])&&"number"==typeof o.v&&(t(n,a)||(r.v+=o.v,r.n+=o.n),a===e&&(r.gv+=o.v,r.gn+=o.n,r.gts=o.ts,s=o.n),o.ts>r.ts&&(r.ts=o.ts));return 0===r.ts&&(r=void 0),[r,s]},n.prototype.val=function(l,n,e,a){var t,r,o,u,s,g,i;switch(t=null!=(r=null!=(o=l.sess.rwds[a.a])?o[a.g]:void 0)?r:{},i=null!=(u=null!=(s=n.value)?s:e.valueDef)?u:1,!1){case!(t.n>=(null!=(g=e.countMax)?g:1)):return l.log("Goal '"+a.g+"' already accepted "+t.n+"x for agent '"+a.a+"'","g"),null;case!(null==e.valueMin&&null==e.valueMax):return 1;case!(n.vc&&n.vc!==e.forex):return i;case!(null!=e.valueMin&&i<e.valueMin||null!=e.valueMax&&i>e.valueMax):return l.log("Goal '"+a.g+"' not accepted (reward "+i+" not between "+e.valueMin+" and "+e.valueMax+")","g"),null;default:return i}},t=function(l,n){var e,t;return!!(t=null!=(e=_d.G[n])?e.sec:void 0)&&a.call(t,l)>=0},n}()}).call(this);
},{"./utils":22}],10:[function(require,module,exports){
(function(){var r,n=[].indexOf||function(r){for(var n=0,e=this.length;e>n;n++)if(n in this&&this[n]===r)return n;return-1};r=require("./utils"),exports.Chooser=function(){function e(conf){this.conf=conf}var t;return e.prototype.handleStep=function(e,t){var l,c,a,u,i,s,o,p,f,h,d,v,g,x,w;return o=this.priorChoice(e,t),l=null!=(p=_d.A[t.a])?p:{},1>(d=l.sr)&&!e.enfVcPre()&&t.c&&1===t.c.length&&(e.log("Ignoring selection rate during preview","q"),d=1),g=e.tFor(t.a),v=e.polGet(t.a),c=function(){var r;switch(!1){case"p"!==v:return[];default:return null!=(r=e.selRed(t.a))?r:[]}}(),x=Array.isArray(t.x)?t.x:[],(c.length>0||x.length>0)&&(t.c=t.c.filter(function(r){return(0===c.length||n.call(c,r)>=0)&&n.call(x,r)<0}),null!=o&&(f=o.c,n.call(t.c,f)<0)&&(o=null)),s=function(){var n,l;switch(!1){case"x"!==v&&"p"!==v:return v;case!e.dnt():return"p";case null==o:return"s";case!(1>d&&!r.Rand.coin(d)):return"x";case!v:return v;case"ar"!==t.p:return"r";case!(1===c.length&&(!e.qa()||c[0]!==e.selPre(t.a))):return"f";case null==t.n:return"a";case"c"!==(n=t.p)&&"p"!==n&&"b"!==n&&"f"!==n&&"x"!==n:case"a"!==(l=t.p)&&"r"!==l:return t.p;default:return"r"}}(),1>d&&"s"!==s&&"p"!==s&&"x"!==v&&"x"!==t.p&&e.log("Selection rate ("+d+") "+("x"===s?"excluded":"allowed")+" visitor for agent "+t.a,"a"),"s"===s&&"p"===o.s&&(g=o.fs),"s"===s?u=o.c:"p"===s?u=l.dc:"x"===s?u="":(w=(a=function(){var r,e,c,a,u,s;for(s=[],r=0,e=(u=null!=(c=null!=(a=l.T)?a.rank:void 0)?c:t.c).length;e>r;r++)i=u[r],n.call(t.c,i)>=0&&s.push(i);return s}()).map(function(r){var n,e;switch(s){case"r":return null!=(n=null!=(e=t.w)?e[r]:void 0)?n:1/a.length;case"c":case"f":return r===a[0]?1:0;default:throw Error("Unknown policy '"+s+"'")}}),u=null!=t.n?r.Rand.pickn(a,w,t.n):r.Rand.pick(a,w)),{a:t.a,c:u,p:s,fs:g.concat(),ts:null!=(h=null!=o?o.ts:void 0)?h:e.ts(),ps:null!=o?o.s:void 0,pp:null!=o?o.p:void 0}},e.prototype.priorChoice=function(r,e){var l,c;return l=null!=(c=r.selGet(e.a))?c:{},void 0===e.n&&Array.isArray(l.c)&&(l.c=l.c[0]),function(){var r;switch(!1){case!(null!=e.n&&Array.isArray(l.c)):return e.n===l.c.length&&t(l.c,e.c);case!("x"===l.p&&""===l.c):return!0;default:return r=l.c,n.call(e.c,r)>=0}}()&&"p"!==l.p?l:null},t=function(r,e){var t,l,c;for(t=0,l=r.length;l>t;t++)if(c=r[t],n.call(e,c)<0)return!1;return!0},e}()}).call(this);
},{"./utils":22}],11:[function(require,module,exports){
(function (process){(function (){
(function(){var t,e,n,s,i,r,o,u,l,a,d,c,h,p,f,v,_=function(t,e){return function(){return t.apply(e,arguments)}},g=[].indexOf||function(t){for(var e=0,n=this.length;n>e;e++)if(e in this&&this[e]===t)return e;return-1};s=require("../diagrams/diagrams"),e=require("../../configuration"),r=require("../targeting/targeting"),n=require("data-layers").DL,i=require("loader").Loader,f=require("../../dom-utils").doc_ready,v=null!=v?v:require("harness"),u=null,o=null,p=[],c=null,l=null,h=!0===(null!=v?v.single:void 0),d=null,t=function(){function t(t){var s,i;null==t&&(t={}),this.dev_sessDecoded=_(this.dev_sessDecoded,this),this.h_sess_set=_(this.h_sess_set,this),this._post=_(this._post,this),this.do_vs=_(this.do_vs,this),this.do=_(this.do,this),this._do=_(this._do,this),this.o=t,this.h=null!=(i=t.harness)?i:v,this.conf=e.merged(),this.dl=null!=o?o:o=new n(this.conf,this,this.o.dataLayer),this.use_q=!0===this.conf["js:ps-q"]&&null!=this.h.q_add,s=require("./sess-min").SM,this.sm=new s(this.conf["rt:tr-ids"],this.conf["rt:a_codes"])}var a,y,b,w,m;return t.loader=new i(_d,v),t._isRelevant=function(t){return t&&(null!=_d.A[t.a]||null!=_d.G[t.g])},t._hasRelevant=function(e){return Array.isArray(e)&&e.some(t._isRelevant)},t.version=function(){return _d.v.v+" build "+_d.v.b+" ("+_d.v.d+" - "+new Date(1e3*_d.v.m).toUTCString()+")"},t.prototype.exec=function(t,e){return this.push({t:"e",steps:t,cb:e})},t.prototype.run=function(){return this.push({t:"r"})},t.prototype.push=function(t){return p.push(t),this._do()},t.prototype._do=function(){var t;if(!l&&p.length)switch(l=t=p.shift(),t.t){case"e":this.do_exec(t.steps,t.cb);break;case"r":this.do_run();break;case"v":this.do_vs(t.vs)}},t.prototype.do=function(){return l=null,this._do()},t.prototype.select=function(t){return this.exec([{a:t}]).sels[t]},t.prototype.reward=function(t,e){this.exec([{g:t,v:e}])},t.prototype.listAgents=function(){return Object.keys(_d.A)},t.prototype.hasAgent=function(t){return g.call(this.listAgents(),t)>=0},t.prototype.version=function(){return t.version()},t.prototype.do_exec=function(t,e){var n,i,r,o,u;return r=this._req(),m(r)?"function"==typeof e?e():void 0:(t=null!=(i=a(t))?i:[],w(t),r.steps=t,this.o.qa&&r.v&&(r.v.qa=!0),(u=new s.State(this.conf,r)).log("Activating: Conductrics API","i"),this._ses(u),this._hello(u),n=function(t){return function(){var e,n,s,i,r,o;for(t._process(u),e=0,s=(r=(o={items:(i=u.out).res,sels:{},traits:u.tExt(),log:!0===t.o.debug?i.log.concat():void 0,ext:Object.keys(i.ext).length?i.ext:void 0}).items).length;s>e;e++)null!=(n=r[e]).a&&(o.sels[n.a]=n.c);return null!=t.o.sess&&(o.sess=JSON.stringify(u.sess)),o}}(this),"function"==typeof e?this._init(u,function(t){return function(s){return e(!1,n()),t.do()}}(this)):(this._targ(u),o=n(),setTimeout(this.do,1),o))},t.prototype.do_run=function(t){var e,n;return null==t&&(t="#init"),e=this._req(this.o.entry+"-pre"),m(e)?void 0:(n=null!=u?u.state:new s.State(this.conf,e),"#init"===t?n.log("Activating: Conductrics Express","i"):n.log("Activating: Conductrics View-State '"+t+"'","i"),this._ses(n),this._hello(n),!0===this.o.globalEvents&&this._spaInit(n),new s.Runner(this.conf,function(t){return function(){return n.ep(t.o.entry),t._init(n,function(e){return y(t.conf["wa:ready"],function(){return t._process(n),n.log("(end)","i"),t.do()})})}}(this)).run(_d.diag,n))},t.prototype.discard=function(){return v.sess_del()},t.prototype.do_vs=function(t){var e,n,s;return null==u?void this.do():(n=u.state,s=null!=(e=this.conf["rt:spa-states"])?e:[],g.call(s,t)>=0?t!==n.vstate()||g.call(this.conf["rt:spa-states-m"],t)>=0?(n.vstate(t),this._preboot(n,function(e){return function(){return e._process(n),n.log("(end view-state)","x"),window.dispatchEvent(new CustomEvent("ConductricsStateChanged",{detail:t}))}}(this))):n.log("Already at '"+t+"'","x"):n.log("Unknown view-state '"+t+"'","x"),this.do())},t.prototype._req=function(t){var e,n,s,i;return null==t&&(t="api"),n=this.o,(i=this.h.env_get()).acc=_d.acc.c,i.ep=t,i.v.traits=n.traits,i.debug=i.debug||n.debug,i.ud=n.inputs,null==(e=i.v).vid&&(e.vid=n.vid),(!0===(s=n.dnt)||1===s||"yes"===s||"on"===s||"DNT"===s)&&(i.v.dnt=!0),i._dl=this.dl,i},t.prototype._process=function(t){var e;if(this._pre(t),new s.Runner(this.conf,this._post).run(_d.diag,t),"function"==typeof CustomEvent)try{return e=new CustomEvent("c-rt",{detail:{log:t.out.log.concat(),sel:t.out.sel}}),document.dispatchEvent(e)}catch(t){}},t.prototype._init=function(t,e){var n;this._preboot(t,(n=this,function(){return n._q_send(t),n._targ(t,e)}))},t.prototype._preboot=function(t,e){var n,s,i,r,o,u,l,a;if("function"!=typeof _wa_preboot)return e();if(o=s=t.ep(),g.call(null!=(u=this.conf["js:preboot-eps"])?u:["wax"],o)<0)return t.log("Skipping preboot ("+s+")","s"),e();if(l=a=t.vstate(),g.call(this.conf["rt:spa-states-pb"],l)<0)return t.log("Skipping preboot (view-state '"+a+"')","s"),e();r=null,i=function(n,s){return null==s&&(s={}),"string"==typeof s&&(s={vstate:s}),n&&t.tAdds(n,"pre"),"string"==typeof s.vstate&&t.vstate(s.vstate),"string"==typeof s.vid&&(t.data["v.vid"]=s.vid),"string"==typeof s.sid&&(t.data["v.sid"]=s.sid),"object"==typeof s.inputs&&t.ud(s.inputs),"boolean"==typeof s.qa&&t.qa(s.qa),"boolean"==typeof s.dnt&&t.dnt(s.dnt),"function"==typeof s.selection_callback&&(null!=t.handlers?t.handlers:t.handlers=[]).push(s.selection_callback),"function"==typeof s.presend_callback&&(t.ps_cb=s.presend_callback),t.log("Preboot done ("+(Date.now()-r)+" ms elapsed)","s"),e()};try{r=Date.now(),t.log("Preboot running","s"),_wa_preboot(i)}catch(s){n=s,t.log("Preboot error: "+n,"e"),e()}},t.prototype._targ=function(t,e){var n,s,i,o;return t.dnt()?e():(o=_d.rt.tt,i=_d.rt.ttt,(n=void 0===e)&&(e=function(){}),o.length>0?(s=new r.Targeter(this.conf,this.h,n),t.log("Resolve targeting ("+o.length+")","t"),void s.resolve(t,o,function(n,s){var r,o,u;if(n)return e(n);for(r in o=s.values)null!=(u=o[r])&&(g.call(i,r)>=0?t.tAdd(r+":"+u,"apply"):(t.log("Set value '"+r+"' to "+u,"t"),t.data["targ."+r]=u));return e()})):e())},t.prototype._pre=function(t){var e,n,s,i,r;if((e=t.r._dl).enabled()&&(r=e.get(this.conf["dl:key-tr"]),Array.isArray(r)))for(n=0,s=r.length;s>n;n++)i=r[n],t.tAdd(i,"dl");t.data["v.sels"]=t.sess.sels},t.prototype._ses=function(t){var e,n,s,i,r,o,u,l,a,d,p,f,v,_;if(_=null!=(r=t.r.v)?r:{},"string"==typeof(p=null!=(o=this.o.sess)?o:this.h.sess_get())&&p.length&&"{"!==p[0])try{p=atob(p)}catch(t){p=null}if(process.env.C_SESS_FIX_652&&h&&null!=c&&(p={}),h&&null==p&&(c=null),t.r.newv&&(t.log("Treating as a new visitor","q"),c=this.o.sess=t.sess=p=null),d=t.sess=null!=c?c:{traits:null!=(u=null!=(l=_.traits)?l.cust:void 0)?u:[],sels:{},rwds:{}},"string"!=typeof(f=null!=(a=this.o.sess)?a:p)||f.startsWith("{")||(f=function(){try{return atob(f)}catch(t){}}()),s=function(){try{return JSON.parse(f,this.sm.reviver())}catch(t){}}.call(this),h&&(c=d),b(t.sess,s),t.vnAdv(),Array.isArray(i=null!=s?s.traits:void 0))for(e=0,n=i.length;n>e;e++)v=i[e],t.tAdd(v,"init")},t.prototype._post=function(t){var e,n;return e=t.out.work.splice(0),this.use_q&&e.length&&!t.dnt()&&this.h.q_add(e),this._presend(t,e,(n=this,function(){return n.h_sess_set(t),n._send(t,e),n.use_q?n.h.q_del():void 0}))},t.prototype.h_sess_set=function(t){var e,n;if(!t.dnt()&&!t.bot()){if(e=t.sess,h&&this.conf["rt:av-sels"]&&Object.assign(e.sels,t.data["v.sels"]),e.traits=t.tSti(),e.vals=t.targ,null!=this.o.sess)return;n=function(){try{return JSON.stringify(e,this.sm.replacer())}catch(t){}}.call(this),n=btoa(n),this.h.sess_set(n,t.dirty)}},b=function(t,e){return Object.assign(t,e)},t.prototype._q_send=function(t){var e,n;if(this.use_q&&!d&&(e=this.h.q_get(),d=!0,e.length))return this._presend(t,e,(n=this,function(){return n._send(t,e),n.use_q?n.h.q_del():void 0}))},t.prototype._presend=function(t,e,n){return t.ps_cb&&Array.isArray(e)&&e.length?(t.log("Waiting for presend callback","s"),t.ps_cb({},function(s){var i,r,o;if(t.log("Presend callback returned "+typeof s,"s"),s){for(i=0,o=e.length;o>i;i++)(r=e[i]).ctx&&s.vid&&(t.log("Using external id '"+s.vid+"' from presend callback","s"),r.ctx.vid=s.vid);s.traits&&t.tAdds(s.traits,"presend",e)}return n()})):n()},t.prototype._send=function(t,e){var n,s,i;switch(s=e.length,!1){case 0!==s:return;case!t.dnt():t.log("Not sending events ("+s+") due to DNT","q");break;case!t.bot():t.log("Not sending events ("+s+") because 'bot'","q");break;case!t.muted():t.log("Not sending events ("+s+") because 'muted': "+JSON.stringify(e),"q");break;default:t.log("Sending events ("+s+")","i"),n=(i=this.conf["event-queue:sqs-url"])+"?Action=SendMessage&Version=2012-11-05&MessageBody="+encodeURIComponent(JSON.stringify(e)),i.endsWith(".fifo")&&(n+="&MessageGroupId=ctrx"),this.h.beacon(n)}},t.prototype._spaInit=function(t){h&&(null==u&&(window.addEventListener("ConductricsStateChange",function(t){return function(e){return t.on(e.type,e.detail)}}(this)),window.addEventListener("ConductricsInternalState",function(t){return function(e){return t.h_sess_set(e.detail.state)}}(this))),u={state:t})},t.prototype.on=function(t,e){var n,s,i,r;switch(t){case"ConductricsStateChange":if("wax"===this.o.entry&&(null!=(i=this.conf["rt:spa-states"])?i.length:void 0)>0)return s=function(t){return function(){return t.push({t:"v",vs:e})}}(this),(n=this.conf["rt:spa-states-ms"][e])>0?setTimeout(s,n):s();break;case"ConductricsCommands":if(Array.isArray(r=null!=e?e.commands:void 0))return this.exec(r,function(){})}},a=function(t){if("string"!=typeof t)return t;try{return JSON.parse(t)}catch(t){}},t.prototype._hello=function(t){var e;t.log(_d.v.v+" build "+_d.v.b+" ("+_d.v.d+" Deploy #"+_d.v.n+" - "+new Date(1e3*_d.v.m).toUTCString()+")","i"),t.debug&&_d.v.dn&&this.h.p_get&&(e=function(){try{return this.h.p_get()}catch(t){}}.call(this))&&t.log("Deploy Target '"+_d.v.dn+"' started loading at "+Math.ceil(e.startTime)+" ms, loaded in "+Math.ceil(e.duration)+" ms ("+e.initiatorType+")","i"),t.qa()&&t.log("QA visitor detected","q")},t.prototype.dev_sessDecoded=function(t){var e;if(null==t&&(t=this.h.sess_get()),"string"==typeof t&&t.length&&"{"!==t[0])try{t=atob(t)}catch(e){t=null}return e=JSON.parse(t,this.sm.reviver()),JSON.stringify(e)},w=function(t){},y=function(t,e){switch(t){case"doc":return f(e);default:return e()}},m=function(t){var e;if(e=!0===t.abort)try{console.log("C:\\ 'Abort' flag detected; stopping.")}catch(t){}return e},t}(),(null!=(a=function(){return"undefined"!=typeof window&&null!==window?window:this}()).Conductrics?a.Conductrics:a.Conductrics={}).ClientApi=t,("undefined"!=typeof define&&null!==define?define.amd:void 0)&&define(["ClientApi"],t),("undefined"!=typeof module&&null!==module?module.exports:void 0)&&(module.exports.ClientApi=t),("undefined"!=typeof __module&&null!==__module?__module.exports:void 0)&&(__module.exports.ClientApi=t),null!=v&&(v.ClientApi=t)}).call(this);
}).call(this)}).call(this,require('_process'))
},{"../../configuration":2,"../../dom-utils":4,"../diagrams/diagrams":16,"../targeting/targeting":21,"./sess-min":14,"_process":7,"data-layers":"data-layers","harness":"harness","loader":"loader"}],12:[function(require,module,exports){
(function(){var n,e;e={},n={mouse:null,scroll:null,has_mouse:!1,moused_down:!1},exports.ExitIntent=function(){function o(){}var u,t,r,l;return o.waitForIntent=function(n,o){return null==o&&(o={}),null==o.max&&(o.max=1),o.n=0,e[n]=o,o.mouse&&t(o),o.scroll?r(o):void 0},t=function(e){var o;if(!n.mouse)return o=function(e){return e.clientY>100?(n.moused_down=!0,document.body.removeEventListener("mousemove",o)):void 0},document.body.addEventListener("mousemove",o),n.mouse=document.body.addEventListener("mouseleave",function(e){var o,t,r,l;return(o=e.clientY<20)&&n.moused_down&&(t=o&&e.clientX<100,l=function(){try{return document.referrer.split("/").slice(0,3).join("/")}catch(n){}}(),r=0===document.location.href.indexOf(l),!t||!r)?u("mouse"):void 0})},r=function(e){var o,t,r,l,i,c,s,d,m;n.scroll||(i=null,t=null,m=null,r=null,d=null!=(c=e.scroll_speed)?c:-80,l=null!=(s=e.scroll_inter)?s:100,(o=function(){return i=null,r=0})(),function(){var e;e=function(o){return n.has_mouse=!0,document.body.removeEventListener("mousemove",e)},document.body.addEventListener("mousemove",e)}(),n.scroll=window.addEventListener("scroll",function(e){if(!n.has_mouse)return r=function(){var n;return t=window.scrollY,i&&(n=t-i),i=t,clearTimeout(m),m=setTimeout(o,l),n}(),0>d&&d>r||d>0&&r>d?u("scroll"):void 0}))},u=function(n){var o,u,t;for(o in t=[],e)(u=e[o])[n]&&(u.pns>0&&l()<u.pns||(u.n++,u.n<=u.max?t.push(u.cb()):t.push(void 0)));return t},l=function(){return"undefined"!=typeof performance&&null!==performance?performance.now():void 0},o}()}).call(this);
},{}],13:[function(require,module,exports){
(function(){exports.GA=function(){function t(){}var e,n,r;return t.get=function(conf){return window[n(conf)]},t.init=function(conf){var t,e,i,u,a,c,o,l;a=conf["x-ga:gtm"],t=window,c=n(conf),u="string"==typeof conf["x-ga:gat"],i=null!=(l=conf["x-ga:gat"])?l:"t0",a&&(null==t[c]&&(t[c]=function(){var e;return(null!=(e=t[c]).q?e.q:e.q=[]).push(arguments)}),null==(e=t[c]).l&&(e.l=1*new Date)),t[c]&&(t[c]._ci||(o=function(){var e,n;return(e=t[c]).getByName(i)?void r(e.getByName(i)):(n=e.create,e.create=function(){var t,a,c,o,l;if(o=n.apply(e,arguments),u)r(e.getByName(i));else for(t=0,a=(c=e.getAll()).length;a>t;t++)l=c[t],r(l);return o})},t[c](o),t[c]._ci=!0))},r=function(t){var n;t&&!t._ci&&(n=t.get("sendHitTask"),t.set("sendHitTask",function(t){var r;return r=n(t),e(document,"ga.conductrics",t),r}),t._ci=!0)},e=function(t,e,n){var r;window.CustomEvent?r=new CustomEvent(e,{detail:n}):(r=document.createEvent("CustomEvent")).initCustomEvent(e,!0,!0,n),t.dispatchEvent(r)},t.eventApplies=function(t,e){var n,r,i,u;if("event"!==e.get("hitType"))return!1;if("Conductrics"===e.get("eventCategory"))return!1;for(i=function(n){var r,i,u,a,c,o,l,g;if(r=e.get(n),"/"===(g=null!=(o=t["ga_"+n])?o:"")[0]&&"/"===g[g.length-1])return RegExp(g.slice(1,-1)).test(r);for(i=0,u=(l=g.split(",")).length;u>i;i++)switch(c=l[i],!1){case!("*"===c||c===r):return!0;case!(c.indexOf("*")>=0):return a=c.replace("*","[ \\S]*"),RegExp("^"+a+"$").test(r);default:return!1}},n=0,r=(u=["eventCategory","eventAction","eventLabel"]).length;r>n;n++)if(!i(u[n]))return!1;return!0},n=function(conf){var t,e;return null!=(t=null!=(e=conf["x-ga:gao"])?e:window.GoogleAnalyticsObject)?t:"ga"},t}()}).call(this);
},{}],14:[function(require,module,exports){
(function(){var s,t,n,r=function(s,t){return function(){return s.apply(t,arguments)}};s={p:"r",s:"ok",dp:"p"},t=946684800,exports.SM=function(){function e(s,t){this.ids=s,this.known_agents=t,this.reviver=r(this.reviver,this),this.replacer=r(this.replacer,this),this.known_traits=Object.keys(this.ids),this.ids_rev=n(this.ids)}return e.prototype.replacer=function(){var n,r,e,i,u,l,a,c,o,f;return n=(l=this).ids,r=l.ids_rev,i=l.known_agents,u=l.known_traits,e=function(s){return 0===s.indexOf("cust/")||0===s.indexOf("#")},a=function(s){return null==s&&(s=[]),s.map(function(s){var t;return null!=(t=n[s])?t:s}).filter(function(s){return u.includes(s)||r[s]||!e(s)})},c=null,o=null,f=[],function(r,e){var u,l,p,d,v,h,k,b;switch(""===r&&(o=null!=(d=(c=e).vts)?d:0,c._strs=f),e){case c.traits:e=a(e).join(" ");break;case c.sels:for(p in e={},v=c.sels)b=v[p],i.includes(p)&&(u=a(b.fs).join(" "),-1===(l=f.indexOf(u))&&(l=f.push(u)-1),e[p]=Object.assign({},b,{a:void 0,fs:l,p:b.p===s.p?void 0:b.p,s:b.s===s.s?void 0:b.s,dp:b.dp===s.dp?void 0:b.dp}));break;case c.rwds:for(p in e={},h=c.rwds)b=h[p],i.includes(p)&&(e[null!=(k=n[p])?k:p]=b);break;default:("ts"===r||"pvts"===r||"tvts"===r)&&e>t&&(e-=o)}return e}},e.prototype.reviver=function(){var n,r,e,i;return this,this.ids,n=this.ids_rev,r=null,e=null,i=null,function(u,l){var a,c,o,f,p,d,v,h,k,b;switch(null===r&&(e=null!=(o=(r=this).vts)?o:0,i=null!=(f=r._strs)?f:[]),k=function(s){return"number"==typeof s&&(s=i[s]),"string"==typeof s?s.split(" ").map(function(s){var t;return null!=(t=n[s])?t:s}):s},u){case"":delete r._strs;break;case"_strs":return;case"traits":case"fs":l=k(l);break;case"sels":for(c in h={},l)b=l[c],h[a=null!=(p=n[c])?p:c]=Object.assign({a:a},s,b);l=h;break;case"rwds":for(c in v={},l)b=l[c],v[a=null!=(d=n[c])?d:c]=b;l=v;break;case"ts":case"pvts":case"tvts":t>=l&&(l=e+l)}return l}},e}(),n=function(s){var t,n;for(t in n={},s)n[s[t]]=t;return n}}).call(this);
},{}],15:[function(require,module,exports){
(function(){var e,t,n;require("../../data"),e=require("../../utils").Strings;try{n=require("log-styles").logger}catch(e){}t=function(e){try{return n("C:\\ "+e,"q")}catch(e){}},function(){var n,o,r,c,i,l,s,a,u,d,f,h,m,w,p,g,v,y;if(("undefined"!=typeof document&&null!==document?document.querySelector:void 0)&&(h="c-conductrics",(m=window.location.hash&&window.location.hash.indexOf(h)>=0?window.location.hash.slice(1):window.location.search).indexOf(h)>=0||m.indexOf("__c-token")>=0)){for(f=e.qs(m),i=0,l=(w=["abort","muted","qa","debug","new","entry-enforce","preview-only"]).length;l>i;i++)if("true"===(p=y=f[s=h+"-"+(r=w[i])])||"false"===p)try{"abort"===r||"qa"===r||"entry-enforce"===r||"preview-only"===r?sessionStorage.setItem(s,y):localStorage.setItem(s,y),t("Preview: set "+s+" to "+y)}catch(e){}null!=(v=f[h+"-preview"])&&(""===v?(t("Preview: clearing "+h+"-sels"),sessionStorage.removeItem(h+"-sels")):(d=function(){try{return decodeURIComponent(decodeURIComponent(unescape(atob(v))))}catch(e){}}())&&d.length>0&&(t("Preview: set "+h+"-sels to: "+d),sessionStorage.setItem(h+"-sels",d))),"true"===f[h+"-reload"]?function(){var e,t,n;for(e in n=""+window.location.href,f)0===e.indexOf(h)&&(t=e+"="+encodeURIComponent(f[e]),n=(n=n.replace("&"+t,"")).replace(""+t,""));"?"===n[n.length-1]&&(n=n.substr(0,n.length-1)),document.location.replace(n)}():(g=_d.rt,c=function(){var e,t;return(e=document.querySelector("script[nonce]"))?null!=(t=e.nonce)?t:e.getAttribute("nonce"):void 0},(u=f["__c-token"])&&(o="c-conductrics-preview-"+u,null==document.querySelector("script#"+o))&&((n=document.createElement("script")).id=o,n.src=g.s+"&__c-token="+u,(a=c())&&(n.nonce=a),document.head.appendChild(n)))}}()}).call(this);
},{"../../data":3,"../../utils":22,"log-styles":"log-styles"}],16:[function(require,module,exports){
(function(){var t,n,e,r,s=function(t,n){return function(){return t.apply(n,arguments)}},o=[].indexOf||function(t){for(var n=0,e=this.length;e>n;n++)if(n in this&&this[n]===t)return n;return-1};e=require("../../utils"),t=require("../../bots").Bots,n=module.exports;try{r=require("log-styles").logger}catch(t){}exports.M=function(){function t(t){this.conf=t}var n,r;return t.prototype.getNodes=function(t){var n;return null!=(n=t.items)?n:[]},t.prototype.active=function(t,n){return!0},t.prototype.getConds=function(t,n){return t.conds},t.prototype.process=function(t,n){},t.prototype.isId=e.Strings.isId,t.prototype.wait=function(t,n){return setTimeout(n,t)},t.prototype.clone=function(t){return JSON.parse(JSON.stringify(t))},t.prototype.sel=function(t){return r(t.selector,t.so)},t.prototype.closest=function(t,e){return n(t,e)},r=function(t,n){var e,r,s,o,i,u;null==n&&(n={});try{s=document.querySelectorAll(t)}catch(t){}if(!s)return[];if(n.t){for(e=[],o=0,i=s.length;i>o;o++)(null!=(u=(r=s[o]).textContent)?u.indexOf(n.t):void 0)>=0&&e.push(r);s=e}return(n.i>0||n.n>0)&&(s=Array.prototype.slice.call(s,n.i,n.n)),s},n=function(t,e){if(Element.prototype.closest)return t.closest(e);try{if(t.matches(e))return t;if(t.parentNode)return n(t.parentNode,e)}catch(t){}return null},t.prototype.addCSS=function(t,n,e){var r,s;null==e&&(e=null),"undefined"!=typeof document&&null!==document&&((s=document.createElement("style")).type="text/css",s.className=n,e&&(s.id=e),null!=s.styleSheet?s.styleSheet.cssText=t:s.appendChild(document.createTextNode(t)),(r=this.getStyleNonce())&&(s.nonce=r),document.getElementsByTagName("head")[0].appendChild(s))},t.prototype.getStyleNonce=function(){var t,n,e,r;return void 0===_d.style_nonce&&(_d.style_nonce=null!=(t=null!=(n=null!=(e=document.querySelector("style[nonce]"))?e.nonce:void 0)?n:null!=(r=document.querySelector("script[nonce]"))?r.nonce:void 0)?t:null),_d.style_nonce},t}(),n.Runner=function(){function t(t,e){this.conf=t,this.ph=e,this.mf=new n.MFactory(this.conf)}var r;return t.prototype.run=function(t,n){return this.exec(t,n)},t.prototype.exec=function(t,n){return this.walk(t,n),this.ph(n)},t.prototype.walk=function(t,n){var e,s,o,i,u,l;if(null!=(i=this.mf.provide(t))&&r(i,t,n)&&("skip"!==(u=i.process(t,n,this))&&!(!0===u)))for(s=0,o=(l=i.getNodes(t)).length;o>s;s++)e=l[s],this.walk(e,n)},t.prototype.find=function(t,n,e,s){var o,i,u,l,a;if(null==s&&(s=[]),null==(l=this.mf.provide(t)))return!1;if(!r(l,t,n))return!1;for(e(t)&&s.push(t),i=0,u=(a=l.getNodes(t)).length;u>i;i++)o=a[i],this.find(o,n,e,s);return s},t.prototype.findOne=function(t,n,e){var r,s,o,i,u,l;if(e(t))return t;if(null!=(u=this.mf.provide(t)))for(o=0,i=(l=u.getNodes(t)).length;i>o;o++)if(r=l[o],s=this.findOne(r,n,e))return s},t.prototype.resume=function(t,n){var e;return e={module:"root",items:t.items.concat()},this.exec(e,n)},r=function(t,n,r){var s,o;switch(!1){case!!t.active(n,r):case!((null!=(o=s=t.getConds(n,r))?o.length:void 0)>0&&!e.Conds.evalConds(s,r,n.module)):return!1;default:return!0}},t}(),exports.Conds=e.Conds,n.MFactory=function(){function t(t){this.conf=t}return t.prototype.provide=function(t){var n;n=t.module;try{return new(0,require("./modules/"+n).m)(this.conf)}catch(t){return console.log("Can't provide '"+n+"'","e"),null}},t}(),n.State=function(){function n(n,r){var i,u,l,a,c,d,p,f,h,v,y,g,m,w,x;if(this.conf=n,null==r&&(r={}),this.tAdd=s(this.tAdd,this),this.r=r,this.out={status:200,res:[],sel:{},log:[],work:[],ext:{}},w=null!=(p=r.v)?p:{},x=Array.isArray(w.vid)&&w.vid.length>0?w.vid.join("||"):w.vid,l=!0===this.conf["qa:v-qa"]||"true"===(f=w.qa)||!0===f,this.debug=r.debug||this.conf["js:debug-all"],this.dirty={},this.pvd={},this.data={"v.ip":w.ip,"v.ua":w.ua,"v.vid":x,"v.ref":w.ref,"v.tzo":w.tzo,"v.ts":w.ts>9999999999?Math.floor(w.ts/1e3):w.ts>0?Math.floor(w.ts):null,"v.traits":["*"],"v.qa":l,"v.bot":new t(this.conf).detect(w.ua),"v.lang":w.lang,ud:{},"d.ep":null!=(h=r.ep)?h:"wax","d.dc":function(){var t;return null!=(t=r.dt)?t:_d.v.d},selex:function(t){try{return null!=document.querySelector(decodeURIComponent(t))}catch(t){}},selval:function(t){try{return document.querySelector(decodeURIComponent(t)).value}catch(t){}},seltc:function(t){try{return document.querySelector(decodeURIComponent(t)).textContent}catch(t){}},vels:function(t){return function(){return t.vels()}}(this),pvels:function(t){return function(){return t.pvels()}}(this),gh:function(t){return function(n){return t.rwdHas(n)}}(this),gc:function(t){return function(n){return t.rwdN(n)}}(this),gse:function(t){return function(n){return t.rwdEls(n)}}(this),wf:function(t){var n;try{return"function"==typeof(n=e.nested(t,window))?n():n}catch(t){}},dl:function(t){var n;return null!=(n=r._dl)?n.get(t):void 0},st:function(t){var n,r,s,i,u;try{return(r="="===t[0]&&o.call(t,":")>=0)&&(i=t.slice(1).split(":"),t=i[0],s=i[1]),u="function"==typeof(n=null!=n?n:require("harness")).st_get?n.st_get(t):void 0,r&&(u=e.Obj.read(JSON.parse(u),s)),u}catch(t){}},qfv:function(t){return function(n){var e;return(e=t.qs)?e.values[n]:null}}(this)},this.dnt(w.dnt),this.loc(null!=(v=w.loc)?v:{}),this.data["v.sid"]=w.sid,this.ud(r.ud),"string"==typeof this.r.sels)for(a=0,c=(y=this.r.sels.split(",")).length;c>a;a++)i=(g=y[a].split(":"))[0],u=g[1],this.selPre(i,u);this.conf["dl:cdl"]&&("undefined"!=typeof window&&null!==window?this._cdl=null!=window[d=this.conf["dl:cdl-key"]]?window[d]:window[d]=[]:this._cdl=this.out.ext.cdl=[]),this.tAdds(w.traits,"api"),this.vstate(null!=(m=w.vstate)?m:"#init")}var i,u,l,a;return n.prototype._conf=function(t){return this.conf[t]},u=function(t,n){var e;return null!=(e=_d.A[t])?e.a.c[n]:void 0},n.prototype.a_dc=function(t){var n;return null!=(n=_d.A[t])?n.dc:void 0},n.prototype.c_name=function(t,n){var e;return(e=_d.A[t])&&e.cn?{a:e.n,c:e.cn[n]}:{a:t,c:n}},n.prototype.loc=function(t){return t?Object.assign(this.data,{"v.loc":t,"v.loc.path":t.pathname,"v.loc.qs":e.Strings.qs(t.search),"v.loc.qx":t.protocol+"//"+t.host+t.pathname}):void 0},n.prototype.ud=function(t){return Object.assign(this.data.ud,l(t))},n.prototype.stepSet=function(t){return this.step=t},n.prototype.resp=function(t){return this.out.res.push(t)},n.prototype.ts=function(){var t;return null!=(t=this.data["v.ts"])?t:a()},n.prototype.respGet=function(t){var n,e,r,s;for(e=0,r=(s=this.out.res).length;r>e;e++)if((n=s[e]).a===t)return n},n.prototype.keep=function(){try{return window.dispatchEvent(new CustomEvent("ConductricsInternalState",{detail:{state:this}}))}catch(t){}},n.prototype.pool=function(){return this.qa()?this.conf["qa:env"]:this.conf["acc:env"]},n.prototype.done=function(t){var n,r,conf,s,o,i,u,l;conf=this.conf,i=null!=(u=t.dp)?u:this.pool(),n=conf["acc:code"],null!=t.fs&&(o=conf["rt:tr-ids"],t.fs=t.fs.map(function(t){var n;return null!=(n=o[t])?n:t})),null==t.ds&&(t.ds=_d.rt.ds),t.di=_d.v.di,s=t.ctx={},conf["pass:ua"]&&(s.ua=this.data["v.ua"]),conf["pass:ip"]&&(s.ip=this.data["v.ip"]),conf["pass:loc"]&&(s.loc=null!=(l=this.data["v.loc"])?l.href:void 0),conf["pass:vid"]&&(s.vid=this.data["v.vid"],!s.vid&&conf["pass:sid"]&&(s.vid=this.data["v.sid"])),conf["pass:sess"]&&(s.sid=this.data["v.sid"]),(conf["pass:qa"]||conf["pass:qax"])&&(s.qa=this.qa()),null!=t.a&&(t.a=e.Strings.qualify(t.a,n,null!=r?r:i)),this.out.work.push(t)},n.prototype.dnt=function(t){return"boolean"==typeof t&&(t&&this.qa()&&(this.log("DO-NOT-TRACK flag detected, but ignoring because QA Mode is in effect.","e"),t=!1),t&&this.log("DO-NOT-TRACK visitor detected; will not persist or send any data.","e"),this.data["v.dnt"]=t),!0===this.data["v.dnt"]},n.prototype.bot=function(){return null!=this.data["v.bot"]},n.prototype.ep=function(t){var n;return n=this.data,null!=t?(this.log("Entry point "+t,"i"),n["d.ep"]=t):n["d.ep"]},n.prototype.muted=function(){return this.r.muted},n.prototype.reread=function(){return this.data["v.sels"]=this.sess.sels},n.prototype.selAdd=function(t){var n,e;if(null!=(null!=t?t.a:void 0)&&null!=t.c)switch(e=this.data["v.sels"],this.out.sel[t.a]=t,n=e[t.a],t.p){case"s":if(n&&n.s!==t.s)return n.s=t.s,this.dirty.s=!0;break;default:return e[t.a]=t,null!=this.sess.rwds[t.a]&&(this.sess.rwds[t.a]={}),this.dirty.s=!0}},n.prototype.selDel=function(t){return this.selHas(t)?(this.log("Discarding selection for agent "+t,"a"),delete this.data["v.sels"][t],this.sess.rwds[t]={},this.dirty.s=!0):void 0},n.prototype.selGet=function(t){var n,e,r,s,o;return o=null!=(e=u(t,"a:sd-ttl"))?e:this.conf["a:sd-ttl"],n=this.data["v.sels"][t],s=this.ts(),null!=n&&n.ts+o>=s&&n.ts>=(null!=(r=_d.A[t])?r.drts:void 0)?(null==n.fs&&(n.fs=this.tr().concat()),n):void 0},n.prototype.selHas=function(t){return null!=this.data["v.sels"][t]},n.prototype.selRed=function(t,n){return n instanceof Array?(this.data["a.sel-reduce:"+t]=n,void this.log("Reducing choices for "+t+" to ["+n+"]","a")):this.data["a.sel-reduce:"+t]},n.prototype.selPre=function(t,n){return"string"==typeof n?(this.data["a.sel-pre:"+t]=n,this.selRed(t,[n])):this.data["a.sel-pre:"+t]},n.prototype.enfVcPre=function(){return!0===this.r.enforce_entry},n.prototype.selsOnly=function(){return!0===this.r.sels_only},n.prototype.rwdAdd=function(t,n,e){var r,s;return r=this.sess.rwds[t],Array.isArray(r[n])&&(r[n]=void 0),null==(s=null!=r[n]?r[n]:r[n]={}).n&&(s.n=0),s.n+=1,null==s.v&&(s.v=0),s.v+=e,s.ts=a(),this.dirty.r=!0},n.prototype.rwdHas=function(t){return this.rwdN(t)>0},n.prototype.rwdN=function(t){var n,e,r,s;for(n in e=0,r=this.sess.rwds)(s=r[n][t])&&s.n>e&&(e=s.n);return e},n.prototype.rwdEls=function(t){var n,e,r;for(n in e=this.sess.rwds)if((r=e[n][t])&&r.ts>0)return a()-r.ts;return null},n.prototype.rwdCnt=function(t,n){var e,r,s;return null!=(e=null!=(r=this.sess.rwds[n])&&null!=(s=r[t])?s.n:void 0)?e:0},n.prototype.polSet=function(t,n){return"string"!=typeof t||"a"!==n&&"r"!==n&&"c"!==n&&"p"!==n&&"b"!==n&&"x"!==n||(this.data["a.sel-pol:"+t]=n,0)?void 0:this.log("Setting policy for "+t+" to (policy "+n+")","a")},n.prototype.polHas=function(t){return null!=this.polGet(t)},n.prototype.polGet=function(t){return this.data["a.sel-pol:"+t]},n.prototype.vstate=function(t){var n,e,r,s,i;return e=this.data,0===arguments.length?e["v.vstate"]:(i=null!=(s=this.conf["rt:spa-states"])?s:"",n=this.vstate(),o.call(i,t)>=0&&o.call(this.conf["rt:spa-states-pv"],t)>=0&&(t!==n||o.call(this.conf["rt:spa-states-m"],t)>=0)&&(this.pvd={}),(r=o.call(i,t)>=0&&t!==n)&&(null!=e["v.vstate"]&&this.log("view-state is now '"+t+"' (was '"+n+"')","x"),"#init"!==t&&this.mdn()&&this.loc(window.location),e["v.vstate"]=t),r)},n.prototype.qa=function(t){return"boolean"==typeof t?(this.log("QA Mode: "+t,"q"),this.data["v.qa"]=t):!0===this.data["v.qa"]},n.prototype.tr=function(){return this.data["v.traits"]},n.prototype.tFor=function(t){var n,e,r,s,i,u,l,a,c,d;if(e=null!=(l=_d.A[t])?l:{},s=null!=(a=e.fs)?a:this.tr(),d=this.tr().filter(function(n){var e;return"*"===n||(e=n.split(":")[0],o.call(s,e)>=0)||0===n.indexOf("cust/c-i-")&&n!=="cust/c-i-"+t}).slice(0,this.conf["targ:traits-agent-max"]),e.aa)for(i=0,u=(c=e.aa).length;u>i;i++)(n=c[i]).tr&&(r=this.selGet(n.aa))&&d.push("cust/"+n.tr+":"+r.c);return d},n.prototype.ttFor=function(t){var n,e;return null!=(e=(null!=(n=_d.A[t])?n:{}).fs)?e:[]},n.prototype.tExt=function(){return this.tr().filter(function(t){return 0===t.indexOf("cust/")&&-1===t.indexOf("cust/c-i-")})},n.prototype.tSti=function(){return this.tr().filter(function(t){var n;return 0===t.indexOf("cust/")&&(n=t.split(":")[0],o.call(_d.rt.eph,n)<0)})},n.prototype.tMap=function(t){var n,e,r,s,o,i;for(o={"*":1},e=this.conf["rt:tr-ids"],r=0,s=t.length;s>r;r++)o[null!=(i=e[n=t[r]])?i:n]=1;return o},n.prototype.tHas=function(t){return t=i(t),o.call(this.data["v.traits"],t)>=0},n.prototype.ttHas=function(t){return this.data["v.traits"].some(function(n){return n.split(":")[0]===t})},n.prototype.tAdds=function(t,n,e){var r,s,i,u,l,a;if(Array.isArray(t))for(r=0,u=t.length;u>r;r++)l=t[r],this.tAdd(l,n,e);else if("object"==typeof t)for(s in t)switch(a=t[s],i=o.call(s,":")>=0,!1){case!(i&&a):this.tAdd(""+s,n,e);break;case!(!i&&"string"==typeof a):this.tAdd(s+":"+a,n,e)}},n.prototype.tAdd=function(t,n,e){var r,s,u,l,a,c,d,p,f,h,v,y,g,m,w;if(null==e&&(e=null),c=(f=(t=i(t)).split(":"))[0],m=f[1],"def"===n){if(this.ttHas(c))return}else if("init"===n&&o.call(_d.rt.eph,c)>=0)return;if(!m)return!1;if(t.indexOf(" ")>-1&&(t=(c=c.trim())+":"+(m=m.trim())),(r=null!=(v=(g=null!=(h=_d.T[c])?h:{}).al)?v:{})[m]&&(this.log("Trait alias '"+m+"' mapped to value '"+r[m]+"'","t"),t=c+":"+(m=r[m])),(l=0===c.indexOf("cust/"))&&!this.conf["rt:tr-ids"][t])return this.log("Unknown trait '"+t+"' ("+n+")","t"),!1;if(this.tHas(t))return!1;if(u="init"===n,null!=(s=this.data["targ."+c]))switch(p=null!=(y=g.me)?y:"l"){case"f":if(!u)return!1;this.tDel(c+":"+s);break;case"l":if(u)return!1;this.tDel(c+":"+s)}if(this.data["targ."+c]=m,this.data["v.traits"].push(t),u||l&&(this.dirty.t=!0),this.log("Added trait '"+t+"' ("+n+")","t"),e&&"l"===p)for(a=0,d=e.length;d>a;a++)w=e[a],this.tApp(c,m,w);return!0},n.prototype.tApp=function(t,n,e){var r,s,i,u,l;e.a&&(r=e.a.split(":")[1],o.call(this.ttFor(r),t)>=0&&(i=this.selGet(r))&&(u=t+":"+n,-1===i.fs.indexOf(u)&&(this.log("Post-applying trait '"+u+"' for selection '"+i.c+"' for agent '"+r+"'","t"),l=t+":",s=function(t){return!t.startsWith(l)},e.fs=e.fs.filter(s),e.fs.push(u),i.fs=i.fs.filter(s),i.fs.push(u))))},n.prototype.tDel=function(t){var n,e,r;return t=i(t),!!this.tHas(t)&&(n=(r=t.split(":"))[0],r[1],null!=n&&(this.data["targ."+n]=void 0,(e=this.data["v.traits"].indexOf(t))>-1&&this.data["v.traits"].splice(e,1),this.log("Removed trait '"+t+"'","t"),!0))},i=function(t){switch(!1){case"*"!==t:return"*";case o.call(t,"/")>=0:return"cust/"+t;default:return t}},n.prototype.plAdd=function(t){var n,e,r;return n=null!=(e=null!=(r=this.data["v.pl"])?r.split(","):void 0)?e:[],o.call(n,t)<0&&n.push(t),this.data["v.pl"]=n.join(",")},n.prototype.vn=function(){var t;return null!=(t=this.sess.vn)?t:0},n.prototype.vnAdv=function(){var t,n,e,r,s;t=null!=(e=(s=this.sess).vts)?e:0,(n=a())>t+this.conf["a:vis-ttl"]&&(t>0&&(s.pvts=t),s.vn=(null!=(r=s.vn)?r:0)+1,s.tvts=n),s.vts=n,this.log("Visit #"+s.vn,"i")},n.prototype.vels=function(){var t,n;return(t=a())-Math.min(null!=(n=this.sess.tvts)?n:0,t)},n.prototype.pvels=function(){var t,n;return(t=a())>(n=this.sess.pvts)?t-n:null},n.prototype.log=function(t,n){return this.out.log.push(t),this.debug?(t="C:\\ ["+this.out.log.length+"] "+t,r?r(t,n):console.log(t)):void 0},n.prototype.cdl_push=function(t){return this._cdl.push(t)},n.prototype.mdn=function(){return this.r.mdn},n.prototype.qualify=function(t){return e.Strings.qualify(t,this.conf["acc:code"],this.conf["acc:env"])},a=function(){return e.Dates.stamp()},l=function(t){var n,e,r,s;if(t){for(n in r={},t)("string"==(e=typeof(s=t[n]))||"number"===e||"boolean"===e)&&(r[n]=s);return r}},n}(),exports.Reapplyer=function(){function t(t,n,e,r){this.cb=t,this.targets=null!=n?n:[],this.opts=null!=e?e:{characterData:!0,subtree:!0,attributes:!0,childList:!0},this.max=null!=r?r:100,this.on=s(this.on,this);try{this.o=new MutationObserver(this.on)}catch(t){}this.n=0}return t.prototype.start=function(){var t,n,e,r,s;for(t=0,n=(e=this.targets).length;n>t;t++)s=e[t],this.o&&1===s.nodeType&&null!=(r=this.o)&&r.observe(s,this.opts)},t.prototype.stop=function(){var t;return null!=(t=this.o)?t.disconnect():void 0},t.prototype.on=function(t,n){return this.n++<this.max?(this.stop(),this.cb(),this.start()):void 0},t}()}).call(this);
},{"../../bots":1,"../../utils":22,"harness":"harness","log-styles":"log-styles"}],17:[function(require,module,exports){
(function(){exports.ScriptReg=function(){function t(){this.cbs={}}var e,n,c;return t.prototype.load=function(t,e){return this._load(t,n(t),e)},t.prototype.load_lang=function(t,n){var c;return(c=_wa_cjs[t])?n(c):void this._load(t,e(t),function(){return n(_wa_cjs[t])})},t.prototype._load=function(t,e,n){var o,r;return document.querySelector("script.c-wa[id='"+t+"']")?n():(this.cbs[t]=n,(o=document.createElement("script")).src=e,o.id=t,o.class="c-wa",(r=c())&&(o.nonce=r),void document.getElementsByTagName("head")[0].appendChild(o))},t.prototype.preload=function(t){var e,o;(e=document.createElement("link")).rel="preload",e.as="script",e.href=n(t),(o=c())&&(e.nonce=o),document.getElementsByTagName("head")[0].appendChild(e)},t.prototype.register=function(t,e){var n;"function"==typeof e&&(n=this.cbs[t])&&(_wa_cjs[t]=e,this.cbs[t]=null,n())},t.prototype.data=function(t,e){var n;null!=e&&(n=this.cbs[t])&&(_wa_cjs[t]=e,this.cbs[t]=null,n())},n=function(t){return _d.rt.js+"/"+t+"?apikey="+_d.acc.k},e=function(t){return _d.rt.la+"/"+t+"?apikey="+_d.acc.k},c=function(){var t,e;return(t=document.querySelector("script[nonce]"))?null!=(e=t.nonce)?e:t.getAttribute("nonce"):void 0},t}()}).call(this);
},{}],18:[function(require,module,exports){
(function(){var e,n=[].indexOf||function(e){for(var n=0,t=this.length;t>n;n++)if(n in this&&this[n]===e)return n;return-1};exports.dl_eventMsgApplies=function(n,t,r,i){var l;return!!n&&(((r=null!=(l=r.eventInfo)?l:r).event===n||r.eventAction===n||r.eventName===n)&&e(t,r,i))},e=function(e,t,r){var i,l,s,u,f,o,v;if(null==e&&(e=[]),0===e.length)return!0;for(i=0,f=e.length;f>i;i++){if(l="."===(u=e[i]).k[0],s="/"===u.s[0]&&"/"===u.s[u.s.length-1],null==(v=l?t[u.k.substr(1)]:r.get(u.k)))return!1;if(s){if(!RegExp(u.s.slice(1,-1)).test(v))return!1}else if(o=""+v,n.call(u.s.split(","),o)<0)return!1}return!0}}).call(this);
},{}],19:[function(require,module,exports){
(function(){exports._resolve=function(e,s,a){var r,t,c,n,u;return u=s+60*a,isFinite(u)?(t=new Date(1e3*u),r=t.getUTCDay(),c=t.getUTCHours(),n=60*c+t.getUTCMinutes(),function(){switch(e){case"wp":switch(r){case 0:case 6:return"we";default:return"wd"}break;case"dp":switch(c){case 6:case 7:case 8:case 9:case 10:case 11:return"m";case 12:case 13:case 14:case 15:case 16:return"a";case 17:case 18:case 19:case 20:return"e";default:return"n"}break;case"d":return["su","mo","tu","we","th","fr","sa"][r];case"h":return c;case"m":return n;case"z":return Math.floor(a/60);case"ts":return s}}()):null}}).call(this);
},{}],20:[function(require,module,exports){
(function(){exports.registry=function(){function n(conf){this.conf=conf}return n.prototype.getPlugin=function(n,e,t){var o,r;try{if(o=require("./plugins/"+n).p,!0===e&&!0!==r.sync)return;return(r=new o(this.conf))&&(r.harness=t),r}catch(e){return e,"undefined"!=typeof console&&null!==console&&console.log("Plugin '"+n+"' unavailable","e"),null}},n}()}).call(this);
},{}],21:[function(require,module,exports){
(function(){var t,n,r,e,l=[].indexOf||function(t){for(var n=0,r=this.length;r>n;n++)if(n in this&&this[n]===t)return n;return-1};r=require("../../utils"),t=require("./registry"),(n=exports).Plugin=function(){function t(){}return t.prototype.ttl=function(t){return 3600},t.prototype.as_code=function(t){return null!=t?t.replace(/[^A-Za-z0-9_-]/g,"-"):void 0},t.prototype.active=function(t){return!0},t.prototype.resolve=function(t,n,r,e){return e()},t}(),n.Targeter=function(){function n(n,r,e){this.conf=n,this.harness=r,this.sync_only=e,this.registry=new t.registry(this.conf),this.mode=null!=this.harness?"b":"s",this.account=null}return n.prototype.resolve=function(t,n,u){var o,s,i,a,c,d,v;return o="undefined"!=typeof _dd&&null!==_dd&&_dd.targ&&_dd.targ.v?_dd.targ.v:{},(null!=n?n.length:void 0)>0?(c={values:{}},s=null!=t.targ?t.targ:t.targ=null!=(i=null!=(a=t.sess)?a.vals:void 0)?i:{},this.sync_only&&t.log("In sync mode; async targeting lookups will be skipped.","t"),d=[],v=r.Dates.stamp(),e(n,function(n){return function(r,e){var u,i,a,f,g,h,p,y;return null!=(g=o[r])?(c.values[r]=g,e(!1,c)):(a=(h=r.split("/"))[0],u=h[1],(f=n.registry.getPlugin(a,n.sync_only,n.harness))?(f.account=n.account,f.active(t)?(y=f.ttl(u),void 0!==s[r]&&y>0&&s[r].ts+y>v?(c.values[r]=s[r].v,e(!1,c)):(i=null!=(p=f.constructor.modes)?p:[],"b"===n.mode&&l.call(i,"b")<0&&l.call(i,"s")>=0?(d.push(r),e(!1,c)):f.resolve(t,u,s[r],function(t,u){return t?e(t):(c.values[r]=u,s[r]=null!=u&&y>0?{v:u,ts:v}:void 0,null===u&&"b"===n.mode&&l.call(i,"s")>=0&&d.push(r),e())}))):e()):e())}}(this),function(n){return function(e){var l,conf,o,i,a,f,g,h,p,y,_,m;if(e)return u(e);if(conf=n.conf,0===d.length)return u(!1,c);if(y=function(t,n){s[t]={v:null!=n?n:null,ts:v}},p=conf["rt:sl-rate"],_=r.Rand.coin(p),t.log("Resolve ["+d+"] on server? "+_+" ("+p+")","t"),!_){for(i=0,f=d.length;f>i;i++)l=d[i],y(l,null);return u(!1,c)}for(m=conf["targ:lookup-url"]+"?codes="+d.join(",")+"&apikey="+_d.acc.k+"&vid="+t.data["v.vid"]+"&dt="+t.data["d.dc"](),a=0,g=(h=["ua","ip"]).length;g>a;a++)o=h[a],null!=t.data["v."+o]&&(m=m+"&"+o+"="+escape(t.data["v."+o]));return n.harness.http("GET",m,conf["targ:ext-tms"],function(n,r){var e,o,s,i,a,v,f;if(n)return t.log("Could not resolve: "+d+" ("+n+")","t"),u(!1,c);try{for(o=JSON.parse(r).data,v=[],s=0,i=d.length;i>s;s++)l=d[s],f=null!=(a=o.values[l])?a:null,t.log("Resolved on server: '"+l+"' ("+f+")","t"),null==(e=c.values)[l]&&(e[l]=f),v.push(y(l,f));return v}finally{return u(!1,c)}})}}(this))):u(!1,{})},n}(),n.geo_dm=function(conf,t){var n;switch(n=null!=conf?conf["acc:c-dom"]:void 0,!1){case void 0!==n:case null!=t&&""!==t:return"x";case l.call(n,t)<0:return"d";default:return"i"}},e=function(t,n,r){var e,l,u;return l=-1,u=t.length,(e=function(){return++l===u?r():n(t[l],function(t){return t&&r(t),e()})})()}}).call(this);
},{"../../utils":22,"./registry":20}],22:[function(require,module,exports){
(function (process){(function (){
(function(){var n,t=[].slice,r=[].indexOf||function(n){for(var t=0,r=this.length;r>t;t++)if(t in this&&this[t]===n)return t;return-1};switch(n={},!1){case"undefined"==typeof define||null===define:define(function(){return n});break;case"undefined"==typeof module||null===module:module.exports=n}n.Obj=function(){function n(){}return n.extend=function(){var n,r,e,i,o,u;for(n=arguments[0],r=0,i=(u=2<=arguments.length?t.call(arguments,1):[]).length;i>r;r++)for(e in o=u[r])n[e]=o[e];return n},n.read=function(n,t){var r;for(r=t.split(".");r.length&&(n=n[r.shift()]););return n},n}(),n.Dates=function(){function n(){}return n.now=function(){var n;return null!=(n="function"==typeof Date.now?Date.now():void 0)?n:(new Date).getTime()},n.stamp=function(){return Math.floor(this.now()/1e3)},n}(),n.Rand=function(){function n(){}return n.pick=function(n,t){var r,e,i,o,u,f;for(u=0,e=0,i=t.length;i>e;e++)u+=t[e];for(r in 0===u&&(t=n.map(function(n){return 1}),u=n.length),o=Math.random()*u,f=0,t)if((f+=t[r])>o)return n[r]},n.pickn=function(n,t,r){var e,i,o,u,f;for(r=Math.min(r,n.length),n=n.concat(),t=t.concat(),u=[],e=0,f=r;f>e;e+=1)i=this.pick(n,t),u.push(i),o=n.indexOf(i),n.splice(o,1),t.splice(o,1);return u},n.coin=function(n){return n>1||n>=0&&this.pick([!0,!1],[n,1-n])},n}(),n.Conds=function(){function t(){}var e;return t.evalConds=function(r,e,i){var o,u,f,l,c,a,s,h,d;if(!((null!=r?r.length:void 0)>0))return!1;if(s=null!=(r=r.concat())[r.length-1].mode?r.pop():{mode:"all"},0===r.length)return"all"===(d=s.mode)||"any"===d;if("sets"===s.mode)return r.length>0&&r.every(function(t){return n.Conds.evalConds(t,e,i)});if("setsor"===s.mode)return r.some(function(t){return n.Conds.evalConds(t,e,i)});switch(s.mode){case"all":for(u=0,f=r.length;f>u;u++)if(o=r[u],!t.evalCond(o,e,i))return!1;return!0;case"any":for(a=0,l=r.length;l>a;a++)if(o=r[a],t.evalCond(o,e,i))return!0;return!1;case"none":for(h=0,c=r.length;c>h;h++)if(o=r[h],t.evalCond(o,e,i))return!1;return!0;default:throw Error("Unknown conds mode '"+s.mode+"'")}},t.evalCond=function(r,e,i){var o,u,f,l,c,a,s;return null==i&&(i=""),u=r[0],l=r[1],s=r[2],u=n.Strings.interpolate(u,e.data),s=n.Strings.interpolate(s,e.data),("gt"===l||"gte"===l||"lt"===l||"lte"===l)&&("string"==typeof u&&(u=parseFloat(u)),"string"==typeof s&&(s=parseFloat(s))),c=null!=(a="function"==typeof(o=t.ops)[l]?o[l](u,s):void 0)&&a,"undefined"!=typeof process&&null!==process&&(f=c?"ct":"cf",e.log("Condition "+c+": "+r+" ("+u+") ("+s+") ["+i+"]",f)),c},t.ops={is:function(n,t){return n===t},isnt:function(n,t){return n!==t},mp:function(t,r){return!0===n.Strings.pmatch(t,r,!0)},"mp-not":function(t,r){return!1===n.Strings.pmatch(t,r,!0)},gt:function(n,t){return n>t},lt:function(n,t){return t>n},gte:function(n,t){return n>=t},lte:function(n,t){return t>=n},inr:function(n,t){var r;return Array.isArray(t)&&t[0]<=(r=+n)&&r<=t[1]},ninr:function(n,t){return!(Array.isArray(t)&&t[0]<=n&&n<=t[1])},in:function(n,t){return""!==n&&t.indexOf(n)>=0},nin:function(n,t){return""===n||-1===t.indexOf(n)},sw:function(n,t){return n.slice(0,t.length)===t},ew:function(n,t){return n.slice(-t.length)===t},"sw-not":function(n,t){return n.slice(0,t.length)!==t},"ew-not":function(n,t){return n.slice(-t.length)!==t},re:function(n,t){try{return RegExp(t).test(n)}catch(n){return n,!1}},"re-not":function(n,t){try{return!1===RegExp(t).test(n)}catch(n){return n,!1}},sub:function(n,t){return("function"==typeof n.indexOf?n.indexOf(t):void 0)>=0},"sub-not":function(n,t){return!(("function"==typeof n.indexOf?n.indexOf(t):void 0)>=0)},"has-any":function(n,t){var i,o,u;if(!((n=e(n)).length>0&&t.length>0))return!1;for(i=0,o=t.length;o>i;i++)if(u=t[i],r.call(n,u)>=0)return!0;return!1},"has-all":function(n,t){var i,o,u;if(!((n=e(n)).length>0&&t.length>0))return!1;for(i=0,o=t.length;o>i;i++)if(u=t[i],r.call(n,u)<0)return!1;return!0},"has-none":function(n,t){var i,o,u;if(!((n=e(n)).length>0&&t.length>0))return!0;for(i=0,o=t.length;o>i;i++)if(u=t[i],r.call(n,u)>=0)return!1;return!0}},e=function(n){switch(!1){case""!==n:return[];case"string"!=typeof n:return n.split(",");default:return n}},t}(),n.Strings=function(){function n(){}var t,r;return t=/^[A-Za-z0-9_-]+$/,r=/\$\{([A-Za-z0-9.:_=%-]+)\}/g,n.isId=function(n,r){var e,i,o;if(null==r&&(r=!1),"undefined"===n||"string"!=typeof n)return!1;if(r){if(!((o=n.split(":")).length>1))return!1;for(e=0,i=o.length;i>e;e++)if(n=o[e],!this.isId(n))return!1;return!0}return"string"==typeof n&&n.length<=100&&t.test(n)},n.isValidExtenalId=function(n,t){return null==t&&(t=500),"string"==typeof n&&n.length<=t&&n.trim()===n&&!/['"“”]+/.test(n)&&/^[ \S]+$/.test(n)},n.interpolate=function(t,r){var e,i,o,u,f,l;if(Array.isArray(t))return t;if(0===(o=n.interkeys(""+t)).length)return t;for(f=""+t,e=0,u=o.length;u>e;e++)i=o[e],l=n.propeval(i,r),f=f.replace("${"+i+"}",null!=l?l:"");return f},n.interkeys=function(n){var t,e;if("string"!=typeof n)return[];if(-1===n.indexOf("${"))return[];if("${"===n.slice(0,2)&&-1===n.indexOf("::")&&n.indexOf("}")===n.length-1)return[n.slice(2,-1)];for(e=[];null!=(t=r.exec(n));)e.push(""+t[1]);return e},n.propeval=function(n,t){var r,e,i,o,u,f;for(f=t,r=e=0,i=(u=o=n.split("::")).length;i>e&&null!=(f=f[u[r]]);r=++e)if("function"==typeof f)return f(o[r+1]);return f},n.isNum=function(n){return""+ +n===n},n.parseUrl=function(n){var t,r,e,i,o,u,f;switch(!1){case!(null==n):return null;case"object"!=typeof n:return n;case"undefined"==typeof window||null===window:if(window.location.href===n)return window.location;try{return new window.URL(n)}catch(l){l;try{for(t=$("<a>",{href:n})[0],o={},r=0,i=(u=["hash","hostname","href","pathname","port","protocol","search"]).length;i>r;r++)o[e=u[r]]=null!=(f=t[e])?""+f:void 0;return o.pathname.length>0&&"/"!==o.pathname[0]&&(o.pathname="/"+o.pathname),o}catch(n){return void n}}break;default:return require("url").parse(n)}},n.pmatch=function(n,t,r){return null==r&&(r=!1),r&&(n=this.pnorm(n),t=this.pnorm(t)),t=t.replace(/\*/g,"[\\S]*"),RegExp("^"+t+"$").test(n)},n.pnorm=function(n){return n.length>1&&"/"!==n.slice(-1)&&"*"!==n.slice(-1)?n+"/":n},n.qualify=function(n,t,r){return-1===n.indexOf(":")?t+":"+n+":"+r:n},n.qs=function(n){var t,r,e,i,o,u,f;if("function"==typeof URLSearchParams)try{return Object.fromEntries(new URLSearchParams(n).entries())}catch(n){}if(u={},"string"!=typeof n)return u;for(t=0,e=(o=(n=n.trim().replace(/^(\?|#|&)/,"")).split("&")).length;e>t;t++)r=(i=o[t].replace(/\+/g," ").split("=")).shift(),f=i.length>0?i.join("="):void 0,u[decodeURIComponent(r)]=null!=f?decodeURIComponent(f):null;return u},n}(),n.nested=function(n,t,r){return null==r&&(r="."),n.split(r).reduce(function(n,t){return null!=n?n[t]:void 0},t)},n.arrayFrom=function(n){return Array.from?Array.from(n):[].slice.call(n)},n.waitFor=function(n,t,r,e){var i,o;o=0,(i=function(){var u;return o++,(u=r())?e(u):o>=t?void 0:setTimeout(i,n)})()}}).call(this);
}).call(this)}).call(this,require('_process'))
},{"_process":7,"url":6}],"data-layers":[function(require,module,exports){
(function(){var t=function(t,n){return function(){return t.apply(n,arguments)}},n=[].indexOf||function(t){for(var n=0,e=this.length;e>n;n++)if(n in this&&this[n]===t)return n;return-1};exports.DL=function(){function e(conf,n,e,s){this.conf=conf,this.listener=n,null==e&&(e="dataLayer"),null==s&&(s=window),this.sub=t(this.sub,this),this._on=t(this._on,this),this.subs=[],this.dl=function(){switch(typeof e){case"string":return null!=s[e]?s[e]:s[e]=[];case"object":return e;default:return}}(),this.enabled()&&(null==s.DataLayerHelper&&require("dl-helper"),this.dlh=new s.DataLayerHelper(this.dl,this._on,!0))}return e.prototype.enabled=function(){var t;return"function"==typeof(null!=(t=this.dl)?t.push:void 0)},e.prototype.get=function(t){return this.enabled()?this.dlh.get(t):void 0},e.prototype.push=function(t,n){var e;this.enabled()&&(null===t?this.dl.push(n):this.dl.push(((e={event:t})[""+t]=n,e)))},e.prototype._on=function(t,n){var e,s,i,r,u,o,h;switch(!1){case"string"!=typeof(h=n[this.conf["dl:key-vs"]]):return this.listener.on("ConductricsStateChange",h);case!Array.isArray(e=n[this.conf["dl:key-ex"]]):return this.listener.on("ConductricsCommands",{commands:e});case"string"!=typeof n.event:for(o=[],i=0,r=(u=this.subs).length;r>i;i++)s=u[i],o.push(s(n));return o}},e.prototype.sub=function(t){var e,s,i,r;if(!(n.call(this.subs,t)>=0)){if(this.enabled()&&this.conf["dl:past-events"])for(e=0,s=(r=this.dl).length;s>e;e++)"string"==typeof(i=r[e]).event&&t(i);this.subs.push(t)}},e.prototype.unsub=function(t){return this.subs.splice(this.subs.indexOf(t),1)},e}()}).call(this);
},{"dl-helper":"dl-helper"}],"dl-helper":[function(require,module,exports){
!function(){var t=/\[object (Boolean|Number|String|Function|Array|Date|RegExp)\]/;function r(r){return null==r?String(r):(r=t.exec(Object.prototype.toString.call(Object(r))))?r[1].toLowerCase():"object"}function n(t,r){return Object.prototype.hasOwnProperty.call(Object(t),r)}function e(t){if(!t||"object"!=r(t)||t.nodeType||t==t.window)return!1;try{if(t.constructor&&!n(t,"constructor")&&!n(t.constructor.prototype,"isPrototypeOf"))return!1}catch(t){return!1}for(var e in t);return void 0===e||n(t,e)}function i(t,r,n){this.b=t,this.f=r||function(){},this.d=!1,this.a={},this.c=[],this.e=function(t){return{set:function(r,n){a(c(r,n),t.a)},get:function(r){return t.get(r)}}}(this),o(this,t,!n);var e=t.push,i=this;t.push=function(){var r=[].slice.call(arguments,0),n=e.apply(t,r);return o(i,r),n}}function o(t,n,i){for(t.c.push.apply(t.c,n);!1===t.d&&0<t.c.length;){if("array"==r(n=t.c.shift()))t:{var o=n,f=t.a;if("string"==r(o[0])){for(var u=o[0].split("."),s=u.pop(),p=(o=o.slice(1),0);p<u.length;p++){if(void 0===f[u[p]])break t;f=f[u[p]]}try{f[s].apply(f,o)}catch(t){}}}else if("function"==typeof n)try{n.call(t.e)}catch(t){}else{if(!e(n))continue;for(var l in n)a(c(l,n[l]),t.a)}i||(t.d=!0,t.f(t.a,n),t.d=!1)}}function c(t,r){for(var n={},e=n,i=t.split("."),o=0;o<i.length-1;o++)e=e[i[o]]={};return e[i[i.length-1]]=r,n}function a(t,i){for(var o in t)if(n(t,o)){var c=t[o];"array"==r(c)?("array"==r(i[o])||(i[o]=[]),a(c,i[o])):e(c)?(e(i[o])||(i[o]={}),a(c,i[o])):i[o]=c}}window.DataLayerHelper=i,i.prototype.get=function(t){var r=this.a;t=t.split(".");for(var n=0;n<t.length;n++){if(void 0===r[t[n]])return;r=r[t[n]]}return r},i.prototype.flatten=function(){this.b.splice(0,this.b.length),this.b[0]={},a(this.a,this.b[0])}}();
},{}],"harness":[function(require,module,exports){
(function(){var t,e,n,o,r,c,u,s,i;n="cp-sess",e="cp-hold",s=require("../../dom-utils"),c=s.cookie_set,r=s.cookie_get,o=function(t){try{return localStorage.getItem(t)}catch(t){}},module.exports=t={single:!0,sess_get:function(){return r(n)},sess_set:function(t){try{c(n,t)}catch(t){}},sess_del:function(){try{c(n,"",0)}catch(t){}},beacon:function(e,n){navigator.sendBeacon?navigator.sendBeacon(e,n):t.http("GET",e)},http:function(t,e,n,o){var r;null==n&&(n=2e3),r=new XMLHttpRequest,null!=o&&(r.onload=function(){return o(!1,r.responseText)},r.ontimeout=function(){return o("timeout")},r.onerror=function(){return o("HTTP error ("+r.status+")")}),r.open(t,e),r.timeout=n,r.send()},st_get:function(t){var e,n;if(t)try{return null!=(e=null!=(n=r(t))?n:sessionStorage.getItem(t))?e:localStorage.getItem(t)}catch(t){}},env_get:function(){var t,e,n,r;if(t="true"===o("c-conductrics-new"))try{localStorage.removeItem("c-conductrics-new")}catch(t){}return{mdn:(e=u())?"m":"n",v:{ua:navigator.userAgent,loc:window.location,ref:window.document.referrer,ts:-1,tzo:0-(new Date).getTimezoneOffset(),dnt:!e||1===(n=navigator.doNotTrack)||"1"===n||navigator.globalPrivacyControl||!i(),vid:this.st_get(_d.conf["targ:vid"]),qa:this.st_get(_d.conf["qa:st-key"]),lang:null!=(r=document.documentElement.lang)?r:navigator.language},debug:"true"===o("c-conductrics-debug"),muted:"true"===o("c-conductrics-muted"),abort:"true"===this.st_get("c-conductrics-abort"),newv:t,sels:this.st_get("c-conductrics-sels"),enforce_entry:"true"===this.st_get("c-conductrics-entry-enforce"),sels_only:"true"===this.st_get("c-conductrics-preview-only")}},log:function(){return"undefined"!=typeof console&&null!==console?console.log.call(this,arguments):void 0},q_get:function(){var t;try{t=JSON.parse(sessionStorage.getItem(e))}catch(t){}return Array.isArray(t)||(t=[]),t},q_add:function(t){t.length>0&&sessionStorage.setItem(e,JSON.stringify(this.q_get().concat(t)))},q_del:function(){try{return sessionStorage.removeItem(e)}catch(t){}},p_get:function(){return"undefined"!=typeof performance&&null!==performance?performance.getEntriesByType("resource").find(function(t){var e;return(null!=(e=t.name)?e.indexOf(_d.v.d):void 0)>-1}):void 0}},u=function(){try{return"undefined"!=typeof document&&null!==document&&null!=window.addEventListener&&null!=window.localStorage&&null!=window.atob}catch(t){return!1}},i=function(){var t;try{return t="c-storage-check",localStorage.setItem(t,1),localStorage.removeItem(t),!0}catch(t){return!1}}}).call(this);
},{"../../dom-utils":4}],"jsonpack":[function(require,module,exports){
("undefined"!=typeof define&&define.amd?define:function(e,r){var n=r();if("undefined"!=typeof exports)for(var t in n)exports[t]=n[t];else window.jsonpack=n})([],function(){var e=function(e){return"string"!=typeof e?e:e.replace(/[\+ \|\^\%]/g,function(e){return{" ":"+","+":"%2B","|":"%7C","^":"%5E","%":"%25","~":"%7E"}[e]})},r=function(e){return"string"!=typeof e?e:e.replace(/\+|%2B|%7C|%5E|%25/g,function(e){return{"+":" ","%2B":"+","%7C":"|","%5E":"^","%25":"%","%7E":"~"}[e]})},n=function(e){return Number.prototype.toString.call(e,36).toUpperCase()},t=function(e){return parseInt(e,36)},i=Array.prototype.indexOf||function(e,r){for(var n=r||0,t=this.length;t>n;n++)if(this[n]===e)return n;return-1};return{JSON:JSON,pack:function(r,t){t=t||{},r="string"==typeof r?this.JSON.parse(r):r;var s={strings:[],integers:[],floats:[]},f=function r(t){var f,u=typeof t;if(null===t)return{type:"null",index:-3};if(void 0===t)return{type:"undefined",index:-5};if(t instanceof Array){for(var a=["@"],o=0;o<t.length;o++)a.push(r(t[o]));return a}if("object"===u){for(var p in a=["$"],t)t.hasOwnProperty(p)&&(a.push(r(p)),a.push(r(t[p])));return a}if(""===t)return{type:"empty",index:-4};if("string"===u)return-1==(f=i.call(s.strings,t))&&(s.strings.push(e(t)),f=s.strings.length-1),{type:"strings",index:f};if("number"===u&&t%1==0)return-1==(f=i.call(s.integers,t))&&(s.integers.push(n(t)),f=s.integers.length-1),{type:"integers",index:f};if("number"===u)return-1==(f=i.call(s.floats,t))&&(s.floats.push(t),f=s.floats.length-1),{type:"floats",index:f};if("boolean"===u)return{type:"boolean",index:t?-1:-2};throw Error("Unpack type "+typeof t)}(r),u=s.strings.length,a=s.integers.length,o=(s.floats.length,s.strings.join("|"));return o+="^"+s.integers.join("|"),o+="^"+s.floats.join("|"),o+="^"+function e(r){if(r instanceof Array){for(var t=r.shift(),i=0;i<r.length;i++)t+=e(r[i])+"|";return("|"===t[t.length-1]?t.slice(0,-1):t)+"]"}var s=r.type,f=r.index;if("strings"===s)return n(f);if("integers"===s)return n(u+f);if("floats"===s)return n(u+a+f);if("boolean"===s)return r.index;if("null"===s)return-3;if("undefined"===s)return-5;if("empty"===s)return-4;throw new TypeError("The item is alien!")}(f),t.debug?{dictionary:s,ast:f,packed:o}:o},unpack:function(e,n){if("string"!=typeof e)return e;n=n||{};var i=e.split("^"),s=[],f=i[0];if(""!==f){f=f.split("|");for(var u=0;u<f.length;u++)s.push(r(f[u]))}if(""!==(f=i[1]))for(f=f.split("|"),u=0;u<f.length;u++)s.push(t(f[u]));if(""!==(f=i[2]))for(f=f.split("|"),u=0;u<f.length;u++)s.push(parseFloat(f[u]));f=void 0;var a="",o=[];for(u=0;u<i[3].length;u++){var p=i[3][u];"|"===p||"$"===p||"@"===p||"]"===p?(a&&(o.push(t(a)),a=""),"|"!==p&&o.push(p)):a+=p}var l=o.length,h=0;return function e(){var r=o[h++];if("@"===r){for(var n=[];l>h;h++){if("]"===(t=o[h]))return n;if("@"===t||"$"===t)n.push(e());else switch(t){case-1:n.push(!0);break;case-2:n.push(!1);break;case-3:n.push(null);break;case-5:n.push(void 0);break;case-4:n.push("");break;default:n.push(s[t])}}return n}if("$"===r){for(n={};l>h;h++){var t,i=o[h];if("]"===i)return n;if(i=-4===i?"":s[i],"@"===(t=o[++h])||"$"===t)n[i]=e();else switch(t){case-1:n[i]=!0;break;case-2:n[i]=!1;break;case-3:n[i]=null;break;case-5:n[i]=void 0;break;case-4:n[i]="";break;default:n[i]=s[t]}}return n}throw new TypeError("Bad token "+r+" isn't a type")}()}}});
},{}],"loader":[function(require,module,exports){
(function(){exports.Loader=function(){function n(){}return n}()}).call(this);

},{}],"log-styles":[function(require,module,exports){
(function(){var o;o={e:"color:#D50000;",a:"color:#2962FF;",g:"color:#2E7D32;",t:"color:#359996;",s:"color:#AA00FF;",x:"color:#6A1B9A;",ct:"color:#546E7A;",cf:"color:#607D8B;",q:"color:#FF6D00;",i:"color:#00BFA5;"},exports.logger=function(c,l){return console.log("%c"+c,o[l])}}).call(this);
},{}],"tinybind":[function(require,module,exports){
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t=t||self).tinybind=e()}(this,function(){"use strict";var t=["prefix","templateDelimiters","rootInterface","preloadData","handler"],e=["binders","formatters","adapters"],i=/^'.*'$|^".*"$/;function n(t){var e=0,n=t;return i.test(t)?n=t.slice(1,-1):"true"===t?n=!0:"false"===t?n=!1:"null"===t?n=null:"undefined"===t?n=void 0:isNaN(t)?e=1:n=Number(t),{type:e,value:n}}function r(t,e){for(var i,n,r=t.length,s=0,a=e[0],o=e[1];s<r;){if((n=t.indexOf(a,s))<0){i&&i.push({type:0,value:t.slice(s)});break}if(i=i||[],0<n&&s<n&&i.push({type:0,value:t.slice(s,n)}),s=n+a.length,(n=t.indexOf(o,s))<0){var h=t.slice(s-o.length),c=i[i.length-1];c&&0===c.type?c.value+=h:i.push({type:0,value:h});break}c=t.slice(s,n).trim(),i.push({type:1,value:c}),s=n+o.length}return i}var s,a,o,h={binders:{},formatters:{},adapters:{},_prefix:"rv",_fullPrefix:"rv-",get prefix(){return this._prefix},set prefix(t){this._prefix=t,this._fullPrefix=t+"-"},parseTemplate:r,parseType:n,templateDelimiters:["{","}"],rootInterface:".",preloadData:!0,handler:function(t,e,i){this.call(t,e,i.view.models)},fallbackBinder:function(t,e){null!=e?t.setAttribute(this.type,e):t.removeAttribute(this.type)},configure:function(t){var i=this;t&&Object.keys(t).forEach(function(n){var r=t[n];-1<e.indexOf(n)?Object.keys(r).forEach(function(t){i[n][t]=r[t]}):i[n]=r})}};function c(t){return"object"==typeof t&&null!==t}var u=function(){function t(t,e,i){this.keypath=e,this.callback=i,this.objectPath=[],this.parse(),this.obj=this.getRootObject(t),c(this.target=this.realize())&&this.set(!0,this.key,this.target,this.callback)}t.updateOptions=function(t){s=t.adapters,a=Object.keys(s),o=t.rootInterface},t.tokenize=function(t,e){for(var i,n=[],r={i:e,path:""},s=0;s<t.length;s++)i=t.charAt(s),~a.indexOf(i)?(n.push(r),r={i:i,path:""}):r.path+=i;return n.push(r),n};var e=t.prototype;return e.parse=function(){var e,i;if(!a.length)throw new Error("[Observer] Must define at least one adapter interface.");e=~a.indexOf(this.keypath[0])?(i=this.keypath[0],this.keypath.substr(1)):(i=o,this.keypath),this.tokens=t.tokenize(e,i),this.key=this.tokens.pop()},e.realize=function(){for(var t,e,i=this.obj,n=-1,r=0;r<this.tokens.length;r++)e=this.tokens[r],c(i)?(void 0!==this.objectPath[r]?i!==(t=this.objectPath[r])&&(this.set(!1,e,t,this),this.set(!0,e,i,this),this.objectPath[r]=i):(this.set(!0,e,i,this),this.objectPath[r]=i),i=this.get(e,i)):(-1===n&&(n=r),(t=this.objectPath[r])&&this.set(!1,e,t,this));return-1!==n&&this.objectPath.splice(n),i},e.sync=function(){var t,e,i;(t=this.realize())!==this.target?(c(this.target)&&this.set(!1,this.key,this.target,this.callback),c(t)&&this.set(!0,this.key,t,this.callback),e=this.value(),this.target=t,((i=this.value())!==e||i instanceof Function)&&this.callback.sync()):t instanceof Array&&this.callback.sync()},e.value=function(){if(c(this.target))return this.get(this.key,this.target)},e.setValue=function(t){c(this.target)&&s[this.key.i].set(this.target,this.key.path,t)},e.get=function(t,e){return s[t.i].get(e,t.path)},e.set=function(t,e,i,n){s[e.i][t?"observe":"unobserve"](i,e.path,n)},e.unobserve=function(){for(var t,e,i=0;i<this.tokens.length;i++)e=this.tokens[i],(t=this.objectPath[i])&&this.set(!1,e,t,this);c(this.target)&&this.set(!1,this.key,this.target,this.callback)},e.getRootObject=function(t){var e,i;if(!t.$parent)return t;for(e=(this.tokens.length?this.tokens[0]:this.key).path,i=t;i.$parent&&void 0===i[e];)i=i.$parent;return i},t}();function l(t,e){var i=!1;if(3===e.nodeType){var n=r(e.data,h.templateDelimiters);if(n){for(var s=0;s<n.length;s++){var a=n[s],o=document.createTextNode(a.value);e.parentNode.insertBefore(o,e),1===a.type&&t.buildBinding(o,null,a.value,m,null)}e.parentNode.removeChild(e)}i=!0}else 1===e.nodeType&&(i=t.traverse(e));if(!i)for(var c=0;c<e.childNodes.length;c++)l(t,e.childNodes[c])}function f(t,e){return t=t.binder&&t.binder.priority||0,(e.binder&&e.binder.priority||0)-t}function d(t){return t.trim()}function p(t){return null!=t?t.toString():void 0}var b=/[^\s']+|'([^']|'[^\s])*'|"([^"]|"[^\s])*"/g,v=/\s+/,y=function(){function t(t,e,i,n,r,s,a){this.view=t,this.el=e,this.type=i,this.keypath=n,this.binder=r,this.arg=s,this.formatters=a,this.formatterObservers={},this.model=void 0}var e=t.prototype;return e.observe=function(t,e){return new u(t,e,this)},e.parseTarget=function(){var t;this.keypath?0===(t=n(this.keypath)).type?this.value=t.value:(this.observer=this.observe(this.view.models,this.keypath),this.model=this.observer.target):this.value=void 0},e.parseFormatterArguments=function(t,e){var i=this;return t.map(n).map(function(t,n){var r=t.type;t=t.value;return 0===r?t:(i.formatterObservers[e]||(i.formatterObservers[e]={}),(r=i.formatterObservers[e][n])||(r=i.observe(i.view.models,t),i.formatterObservers[e][n]=r),r.value())})},e.formattedValue=function(t){var e=this;return this.formatters.reduce(function(t,i,n){var r=(i=i.match(b)).shift();r=e.view.options.formatters[r],i=e.parseFormatterArguments(i,n);return r&&r.read instanceof Function?t=r.read.apply(r,[t].concat(i)):r instanceof Function&&(t=r.apply(void 0,[t].concat(i))),t},t)},e.eventHandler=function(t){var e=this,i=e.view.options.handler;return function(n){i.call(t,this,n,e)}},e.set=function(t){t=t instanceof Function&&!this.binder.function?this.formattedValue(t.call(this.model)):this.formattedValue(t);var e=this.binder.routine||this.binder;e instanceof Function&&e.call(this,this.el,t)},e.sync=function(){this.observer?(this.model=this.observer.target,this.set(this.observer.value())):this.set(this.value)},e.publish=function(){var t,e=this;this.observer&&(t=this.formatters.reduceRight(function(t,i,n){var r=(i=i.split(v)).shift();r=e.view.options.formatters[r],i=e.parseFormatterArguments(i,n);return r&&r.publish?r.publish.apply(r,[t].concat(i)):t},this.getValue(this.el)),this.observer.setValue(t))},e.bind=function(){this.parseTarget(),this.binder.hasOwnProperty("bind")&&this.binder.bind.call(this,this.el),this.view.options.preloadData&&this.sync()},e.unbind=function(){var t=this;this.binder.unbind&&this.binder.unbind.call(this,this.el),this.observer&&this.observer.unobserve(),Object.keys(this.formatterObservers).forEach(function(e){var i=t.formatterObservers[e];Object.keys(i).forEach(function(t){i[t].unobserve()})}),this.formatterObservers={}},e.update=function(t){void 0===t&&(t={}),this.observer&&(this.model=this.observer.target),this.binder.update&&this.binder.update.call(this,t)},e.getValue=function(t){if(this.binder&&this.binder.getValue)return this.binder.getValue.call(this,t);var e=t;if("checkbox"===e.type)return e.checked;if("select-multiple"!==e.type)return e.value;for(var i,n=[],r=0;r<e.options.length;r++)(i=e.options[r]).selected&&n.push(i.value);return n},t}(),m={routine:function(t,e){t.data=null!=e?e:""}},g=/((?:'[^']*')*(?:(?:[^\|']*(?:'[^']*')+[^\|']*)+|[^\|]+))|^$/g,k=function(){function t(t,e,i){t.jquery||t instanceof Array?this.els=t:this.els=[t],this.models=e,this.options=i,this.build()}var e=t.prototype;return e.buildBinding=function(t,e,i,n,r){var s=(i=i.match(g).map(d)).shift();this.bindings.push(new y(this,t,e,s,n,r,i))},e.build=function(){this.bindings=[];for(var t=this.els,e=0,i=t.length;e<i;e++)l(this,t[e]);this.bindings.sort(f)},e.traverse=function(t){for(var e,i,n,r,s=h._fullPrefix,a="SCRIPT"===t.nodeName||"STYLE"===t.nodeName,o=t.attributes,c=[],u=this.options.starBinders,l=0,f=o.length;l<f;l++){var d=o[l];if(0===d.name.indexOf(s)){if(e=d.name.slice(s.length),r=void 0,!(i=this.options.binders[e]))for(var p=0;p<u.length;p++)if(n=u[p],e.slice(0,n.length-1)===n.slice(0,-1)){i=this.options.binders[n],r=e.slice(n.length-1);break}if((i=i||h.fallbackBinder).block)return this.buildBinding(t,e,d.value,i,r),t.removeAttribute(d.name),!0;c.push({attr:d,binder:i,type:e,arg:r})}}for(var b=0;b<c.length;b++){var v=c[b];this.buildBinding(t,v.type,v.attr.value,v.binder,v.arg),t.removeAttribute(v.attr.name)}return a},e.bind=function(){this.bindings.forEach(function(t){t.bind()})},e.unbind=function(){this.bindings.forEach(function(t){t.unbind()})},e.sync=function(){this.bindings.forEach(function(t){t.sync()})},e.publish=function(){this.bindings.forEach(function(t){t.binder&&t.binder.publishes&&t.publish()})},e.update=function(t){var e=this;void 0===t&&(t={}),Object.keys(t).forEach(function(i){e.models[i]=t[i]}),this.bindings.forEach(function(e){e.update&&e.update(t)})},t}(),O=["push","pop","shift","unshift","sort","reverse","splice"],_={counter:0,weakmap:{},weakReference:function(t){var e;return t.hasOwnProperty("__rv")||(e=this.counter++,Object.defineProperty(t,"__rv",{value:e})),this.weakmap[t.__rv]||(this.weakmap[t.__rv]={callbacks:{}}),this.weakmap[t.__rv]},cleanupWeakReference:function(t,e){Object.keys(t.callbacks).length||t.pointers&&Object.keys(t.pointers).length||delete this.weakmap[e]},stubFunction:function(t,e){var i=t[e],n=this.weakReference(t),r=this.weakmap;t[e]=function(){for(var e=arguments.length,s=new Array(e),a=0;a<e;a++)s[a]=arguments[a];var o=i.apply(t,s);return Object.keys(n.pointers).forEach(function(t){var e=n.pointers[t];r[t]&&r[t].callbacks[e]instanceof Array&&r[t].callbacks[e].forEach(function(t){t.sync()})}),o}},observeArray:function(t,e,i){var n,r=this;t instanceof Array&&((n=this.weakReference(t)).pointers||(n.pointers={},O.forEach(function(e){r.stubFunction(t,e)})),n.pointers[e]||(n.pointers[e]=[]),-1===n.pointers[e].indexOf(i))&&n.pointers[e].push(i)},unobserveArray:function(t,e,i){var n,r;t instanceof Array&&null!=t.__rv&&(n=this.weakmap[t.__rv])&&(r=n.pointers[e])&&(-1<(i=r.indexOf(i))&&r.splice(i,1),r.length||delete n.pointers[e],this.cleanupWeakReference(n,t.__rv))},observe:function(t,e,i){var n,r,s=this,a=this.weakReference(t).callbacks;a[e]||(a[e]=[],(r=Object.getOwnPropertyDescriptor(t,e))&&(r.get||r.set||!r.configurable))||(n=t[e],Object.defineProperty(t,e,{enumerable:!0,get:function(){return n},set:function(i){var r;i!==n&&(s.unobserveArray(n,t.__rv,e),n=i,r=s.weakmap[t.__rv])&&((r=r.callbacks[e])&&r.forEach(function(t){t.sync()}),s.observeArray(i,t.__rv,e))}})),-1===a[e].indexOf(i)&&a[e].push(i),this.observeArray(t[e],t.__rv,e)},unobserve:function(t,e,i){var n,r=this.weakmap[t.__rv];r&&(n=r.callbacks[e])&&(-1<(i=n.indexOf(i))&&(n.splice(i,1),n.length||(delete r.callbacks[e],this.unobserveArray(t[e],t.__rv,e))),this.cleanupWeakReference(r,t.__rv))},get:function(t,e){return t[e]},set:function(t,e,i){t[e]=i}};function w(t,e,i){var n=t.el.cloneNode(!0);return(e=new k(n,e,t.view.options)).bind(),t.marker.parentNode.insertBefore(n,i),e}var j={"on-*":{function:!0,priority:1e3,unbind:function(t){this.handler&&t.removeEventListener(this.arg,this.handler)},routine:function(t,e){this.handler&&t.removeEventListener(this.arg,this.handler),this.handler=this.eventHandler(e),t.addEventListener(this.arg,this.handler)}},"each-*":{block:!0,priority:4e3,bind:function(t){this.marker?this.iterated.forEach(function(t){t.bind()}):(this.marker=document.createComment(" tinybind: "+this.type+" "),this.iterated=[],t.parentNode.insertBefore(this.marker,t),t.parentNode.removeChild(t))},unbind:function(t){this.iterated&&this.iterated.forEach(function(t){t.unbind()})},routine:function(t,e){var i=this,n=this.arg,r=(e=e||[],t.getAttribute("index-property")||"$index");if(e.forEach(function(t,e){var s={$parent:i.view.models},a=(s[r]=e,s[n]=t,i.iterated[e]);if(a)if(a.models[n]!==t){for(var o,h,c=e+1;c<i.iterated.length;c++)if((h=i.iterated[c]).models[n]===t){o=c;break}void 0!==o?(i.iterated.splice(o,1),i.marker.parentNode.insertBefore(h.els[0],a.els[0]),h.models[r]=e):h=w(i,s,a.els[0]),i.iterated.splice(e,0,h)}else a.models[r]=e;else e=i.marker,i.iterated.length&&(e=i.iterated[i.iterated.length-1].els[0]),a=w(i,s,e.nextSibling),i.iterated.push(a)}),this.iterated.length>e.length)for(var s=this.iterated.length-e.length,a=function(){var t=i.iterated.pop();t.unbind(),i.marker.parentNode.removeChild(t.els[0])},o=0;o<s;o++)a();"OPTION"===t.nodeName&&this.view.bindings.forEach(function(t){t.el===i.marker.parentNode&&"value"===t.type&&t.sync()})},update:function(t){var e=this,i={};Object.keys(t).forEach(function(n){n!==e.arg&&(i[n]=t[n])}),this.iterated.forEach(function(t){t.update(i)})}},"class-*":function(t,e){var i=" "+t.className+" ";!e==-1<i.indexOf(" "+this.arg+" ")&&(t.className=e?t.className+" "+this.arg:i.replace(" "+this.arg+" "," ").trim())},text:function(t,e){t.textContent=null!=e?e:""},html:function(t,e){t.innerHTML=null!=e?e:""},show:function(t,e){t.style.display=e?"":"none"},hide:function(t,e){t.style.display=e?"none":""},enabled:function(t,e){t.disabled=!e},disabled:function(t,e){t.disabled=!!e},checked:{publishes:!0,priority:2e3,bind:function(t){var e=this;this.callback||(this.callback=function(){e.publish()}),t.addEventListener("change",this.callback)},unbind:function(t){t.removeEventListener("change",this.callback)},routine:function(t,e){"radio"===t.type?t.checked=p(t.value)===p(e):t.checked=!!e}},value:{publishes:!0,priority:3e3,bind:function(t){var e;this.isRadio="INPUT"===t.tagName&&("radio"===t.type||"checkbox"===t.type),this.isRadio||(this.event=t.getAttribute("event-name")||("SELECT"===t.tagName?"change":"input"),(e=this).callback||(this.callback=function(){e.publish()}),t.addEventListener(this.event,this.callback))},unbind:function(t){this.isRadio||t.removeEventListener(this.event,this.callback)},routine:function(t,e){if(this.isRadio)t.setAttribute("value",e);else if("select-multiple"===t.type){if(e instanceof Array)for(var i=0;i<t.length;i++){var n=t[i];n.selected=-1<e.indexOf(n.value)}}else p(e)!==p(t.value)&&(t.value=null!=e?e:"")}},if:{block:!0,priority:4e3,bind:function(t){this.marker?!1===this.bound&&this.nested&&this.nested.bind():(this.marker=document.createComment(" tinybind: "+this.type+" "+this.keypath+" "),this.attached=!1,t.parentNode.insertBefore(this.marker,t),t.parentNode.removeChild(t)),this.bound=!0},unbind:function(){this.nested&&(this.nested.unbind(),this.bound=!1)},routine:function(t,e){!!e!==this.attached&&(e?(this.nested||(this.nested=new k(t,this.view.models,this.view.options),this.nested.bind()),this.marker.parentNode.insertBefore(t,this.marker.nextSibling),this.attached=!0):(t.parentNode.removeChild(t),this.attached=!1))},update:function(t){this.nested&&this.nested.update(t)}}};function E(t,e){for(var i=0;i<e.length;i++){var n=e[i];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,function(t){return"symbol"==typeof(t=function(t,e){if("object"!=typeof t||null===t)return t;var i=t[Symbol.toPrimitive];if(void 0===i)return String(t);if("object"!=typeof(i=i.call(t,e)))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}(t,"string"))?t:String(t)}(n.key),n)}}function x(t){return(x=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function N(t,e){return(N=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t})(t,e)}function P(t,e,i){return(P=function(){if("undefined"!=typeof Reflect&&Reflect.construct&&!Reflect.construct.sham){if("function"==typeof Proxy)return 1;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),1}catch(t){}}}()?Reflect.construct.bind():function(t,e,i){var n=[null];return n.push.apply(n,e),e=new(Function.bind.apply(t,n)),i&&N(e,i.prototype),e}).apply(null,arguments)}var A=function(t){function e(){return t.apply(this,arguments)||this}i=t,(n=e).prototype=Object.create(i.prototype),N(n.prototype.constructor=n,i);var i,n=e.prototype;return n.connectedCallback=function(){var t=this.constructor.__templateEl.content.cloneNode(!0);for(this.__tinybindView=h.bind(t,this);this.firstChild;)this.removeChild(this.firstChild);this.appendChild(t)},n.disconnectedCallback=function(){this.__tinybindView.unbind()},n.attributeChangedCallback=function(t,e,i){e!==i&&(this[this.constructor.__propAttributeMap[t]]=i)},i=e,n=[{key:"observedAttributes",get:function(){var t=this.template;if(!t)throw new Error("No template declared for "+this.name);this.__templateEl=document.createElement("template"),this.__templateEl.innerHTML=t;var e=this.__propAttributeMap={},i=[],n=this.properties;return n&&Object.keys(n).forEach(function(t){var r=n[t];e[r="string"==typeof r?r:t]=t,i.push(r)}),i}}],null&&E(i.prototype,null),n&&E(i,n),Object.defineProperty(i,"prototype",{writable:!1}),e}(function(t){var e="function"==typeof Map?new Map:void 0;return function(t){if(null===t||-1===Function.toString.call(t).indexOf("[native code]"))return t;if("function"!=typeof t)throw new TypeError("Super expression must either be null or a function");if(void 0!==e){if(e.has(t))return e.get(t);e.set(t,i)}function i(){return P(t,arguments,x(this).constructor)}return i.prototype=Object.create(t.prototype,{constructor:{value:i,enumerable:!1,writable:!0,configurable:!0}}),N(i,t)}(t)}(HTMLElement));return h.binders=j,h.formatters={watch:function(t){return t},not:function(t){return!t},negate:function(t){return!t}},h.adapters["."]=_,h.Component=A,h.bind=function(i,n,r){var s={};return(i=(n=n||{},r=r||{},e.forEach(function(t){s[t]=Object.create(null),r[t]&&Object.keys(r[t]).forEach(function(e){s[t][e]=r[t][e]}),Object.keys(h[t]).forEach(function(e){s[t][e]||(s[t][e]=h[t][e])})}),t.forEach(function(t){var e=r[t];s[t]=null!=e?e:h[t]}),s.starBinders=Object.keys(s.binders).filter(function(t){return 0<t.indexOf("*")}),u.updateOptions(s),new k(i,n,s))).bind(),i},h});
},{}]},{},[3,11,15]);
;
var run = (typeof window != 'undefined' && typeof window.name === 'string' && window.name != '__c-wa-ipe') && !( true && (window.location.search.indexOf('__c-token') >= 0) );
if (window.Conductrics && window.Conductrics.express == false) { run = false }
if (run) { new Conductrics.ClientApi({"entry":"wax","debug":false,"dataLayer":"dataLayer","globalEvents":true}).run(); }}() )