@wayke-se/components-react 3.0.0-beta.1 → 3.0.0-beta.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (670) hide show
  1. package/README.md +35 -2
  2. package/assets/ajax-loader.gif +0 -0
  3. package/assets/default.css +1 -0
  4. package/assets/fonts/slick.eot +0 -0
  5. package/assets/fonts/slick.svg +14 -0
  6. package/assets/fonts/slick.ttf +0 -0
  7. package/assets/fonts/slick.woff +0 -0
  8. package/dist-node/index.js +9130 -0
  9. package/dist-node/index.js.map +1 -0
  10. package/dist-src/@types/action.js +1 -0
  11. package/dist-src/@types/codegen/types.js +14 -0
  12. package/dist-src/@types/filter.js +1 -0
  13. package/dist-src/@types/queryFilter.js +1 -0
  14. package/dist-src/@types/search.js +1 -0
  15. package/dist-src/@types/vehicle-properties.js +1 -0
  16. package/dist-src/State/CentralStorage/CentralStorageContext.js +4 -0
  17. package/dist-src/State/CentralStorage/CentralStorageProvider.js +9 -0
  18. package/dist-src/State/CentralStorage/useCentralStorage.js +29 -0
  19. package/dist-src/State/Path/PathContext.js +2 -0
  20. package/dist-src/State/Path/PathProvider.js +47 -0
  21. package/dist-src/State/Path/reducer.js +15 -0
  22. package/dist-src/State/Path/usePath.js +10 -0
  23. package/dist-src/State/RelatedSearch/RelatedSearchContext.js +8 -0
  24. package/dist-src/State/RelatedSearch/RelatedSearchProvider.js +27 -0
  25. package/dist-src/State/RelatedSearch/useRelatedSearch.js +15 -0
  26. package/dist-src/State/Search/SearchContext.js +12 -0
  27. package/dist-src/State/Search/SearchProvider.js +176 -0
  28. package/{src/State/Search/useSearch.ts → dist-src/State/Search/useSearch.js} +0 -2
  29. package/dist-src/State/Settings/SettingsContext.js +2 -0
  30. package/dist-src/State/Settings/SettingsProvider.js +4 -0
  31. package/{src/State/Settings/useSettings.ts → dist-src/State/Settings/useSettings.js} +0 -3
  32. package/dist-src/components/Accordion/index.js +18 -0
  33. package/{src/components/Accordion/wrapper.tsx → dist-src/components/Accordion/wrapper.js} +12 -27
  34. package/dist-src/components/ActionList/index.js +18 -0
  35. package/dist-src/components/ActionList/toggle-item.js +27 -0
  36. package/dist-src/components/Avatar/index.js +4 -0
  37. package/{src/components/Avatar/wrapper.tsx → dist-src/components/Avatar/wrapper.js} +3 -9
  38. package/dist-src/components/Badge/index.js +4 -0
  39. package/dist-src/components/Badge/wrapper.js +24 -0
  40. package/dist-src/components/Blockquote/index.js +12 -0
  41. package/{src/components/Blockquote/wrapper.tsx → dist-src/components/Blockquote/wrapper.js} +8 -16
  42. package/{src/components/Button/index.tsx → dist-src/components/Button/index.js} +24 -55
  43. package/dist-src/components/CheckMarkList/index.js +9 -0
  44. package/{src/components/CheckMarkList/wrapper.tsx → dist-src/components/CheckMarkList/wrapper.js} +5 -10
  45. package/dist-src/components/Checklist/index.js +14 -0
  46. package/{src/components/Checklist/wrapper.tsx → dist-src/components/Checklist/wrapper.js} +7 -13
  47. package/dist-src/components/ColorSelect/index.js +18 -0
  48. package/{src/components/ColorSelect/wrapper.tsx → dist-src/components/ColorSelect/wrapper.js} +9 -22
  49. package/{src/components/ColumnRow/index.tsx → dist-src/components/ColumnRow/index.js} +2 -5
  50. package/dist-src/components/Container/index.js +4 -0
  51. package/{src/components/Container/wrapper.tsx → dist-src/components/Container/wrapper.js} +1 -3
  52. package/dist-src/components/Content/index.js +4 -0
  53. package/{src/components/Content/wrapper.tsx → dist-src/components/Content/wrapper.js} +3 -13
  54. package/{src/components/ContentLogo/index.tsx → dist-src/components/ContentLogo/index.js} +3 -7
  55. package/dist-src/components/DataList/index.js +6 -0
  56. package/{src/components/DataList/wrapper.tsx → dist-src/components/DataList/wrapper.js} +5 -10
  57. package/dist-src/components/DetailBox/index.js +17 -0
  58. package/{src/components/DetailBox/wrapper.tsx → dist-src/components/DetailBox/wrapper.js} +7 -14
  59. package/dist-src/components/ExtendContent/index.js +24 -0
  60. package/{src/components/ExtendContent/wrapper.tsx → dist-src/components/ExtendContent/wrapper.js} +5 -14
  61. package/dist-src/components/ExtendInfo/index.js +15 -0
  62. package/{src/components/ExtendInfo/wrapper.tsx → dist-src/components/ExtendInfo/wrapper.js} +7 -14
  63. package/dist-src/components/Filter/index.js +62 -0
  64. package/{src/components/Filter/wrapper.tsx → dist-src/components/Filter/wrapper.js} +6 -13
  65. package/dist-src/components/FilterPanel/checkListFacet.js +29 -0
  66. package/dist-src/components/FilterPanel/colorFacet.js +29 -0
  67. package/dist-src/components/FilterPanel/faceSelector.js +31 -0
  68. package/dist-src/components/FilterPanel/index.js +24 -0
  69. package/dist-src/components/FilterPanel/rangeFacet.js +82 -0
  70. package/dist-src/components/FinancialOptions/LoanModal.js +127 -0
  71. package/dist-src/components/FinancialOptions/index.js +12 -0
  72. package/dist-src/components/FinancialOptions/leasing.js +55 -0
  73. package/dist-src/components/FinancialOptions/loan.js +54 -0
  74. package/dist-src/components/Gallery/MediaButton.js +7 -0
  75. package/dist-src/components/Gallery/index.js +119 -0
  76. package/{src/components/Gallery/wrapper.tsx → dist-src/components/Gallery/wrapper.js} +19 -119
  77. package/dist-src/components/Grid/index.js +44 -0
  78. package/{src/components/Grid/wrapper.tsx → dist-src/components/Grid/wrapper.js} +3 -7
  79. package/dist-src/components/Heading/index.js +54 -0
  80. package/dist-src/components/Icon/index.js +36 -0
  81. package/dist-src/components/InputCheckbox/index.js +10 -0
  82. package/{src/components/InputCheckbox/wrapper.tsx → dist-src/components/InputCheckbox/wrapper.js} +13 -21
  83. package/{src/components/InputGroup/index.tsx → dist-src/components/InputGroup/index.js} +2 -5
  84. package/dist-src/components/InputLabel/index.js +4 -0
  85. package/{src/components/InputLabel/wrapper.tsx → dist-src/components/InputLabel/wrapper.js} +2 -4
  86. package/dist-src/components/InputSearch/index.js +12 -0
  87. package/{src/components/InputSearch/wrapper.tsx → dist-src/components/InputSearch/wrapper.js} +10 -17
  88. package/dist-src/components/InputSelect/index.js +10 -0
  89. package/{src/components/InputSelect/wrapper.tsx → dist-src/components/InputSelect/wrapper.js} +5 -11
  90. package/dist-src/components/InputText/index.js +5 -0
  91. package/{src/components/InputText/wrapper.tsx → dist-src/components/InputText/wrapper.js} +4 -7
  92. package/dist-src/components/InsuranceOptions/Insurance.js +26 -0
  93. package/dist-src/components/InsuranceOptions/InsuranceFree.js +30 -0
  94. package/dist-src/components/InsuranceOptions/InsuranceFreeModal.js +19 -0
  95. package/dist-src/components/InsuranceOptions/InsuranceModal.js +105 -0
  96. package/dist-src/components/InsuranceOptions/index.js +15 -0
  97. package/dist-src/components/Lightbox/index.js +30 -0
  98. package/{src/components/Lightbox/wrapper.tsx → dist-src/components/Lightbox/wrapper.js} +6 -12
  99. package/dist-src/components/Loader/index.js +7 -0
  100. package/{src/components/Loader/wrapper.tsx → dist-src/components/Loader/wrapper.js} +8 -21
  101. package/dist-src/components/LogoBox/index.js +10 -0
  102. package/{src/components/LogoBox/wrapper.tsx → dist-src/components/LogoBox/wrapper.js} +3 -10
  103. package/dist-src/components/Map/index.js +27 -0
  104. package/{src/components/Map/wrapper.tsx → dist-src/components/Map/wrapper.js} +4 -8
  105. package/dist-src/components/Modal/index.js +20 -0
  106. package/{src/components/Modal/wrapper.tsx → dist-src/components/Modal/wrapper.js} +16 -30
  107. package/dist-src/components/OpeningHours/index.js +97 -0
  108. package/dist-src/components/OptionBox/index.js +7 -0
  109. package/{src/components/OptionBox/wrapper.tsx → dist-src/components/OptionBox/wrapper.js} +7 -14
  110. package/dist-src/components/OverflowBox/index.js +4 -0
  111. package/{src/components/OverflowBox/wrapper.tsx → dist-src/components/OverflowBox/wrapper.js} +1 -2
  112. package/{src/components/OverflowGrid/index.tsx → dist-src/components/OverflowGrid/index.js} +3 -7
  113. package/dist-src/components/Page/index.js +30 -0
  114. package/dist-src/components/Panel/index.js +20 -0
  115. package/{src/components/Panel/wrapper.tsx → dist-src/components/Panel/wrapper.js} +16 -28
  116. package/dist-src/components/Pdf/index.js +11 -0
  117. package/{src/components/Pdf/wrapper.tsx → dist-src/components/Pdf/wrapper.js} +9 -15
  118. package/dist-src/components/PhoneNumber/index.js +13 -0
  119. package/{src/components/Portal/index.ts → dist-src/components/Portal/index.js} +0 -1
  120. package/dist-src/components/Portal/portal-element.js +3 -0
  121. package/{src/components/Portal/portal-namespace.ts → dist-src/components/Portal/portal-namespace.js} +0 -0
  122. package/dist-src/components/Portal/portal.js +25 -0
  123. package/{src/components/Price/index.tsx → dist-src/components/Price/index.js} +3 -5
  124. package/dist-src/components/PriceTable/index.js +20 -0
  125. package/{src/components/PriceTable/wrapper.tsx → dist-src/components/PriceTable/wrapper.js} +4 -9
  126. package/dist-src/components/ProductCard/index.js +38 -0
  127. package/{src/components/ProductCard/wrapper.tsx → dist-src/components/ProductCard/wrapper.js} +19 -37
  128. package/{src/components/ProductPage/index.tsx → dist-src/components/ProductPage/index.js} +6 -20
  129. package/dist-src/components/ProgressBar/index.js +16 -0
  130. package/{src/components/ProgressBar/wrapper.tsx → dist-src/components/ProgressBar/wrapper.js} +5 -10
  131. package/dist-src/components/RangeSlider/RangeSliderSimple.js +26 -0
  132. package/dist-src/components/RangeSlider/SliderWithLabel.js +21 -0
  133. package/dist-src/components/RangeSlider/handle.js +5 -0
  134. package/dist-src/components/RangeSlider/index.js +50 -0
  135. package/dist-src/components/RangeSlider/track.js +6 -0
  136. package/{src/components/RangeSlider/wrapper.tsx → dist-src/components/RangeSlider/wrapper.js} +9 -16
  137. package/dist-src/components/RangeSliderLabel/index.js +6 -0
  138. package/{src/components/RangeSliderLabel/wrapper.tsx → dist-src/components/RangeSliderLabel/wrapper.js} +7 -16
  139. package/{src/components/Repeat/index.tsx → dist-src/components/Repeat/index.js} +3 -7
  140. package/dist-src/components/Result/index.js +40 -0
  141. package/{src/components/Result/wrapper.tsx → dist-src/components/Result/wrapper.js} +9 -19
  142. package/{src/components/Root/index.tsx → dist-src/components/Root/index.js} +2 -4
  143. package/dist-src/components/SearchBar/index.js +18 -0
  144. package/dist-src/components/SearchFilter/index.js +23 -0
  145. package/dist-src/components/SearchTerm/index.js +8 -0
  146. package/{src/components/SearchTerm/wrapper.tsx → dist-src/components/SearchTerm/wrapper.js} +4 -8
  147. package/dist-src/components/SectionHeader/index.js +9 -0
  148. package/{src/components/SectionHeader/wrapper.tsx → dist-src/components/SectionHeader/wrapper.js} +3 -7
  149. package/dist-src/components/Snackbar/index.js +21 -0
  150. package/dist-src/components/Snackbar/wrapper.js +56 -0
  151. package/dist-src/components/SortSelect/index.js +10 -0
  152. package/{src/components/SortSelect/wrapper.tsx → dist-src/components/SortSelect/wrapper.js} +5 -11
  153. package/dist-src/components/Sphere/Sphere.js +21 -0
  154. package/dist-src/components/Sphere/SphereLightbox.js +4 -0
  155. package/dist-src/components/Sphere/SphereViewer.js +54 -0
  156. package/{src/components/Sphere/wrapper.tsx → dist-src/components/Sphere/wrapper.js} +1 -7
  157. package/{src/components/SrOnly/index.tsx → dist-src/components/SrOnly/index.js} +1 -2
  158. package/dist-src/components/SwitchBar/index.js +23 -0
  159. package/{src/components/SwitchBar/wrapper.tsx → dist-src/components/SwitchBar/wrapper.js} +10 -19
  160. package/{src/components/TableColumn/index.tsx → dist-src/components/TableColumn/index.js} +3 -7
  161. package/{src/components/TableList/index.tsx → dist-src/components/TableList/index.js} +6 -13
  162. package/dist-src/components/Tabs/index.js +6 -0
  163. package/{src/components/Tabs/wrapper.tsx → dist-src/components/Tabs/wrapper.js} +8 -22
  164. package/dist-src/components/ThreeSixty/Rotation.js +95 -0
  165. package/dist-src/components/ThreeSixty/ThreeSixtLightbox.js +15 -0
  166. package/dist-src/components/ThreeSixty/ThreeSixty.js +25 -0
  167. package/dist-src/components/UspList/index.js +18 -0
  168. package/{src/components/UspList/wrapper.tsx → dist-src/components/UspList/wrapper.js} +8 -15
  169. package/dist-src/components/Utility/index.js +13 -0
  170. package/dist-src/components/Video/CustomPlayer.js +8 -0
  171. package/dist-src/components/Video/EmbeddedVideoLightbox.js +18 -0
  172. package/dist-src/components/Video/EmbededVideo.js +38 -0
  173. package/dist-src/components/Video/QuickNavEmbeded.js +17 -0
  174. package/dist-src/components/Video/QuickNavVideo.js +6 -0
  175. package/dist-src/components/Video/Video.js +8 -0
  176. package/dist-src/components/Video/VimeoPlayer.js +6 -0
  177. package/dist-src/components/Video/YoutubePlayer.js +6 -0
  178. package/dist-src/components/Video/useThumbnail.js +25 -0
  179. package/dist-src/components/Video/utils.js +35 -0
  180. package/dist-src/components/Video/wrapper.js +19 -0
  181. package/dist-src/hooks/useFetch.js +69 -0
  182. package/dist-src/hooks/useHasBeenVisible.js +13 -0
  183. package/dist-src/hooks/useHashGuid.js +28 -0
  184. package/dist-src/hooks/useInsurance.js +12 -0
  185. package/dist-src/hooks/useLoan.js +12 -0
  186. package/dist-src/hooks/useOnScreen.js +15 -0
  187. package/dist-src/hooks/useOutsideClick.js +15 -0
  188. package/dist-src/hooks/usePrevious.js +9 -0
  189. package/dist-src/hooks/useSearchItem.js +7 -0
  190. package/dist-src/hooks/useSearchItemBranch.js +7 -0
  191. package/dist-src/hooks/useSessionStorage.js +23 -0
  192. package/dist-src/hooks/useVimeoThumbnail.js +18 -0
  193. package/dist-src/index.js +10 -0
  194. package/dist-src/layout/helpers.js +5 -0
  195. package/{src/layout/keyframes.tsx → dist-src/layout/keyframes.js} +3 -6
  196. package/dist-src/layout/theme.js +57 -0
  197. package/dist-src/layouts/WaykeComposite.js +23 -0
  198. package/dist-src/layouts/WaykeCompositeWithProvider.js +6 -0
  199. package/dist-src/layouts/search/index.js +55 -0
  200. package/dist-src/layouts/searchItem/Branch.js +53 -0
  201. package/dist-src/layouts/searchItem/BranchModal.js +36 -0
  202. package/dist-src/layouts/searchItem/CheckList.js +65 -0
  203. package/dist-src/layouts/searchItem/ManufacturerPackagesOption.js +25 -0
  204. package/dist-src/layouts/searchItem/MetadataItem.js +34 -0
  205. package/dist-src/layouts/searchItem/PackageOptionModal.js +15 -0
  206. package/dist-src/layouts/searchItem/PackageOptions.js +25 -0
  207. package/{src/layouts/searchItem/Page404.tsx → dist-src/layouts/searchItem/Page404.js} +4 -12
  208. package/{src/layouts/searchItem/PageLoading.tsx → dist-src/layouts/searchItem/PageLoading.js} +4 -12
  209. package/dist-src/layouts/searchItem/Property.js +51 -0
  210. package/dist-src/layouts/searchItem/Related.js +64 -0
  211. package/dist-src/layouts/searchItem/index.js +181 -0
  212. package/dist-src/providers/WaykeItemProvidet.js +16 -0
  213. package/dist-src/providers/WaykeProvider.js +18 -0
  214. package/dist-src/providers/graphqlProvider.js +7 -0
  215. package/dist-src/providers/themeProvider.js +5 -0
  216. package/{src/queries/INSURANCE_CALCULATION.ts → dist-src/queries/INSURANCE_CALCULATION.js} +1 -3
  217. package/{src/queries/LOAN_CALCULATION.ts → dist-src/queries/LOAN_CALCULATION.js} +2 -5
  218. package/{src/queries/SEARCH_ITEM_BRANCH_QUERY.ts → dist-src/queries/SEARCH_ITEM_BRANCH_QUERY.js} +2 -5
  219. package/{src/queries/SEARCH_ITEM_QUERY.ts → dist-src/queries/SEARCH_ITEM_QUERY.js} +3 -7
  220. package/dist-src/utils/constants.js +30 -0
  221. package/dist-src/utils/converters.js +31 -0
  222. package/{src/utils/deep-copy.ts → dist-src/utils/deep-copy.js} +1 -2
  223. package/dist-src/utils/formats.js +60 -0
  224. package/dist-src/utils/metadata.min.js +86 -0
  225. package/dist-src/utils/phonenumbers.js +12 -0
  226. package/dist-src/utils/pubsub/Actions.js +1 -0
  227. package/dist-src/utils/pubsub/Events.js +1 -0
  228. package/dist-src/utils/pubsub/pubsub.js +93 -0
  229. package/dist-src/utils/regex.js +10 -0
  230. package/dist-src/utils/sortOptions.js +26 -0
  231. package/dist-src/utils/specification.js +495 -0
  232. package/dist-src/utils/ssn.js +1 -0
  233. package/{src/utils/url.ts → dist-src/utils/url.js} +0 -0
  234. package/dist-src/utils/vehicle-properties/compare-basic-properties.js +36 -0
  235. package/dist-src/utils/vehicle-properties/compare-categories.js +27 -0
  236. package/dist-src/utils/vehicle-properties/compare-properties.js +3 -0
  237. package/dist-src/utils/vehicle-properties/custom-property-adder.js +143 -0
  238. package/dist-src/utils/vehicle-properties/property-hint-enricher.js +190 -0
  239. package/dist-src/utils/vehicle-properties/property-remover.js +20 -0
  240. package/dist-src/utils/vehicle-properties/property-tree-creator.js +127 -0
  241. package/dist-src/utils/vehicle-properties/property-tree-sorter.js +18 -0
  242. package/{src/@types/action.ts → dist-types/@types/action.d.ts} +1 -1
  243. package/dist-types/@types/codegen/types.d.ts +343 -0
  244. package/dist-types/@types/filter.d.ts +5 -0
  245. package/dist-types/@types/queryFilter.d.ts +5 -0
  246. package/dist-types/@types/search.d.ts +105 -0
  247. package/dist-types/@types/vehicle-properties.d.ts +29 -0
  248. package/dist-types/State/CentralStorage/CentralStorageContext.d.ts +6 -0
  249. package/dist-types/State/CentralStorage/CentralStorageProvider.d.ts +6 -0
  250. package/dist-types/State/CentralStorage/useCentralStorage.d.ts +6 -0
  251. package/dist-types/State/Path/PathContext.d.ts +9 -0
  252. package/dist-types/State/Path/PathProvider.d.ts +6 -0
  253. package/dist-types/State/Path/reducer.d.ts +14 -0
  254. package/dist-types/State/Path/usePath.d.ts +3 -0
  255. package/dist-types/State/RelatedSearch/RelatedSearchContext.d.ts +10 -0
  256. package/dist-types/State/RelatedSearch/RelatedSearchProvider.d.ts +9 -0
  257. package/dist-types/State/RelatedSearch/useRelatedSearch.d.ts +2 -0
  258. package/dist-types/State/Search/SearchContext.d.ts +15 -0
  259. package/dist-types/State/Search/SearchProvider.d.ts +10 -0
  260. package/dist-types/State/Search/useSearch.d.ts +2 -0
  261. package/dist-types/State/Settings/SettingsContext.d.ts +13 -0
  262. package/dist-types/State/Settings/SettingsProvider.d.ts +10 -0
  263. package/dist-types/State/Settings/useSettings.d.ts +2 -0
  264. package/dist-types/components/Accordion/index.d.ts +13 -0
  265. package/dist-types/components/Accordion/wrapper.d.ts +16 -0
  266. package/dist-types/components/ActionList/index.d.ts +8 -0
  267. package/dist-types/components/ActionList/toggle-item.d.ts +10 -0
  268. package/dist-types/components/Avatar/index.d.ts +7 -0
  269. package/dist-types/components/Avatar/wrapper.d.ts +7 -0
  270. package/dist-types/components/Badge/index.d.ts +7 -0
  271. package/dist-types/components/Badge/wrapper.d.ts +7 -0
  272. package/dist-types/components/Blockquote/index.d.ts +9 -0
  273. package/dist-types/components/Blockquote/wrapper.d.ts +9 -0
  274. package/dist-types/components/Button/index.d.ts +52 -0
  275. package/dist-types/components/CheckMarkList/index.d.ts +7 -0
  276. package/dist-types/components/CheckMarkList/wrapper.d.ts +6 -0
  277. package/dist-types/components/Checklist/index.d.ts +13 -0
  278. package/dist-types/components/Checklist/wrapper.d.ts +11 -0
  279. package/dist-types/components/ColorSelect/index.d.ts +14 -0
  280. package/dist-types/components/ColorSelect/wrapper.d.ts +11 -0
  281. package/dist-types/components/ColumnRow/index.d.ts +2 -0
  282. package/dist-types/components/Container/index.d.ts +6 -0
  283. package/dist-types/components/Container/wrapper.d.ts +1 -0
  284. package/dist-types/components/Content/index.d.ts +6 -0
  285. package/dist-types/components/Content/wrapper.d.ts +4 -0
  286. package/dist-types/components/ContentLogo/index.d.ts +3 -0
  287. package/dist-types/components/DataList/index.d.ts +10 -0
  288. package/dist-types/components/DataList/wrapper.d.ts +6 -0
  289. package/dist-types/components/DetailBox/index.d.ts +8 -0
  290. package/dist-types/components/DetailBox/wrapper.d.ts +13 -0
  291. package/dist-types/components/ExtendContent/index.d.ts +8 -0
  292. package/dist-types/components/ExtendContent/wrapper.d.ts +6 -0
  293. package/dist-types/components/ExtendInfo/index.d.ts +7 -0
  294. package/dist-types/components/ExtendInfo/wrapper.d.ts +10 -0
  295. package/dist-types/components/Filter/index.d.ts +7 -0
  296. package/dist-types/components/Filter/wrapper.d.ts +8 -0
  297. package/dist-types/components/FilterPanel/checkListFacet.d.ts +7 -0
  298. package/dist-types/components/FilterPanel/colorFacet.d.ts +7 -0
  299. package/dist-types/components/FilterPanel/faceSelector.d.ts +7 -0
  300. package/dist-types/components/FilterPanel/index.d.ts +18 -0
  301. package/dist-types/components/FilterPanel/rangeFacet.d.ts +9 -0
  302. package/dist-types/components/FinancialOptions/LoanModal.d.ts +9 -0
  303. package/dist-types/components/FinancialOptions/index.d.ts +8 -0
  304. package/dist-types/components/FinancialOptions/leasing.d.ts +7 -0
  305. package/dist-types/components/FinancialOptions/loan.d.ts +8 -0
  306. package/dist-types/components/Gallery/MediaButton.d.ts +7 -0
  307. package/dist-types/components/Gallery/index.d.ts +8 -0
  308. package/dist-types/components/Gallery/wrapper.d.ts +26 -0
  309. package/dist-types/components/Grid/index.d.ts +11 -0
  310. package/dist-types/components/Grid/wrapper.d.ts +3 -0
  311. package/dist-types/components/Heading/index.d.ts +24 -0
  312. package/dist-types/components/Icon/index.d.ts +16 -0
  313. package/dist-types/components/InputCheckbox/index.d.ts +7 -0
  314. package/dist-types/components/InputCheckbox/wrapper.d.ts +13 -0
  315. package/dist-types/components/InputGroup/index.d.ts +2 -0
  316. package/dist-types/components/InputLabel/index.d.ts +7 -0
  317. package/dist-types/components/InputLabel/wrapper.d.ts +3 -0
  318. package/dist-types/components/InputSearch/index.d.ts +11 -0
  319. package/dist-types/components/InputSearch/wrapper.d.ts +15 -0
  320. package/dist-types/components/InputSelect/index.d.ts +14 -0
  321. package/dist-types/components/InputSelect/wrapper.d.ts +6 -0
  322. package/dist-types/components/InputText/index.d.ts +8 -0
  323. package/dist-types/components/InputText/wrapper.d.ts +5 -0
  324. package/dist-types/components/InsuranceOptions/Insurance.d.ts +9 -0
  325. package/dist-types/components/InsuranceOptions/InsuranceFree.d.ts +7 -0
  326. package/dist-types/components/InsuranceOptions/InsuranceFreeModal.d.ts +8 -0
  327. package/dist-types/components/InsuranceOptions/InsuranceModal.d.ts +10 -0
  328. package/dist-types/components/InsuranceOptions/index.d.ts +9 -0
  329. package/dist-types/components/Lightbox/index.d.ts +9 -0
  330. package/dist-types/components/Lightbox/wrapper.d.ts +9 -0
  331. package/dist-types/components/Loader/index.d.ts +7 -0
  332. package/dist-types/components/Loader/wrapper.d.ts +9 -0
  333. package/dist-types/components/LogoBox/index.d.ts +9 -0
  334. package/dist-types/components/LogoBox/wrapper.d.ts +4 -0
  335. package/dist-types/components/Map/index.d.ts +7 -0
  336. package/dist-types/components/Map/wrapper.d.ts +4 -0
  337. package/dist-types/components/Modal/index.d.ts +9 -0
  338. package/dist-types/components/Modal/wrapper.d.ts +21 -0
  339. package/dist-types/components/OpeningHours/index.d.ts +7 -0
  340. package/dist-types/components/OptionBox/index.d.ts +9 -0
  341. package/dist-types/components/OptionBox/wrapper.d.ts +8 -0
  342. package/dist-types/components/OverflowBox/index.d.ts +6 -0
  343. package/dist-types/components/OverflowBox/wrapper.d.ts +1 -0
  344. package/dist-types/components/OverflowGrid/index.d.ts +3 -0
  345. package/dist-types/components/Page/index.d.ts +7 -0
  346. package/dist-types/components/Panel/index.d.ts +10 -0
  347. package/dist-types/components/Panel/wrapper.d.ts +22 -0
  348. package/dist-types/components/Pdf/index.d.ts +11 -0
  349. package/dist-types/components/Pdf/wrapper.d.ts +11 -0
  350. package/dist-types/components/PhoneNumber/index.d.ts +6 -0
  351. package/dist-types/components/Portal/index.d.ts +4 -0
  352. package/dist-types/components/Portal/portal-element.d.ts +6 -0
  353. package/dist-types/components/Portal/portal-namespace.d.ts +1 -0
  354. package/dist-types/components/Portal/portal.d.ts +7 -0
  355. package/dist-types/components/Price/index.d.ts +4 -0
  356. package/dist-types/components/PriceTable/index.d.ts +7 -0
  357. package/dist-types/components/PriceTable/wrapper.d.ts +4 -0
  358. package/dist-types/components/ProductCard/index.d.ts +18 -0
  359. package/dist-types/components/ProductCard/wrapper.d.ts +21 -0
  360. package/dist-types/components/ProductPage/index.d.ts +9 -0
  361. package/dist-types/components/ProgressBar/index.d.ts +8 -0
  362. package/dist-types/components/ProgressBar/wrapper.d.ts +6 -0
  363. package/dist-types/components/RangeSlider/RangeSliderSimple.d.ts +13 -0
  364. package/dist-types/components/RangeSlider/SliderWithLabel.d.ts +13 -0
  365. package/dist-types/components/RangeSlider/handle.d.ts +9 -0
  366. package/dist-types/components/RangeSlider/index.d.ts +13 -0
  367. package/dist-types/components/RangeSlider/track.d.ts +9 -0
  368. package/dist-types/components/RangeSlider/wrapper.d.ts +11 -0
  369. package/dist-types/components/RangeSliderLabel/index.d.ts +8 -0
  370. package/dist-types/components/RangeSliderLabel/wrapper.d.ts +10 -0
  371. package/dist-types/components/Repeat/index.d.ts +3 -0
  372. package/dist-types/components/Result/index.d.ts +6 -0
  373. package/dist-types/components/Result/wrapper.d.ts +9 -0
  374. package/dist-types/components/Root/index.d.ts +4 -0
  375. package/dist-types/components/SearchBar/index.d.ts +8 -0
  376. package/dist-types/components/SearchFilter/index.d.ts +3 -0
  377. package/dist-types/components/SearchTerm/index.d.ts +8 -0
  378. package/dist-types/components/SearchTerm/wrapper.d.ts +7 -0
  379. package/dist-types/components/SectionHeader/index.d.ts +8 -0
  380. package/dist-types/components/SectionHeader/wrapper.d.ts +3 -0
  381. package/dist-types/components/Snackbar/index.d.ts +9 -0
  382. package/dist-types/components/Snackbar/wrapper.d.ts +11 -0
  383. package/dist-types/components/SortSelect/index.d.ts +14 -0
  384. package/dist-types/components/SortSelect/wrapper.d.ts +6 -0
  385. package/dist-types/components/Sphere/Sphere.d.ts +10 -0
  386. package/dist-types/components/Sphere/SphereLightbox.d.ts +6 -0
  387. package/dist-types/components/Sphere/SphereViewer.d.ts +10 -0
  388. package/dist-types/components/Sphere/wrapper.d.ts +1 -0
  389. package/dist-types/components/SrOnly/index.d.ts +1 -0
  390. package/dist-types/components/SwitchBar/index.d.ts +10 -0
  391. package/dist-types/components/SwitchBar/wrapper.d.ts +14 -0
  392. package/dist-types/components/TableColumn/index.d.ts +3 -0
  393. package/dist-types/components/TableList/index.d.ts +6 -0
  394. package/dist-types/components/Tabs/index.d.ts +12 -0
  395. package/dist-types/components/Tabs/wrapper.d.ts +12 -0
  396. package/dist-types/components/ThreeSixty/Rotation.d.ts +6 -0
  397. package/dist-types/components/ThreeSixty/ThreeSixtLightbox.d.ts +6 -0
  398. package/dist-types/components/ThreeSixty/ThreeSixty.d.ts +9 -0
  399. package/dist-types/components/UspList/index.d.ts +11 -0
  400. package/dist-types/components/UspList/wrapper.d.ts +11 -0
  401. package/dist-types/components/Utility/index.d.ts +8 -0
  402. package/dist-types/components/Video/CustomPlayer.d.ts +10 -0
  403. package/dist-types/components/Video/EmbeddedVideoLightbox.d.ts +8 -0
  404. package/dist-types/components/Video/EmbededVideo.d.ts +8 -0
  405. package/dist-types/components/Video/QuickNavEmbeded.d.ts +7 -0
  406. package/dist-types/components/Video/QuickNavVideo.d.ts +7 -0
  407. package/dist-types/components/Video/Video.d.ts +5 -0
  408. package/dist-types/components/Video/VimeoPlayer.d.ts +7 -0
  409. package/dist-types/components/Video/YoutubePlayer.d.ts +7 -0
  410. package/dist-types/components/Video/useThumbnail.d.ts +2 -0
  411. package/dist-types/components/Video/utils.d.ts +9 -0
  412. package/dist-types/components/Video/wrapper.d.ts +11 -0
  413. package/dist-types/hooks/useFetch.d.ts +7 -0
  414. package/dist-types/hooks/useHasBeenVisible.d.ts +2 -0
  415. package/dist-types/hooks/useHashGuid.d.ts +2 -0
  416. package/dist-types/hooks/useInsurance.d.ts +4 -0
  417. package/dist-types/hooks/useLoan.d.ts +4 -0
  418. package/dist-types/hooks/useOnScreen.d.ts +2 -0
  419. package/dist-types/hooks/useOutsideClick.d.ts +2 -0
  420. package/dist-types/hooks/usePrevious.d.ts +2 -0
  421. package/dist-types/hooks/useSearchItem.d.ts +4 -0
  422. package/dist-types/hooks/useSearchItemBranch.d.ts +4 -0
  423. package/dist-types/hooks/useSessionStorage.d.ts +7 -0
  424. package/dist-types/hooks/useVimeoThumbnail.d.ts +2 -0
  425. package/dist-types/index.d.ts +18 -0
  426. package/dist-types/layout/helpers.d.ts +1 -0
  427. package/dist-types/layout/keyframes.d.ts +3 -0
  428. package/dist-types/layout/theme.d.ts +40 -0
  429. package/dist-types/layouts/WaykeComposite.d.ts +6 -0
  430. package/dist-types/layouts/WaykeCompositeWithProvider.d.ts +9 -0
  431. package/dist-types/layouts/search/index.d.ts +15 -0
  432. package/dist-types/layouts/searchItem/Branch.d.ts +8 -0
  433. package/dist-types/layouts/searchItem/BranchModal.d.ts +9 -0
  434. package/dist-types/layouts/searchItem/CheckList.d.ts +13 -0
  435. package/dist-types/layouts/searchItem/ManufacturerPackagesOption.d.ts +7 -0
  436. package/dist-types/layouts/searchItem/MetadataItem.d.ts +10 -0
  437. package/dist-types/layouts/searchItem/PackageOptionModal.d.ts +17 -0
  438. package/dist-types/layouts/searchItem/PackageOptions.d.ts +7 -0
  439. package/dist-types/layouts/searchItem/Page404.d.ts +3 -0
  440. package/dist-types/layouts/searchItem/PageLoading.d.ts +3 -0
  441. package/dist-types/layouts/searchItem/Property.d.ts +8 -0
  442. package/dist-types/layouts/searchItem/Related.d.ts +9 -0
  443. package/dist-types/layouts/searchItem/index.d.ts +12 -0
  444. package/dist-types/providers/WaykeItemProvidet.d.ts +22 -0
  445. package/dist-types/providers/WaykeProvider.d.ts +24 -0
  446. package/dist-types/providers/graphqlProvider.d.ts +6 -0
  447. package/dist-types/providers/themeProvider.d.ts +6 -0
  448. package/dist-types/queries/INSURANCE_CALCULATION.d.ts +2 -0
  449. package/dist-types/queries/LOAN_CALCULATION.d.ts +2 -0
  450. package/dist-types/queries/SEARCH_ITEM_BRANCH_QUERY.d.ts +2 -0
  451. package/dist-types/queries/SEARCH_ITEM_QUERY.d.ts +2 -0
  452. package/dist-types/utils/constants.d.ts +62 -0
  453. package/dist-types/utils/converters.d.ts +1 -0
  454. package/dist-types/utils/deep-copy.d.ts +5 -0
  455. package/dist-types/utils/formats.d.ts +8 -0
  456. package/dist-types/utils/metadata.min.d.ts +11 -0
  457. package/dist-types/utils/phonenumbers.d.ts +1 -0
  458. package/dist-types/utils/pubsub/Actions.d.ts +16 -0
  459. package/dist-types/utils/pubsub/Events.d.ts +51 -0
  460. package/dist-types/utils/pubsub/pubsub.d.ts +32 -0
  461. package/dist-types/utils/regex.d.ts +3 -0
  462. package/dist-types/utils/sortOptions.d.ts +11 -0
  463. package/dist-types/utils/specification.d.ts +28 -0
  464. package/dist-types/utils/ssn.d.ts +1 -0
  465. package/dist-types/utils/url.d.ts +1 -0
  466. package/dist-types/utils/vehicle-properties/compare-basic-properties.d.ts +3 -0
  467. package/dist-types/utils/vehicle-properties/compare-categories.d.ts +3 -0
  468. package/dist-types/utils/vehicle-properties/compare-properties.d.ts +3 -0
  469. package/dist-types/utils/vehicle-properties/custom-property-adder.d.ts +12 -0
  470. package/dist-types/utils/vehicle-properties/property-hint-enricher.d.ts +10 -0
  471. package/dist-types/utils/vehicle-properties/property-remover.d.ts +7 -0
  472. package/dist-types/utils/vehicle-properties/property-tree-creator.d.ts +31 -0
  473. package/dist-types/utils/vehicle-properties/property-tree-sorter.d.ts +3 -0
  474. package/dist-web/index.js +7555 -0
  475. package/dist-web/index.js.map +1 -0
  476. package/package.json +50 -39
  477. package/.editorconfig +0 -10
  478. package/.eslintrc.js +0 -54
  479. package/.github/workflows/release-to-production.yaml +0 -41
  480. package/.github/workflows/release-to-test.yaml +0 -42
  481. package/.husky/pre-commit +0 -4
  482. package/.prettierrc +0 -10
  483. package/codegen.yml +0 -19
  484. package/dist/index.css +0 -2
  485. package/dist/index.css.map +0 -7
  486. package/dist/index.d.ts +0 -3226
  487. package/dist/index.js +0 -3225
  488. package/dist/index.js.map +0 -7
  489. package/dist/index.mjs +0 -3225
  490. package/dist/index.mjs.map +0 -7
  491. package/esbuild/cdn.js +0 -26
  492. package/esbuild/common.js +0 -15
  493. package/esbuild/lib.js +0 -48
  494. package/esbuild/start.js +0 -20
  495. package/src/@types/codegen.ts +0 -366
  496. package/src/@types/filter.ts +0 -18
  497. package/src/@types/queryFilter.ts +0 -5
  498. package/src/@types/react-panellum.d.ts +0 -1
  499. package/src/@types/search.ts +0 -118
  500. package/src/@types/theme.d.ts +0 -5
  501. package/src/@types/vehicle-properties.ts +0 -33
  502. package/src/State/CentralStorage/CentralStorageContext.ts +0 -10
  503. package/src/State/CentralStorage/CentralStorageProvider.tsx +0 -21
  504. package/src/State/CentralStorage/useCentralStorage.ts +0 -37
  505. package/src/State/Path/PathContext.ts +0 -11
  506. package/src/State/Path/PathProvider.tsx +0 -66
  507. package/src/State/Path/reducer.ts +0 -30
  508. package/src/State/Path/usePath.ts +0 -13
  509. package/src/State/RelatedSearch/RelatedSearchContext.ts +0 -18
  510. package/src/State/RelatedSearch/RelatedSearchProvider.tsx +0 -55
  511. package/src/State/RelatedSearch/useRelatedSearch.ts +0 -20
  512. package/src/State/Search/SearchContext.ts +0 -27
  513. package/src/State/Search/SearchProvider.tsx +0 -243
  514. package/src/State/Settings/SettingsContext.ts +0 -15
  515. package/src/State/Settings/SettingsProvider.tsx +0 -23
  516. package/src/components/Accordion/index.tsx +0 -57
  517. package/src/components/ActionList/index.tsx +0 -48
  518. package/src/components/ActionList/toggle-item.tsx +0 -59
  519. package/src/components/Avatar/index.tsx +0 -12
  520. package/src/components/Badge/index.tsx +0 -12
  521. package/src/components/Badge/wrapper.tsx +0 -32
  522. package/src/components/Blockquote/index.tsx +0 -32
  523. package/src/components/CheckMarkList/index.tsx +0 -21
  524. package/src/components/Checklist/index.tsx +0 -51
  525. package/src/components/ColorSelect/index.tsx +0 -63
  526. package/src/components/Container/index.tsx +0 -11
  527. package/src/components/Content/index.tsx +0 -15
  528. package/src/components/DataList/index.tsx +0 -25
  529. package/src/components/DetailBox/index.tsx +0 -34
  530. package/src/components/ExtendContent/index.tsx +0 -43
  531. package/src/components/ExtendInfo/index.tsx +0 -32
  532. package/src/components/Filter/index.tsx +0 -108
  533. package/src/components/FilterPanel/checkListFacet.tsx +0 -46
  534. package/src/components/FilterPanel/colorFacet.tsx +0 -47
  535. package/src/components/FilterPanel/faceSelector.tsx +0 -53
  536. package/src/components/FilterPanel/index.tsx +0 -79
  537. package/src/components/FilterPanel/rangeFacet.tsx +0 -128
  538. package/src/components/FinancialOptions/LoanModal.tsx +0 -223
  539. package/src/components/FinancialOptions/index.tsx +0 -29
  540. package/src/components/FinancialOptions/leasing.tsx +0 -77
  541. package/src/components/FinancialOptions/loan.tsx +0 -87
  542. package/src/components/Gallery/MediaButton.tsx +0 -19
  543. package/src/components/Gallery/index.tsx +0 -227
  544. package/src/components/Grid/index.tsx +0 -87
  545. package/src/components/Heading/index.tsx +0 -72
  546. package/src/components/Icon/index.tsx +0 -87
  547. package/src/components/InputCheckbox/index.tsx +0 -30
  548. package/src/components/InputLabel/index.tsx +0 -14
  549. package/src/components/InputSearch/index.tsx +0 -51
  550. package/src/components/InputSelect/index.tsx +0 -35
  551. package/src/components/InputText/index.tsx +0 -27
  552. package/src/components/InsuranceOptions/Insurance.tsx +0 -60
  553. package/src/components/InsuranceOptions/InsuranceFree.tsx +0 -59
  554. package/src/components/InsuranceOptions/InsuranceFreeModal.tsx +0 -49
  555. package/src/components/InsuranceOptions/InsuranceModal.tsx +0 -253
  556. package/src/components/InsuranceOptions/index.tsx +0 -27
  557. package/src/components/Lightbox/index.tsx +0 -51
  558. package/src/components/Loader/index.tsx +0 -18
  559. package/src/components/LogoBox/index.tsx +0 -22
  560. package/src/components/Map/index.tsx +0 -62
  561. package/src/components/Modal/index.tsx +0 -51
  562. package/src/components/OpeningHours/index.tsx +0 -145
  563. package/src/components/OptionBox/index.tsx +0 -23
  564. package/src/components/OverflowBox/index.tsx +0 -11
  565. package/src/components/Page/index.tsx +0 -46
  566. package/src/components/Panel/index.tsx +0 -50
  567. package/src/components/Pdf/index.tsx +0 -46
  568. package/src/components/PhoneNumber/index.tsx +0 -33
  569. package/src/components/Portal/portal-element.tsx +0 -9
  570. package/src/components/Portal/portal.tsx +0 -36
  571. package/src/components/PriceTable/index.tsx +0 -34
  572. package/src/components/ProductCard/index.tsx +0 -133
  573. package/src/components/ProgressBar/index.tsx +0 -31
  574. package/src/components/RangeSlider/RangeSliderSimple.tsx +0 -90
  575. package/src/components/RangeSlider/SliderWithLabel.tsx +0 -62
  576. package/src/components/RangeSlider/handle.tsx +0 -26
  577. package/src/components/RangeSlider/index.tsx +0 -132
  578. package/src/components/RangeSlider/track.tsx +0 -19
  579. package/src/components/RangeSliderLabel/index.tsx +0 -18
  580. package/src/components/Result/index.tsx +0 -91
  581. package/src/components/SearchBar/index.tsx +0 -48
  582. package/src/components/SearchFilter/index.tsx +0 -31
  583. package/src/components/SearchTerm/index.tsx +0 -23
  584. package/src/components/SectionHeader/index.tsx +0 -25
  585. package/src/components/Snackbar/index.tsx +0 -35
  586. package/src/components/Snackbar/wrapper.tsx +0 -65
  587. package/src/components/SortSelect/index.tsx +0 -35
  588. package/src/components/Sphere/Sphere.tsx +0 -49
  589. package/src/components/Sphere/SphereLightbox.tsx +0 -12
  590. package/src/components/Sphere/SphereViewer.tsx +0 -45
  591. package/src/components/SwitchBar/index.tsx +0 -55
  592. package/src/components/Tabs/index.tsx +0 -34
  593. package/src/components/ThreeSixty/Rotation.tsx +0 -136
  594. package/src/components/ThreeSixty/ThreeSixtLightbox.tsx +0 -34
  595. package/src/components/ThreeSixty/ThreeSixty.tsx +0 -53
  596. package/src/components/UspList/index.tsx +0 -47
  597. package/src/components/Utility/index.tsx +0 -17
  598. package/src/components/Video/CustomPlayer.tsx +0 -28
  599. package/src/components/Video/EmbeddedVideoLightbox.tsx +0 -31
  600. package/src/components/Video/EmbededVideo.tsx +0 -72
  601. package/src/components/Video/QuickNavEmbeded.tsx +0 -35
  602. package/src/components/Video/QuickNavVideo.tsx +0 -14
  603. package/src/components/Video/Video.tsx +0 -18
  604. package/src/components/Video/VimeoPlayer.tsx +0 -21
  605. package/src/components/Video/YoutubePlayer.tsx +0 -21
  606. package/src/components/Video/useThumbnail.ts +0 -28
  607. package/src/components/Video/utils.ts +0 -47
  608. package/src/components/Video/wrapper.tsx +0 -29
  609. package/src/hooks/useEcom.ts +0 -21
  610. package/src/hooks/useFetch.ts +0 -88
  611. package/src/hooks/useHasBeenVisible.ts +0 -17
  612. package/src/hooks/useHashGuid.ts +0 -33
  613. package/src/hooks/useInsurance.ts +0 -22
  614. package/src/hooks/useLoan.ts +0 -21
  615. package/src/hooks/useOnScreen.ts +0 -20
  616. package/src/hooks/useOutsideClick.ts +0 -19
  617. package/src/hooks/usePrevious.ts +0 -11
  618. package/src/hooks/useSearchItem.ts +0 -11
  619. package/src/hooks/useSearchItemBranch.ts +0 -14
  620. package/src/hooks/useSessionStorage.ts +0 -32
  621. package/src/hooks/useVimeoThumbnail.ts +0 -31
  622. package/src/images/map/marker.png +0 -0
  623. package/src/images/placeholders/staticmap.jpg +0 -0
  624. package/src/index-dev.tsx +0 -144
  625. package/src/index.ts +0 -70
  626. package/src/layout/helpers.tsx +0 -6
  627. package/src/layout/theme.ts +0 -60
  628. package/src/layouts/WaykeComposite.tsx +0 -64
  629. package/src/layouts/WaykeCompositeWithProvider.tsx +0 -17
  630. package/src/layouts/search/index.tsx +0 -124
  631. package/src/layouts/searchItem/Branch.tsx +0 -97
  632. package/src/layouts/searchItem/BranchModal.tsx +0 -67
  633. package/src/layouts/searchItem/CheckList.tsx +0 -146
  634. package/src/layouts/searchItem/ManufacturerPackagesOption.tsx +0 -54
  635. package/src/layouts/searchItem/MetadataItem.tsx +0 -74
  636. package/src/layouts/searchItem/PackageOptionModal.tsx +0 -54
  637. package/src/layouts/searchItem/PackageOptions.tsx +0 -58
  638. package/src/layouts/searchItem/Property.tsx +0 -134
  639. package/src/layouts/searchItem/Related.tsx +0 -120
  640. package/src/layouts/searchItem/index.tsx +0 -344
  641. package/src/providers/WaykeItemProvidet.tsx +0 -68
  642. package/src/providers/WaykeProvider.tsx +0 -80
  643. package/src/providers/graphqlProvider.tsx +0 -9
  644. package/src/providers/themeProvider.tsx +0 -15
  645. package/src/styles.scss +0 -1
  646. package/src/utils/constants.ts +0 -34
  647. package/src/utils/converters.ts +0 -45
  648. package/src/utils/formats.ts +0 -83
  649. package/src/utils/metadata.min.ts +0 -87
  650. package/src/utils/phonenumbers.ts +0 -17
  651. package/src/utils/pubsub/Actions.ts +0 -20
  652. package/src/utils/pubsub/Events.ts +0 -69
  653. package/src/utils/pubsub/pubsub.ts +0 -143
  654. package/src/utils/regex.ts +0 -13
  655. package/src/utils/sortOptions.ts +0 -36
  656. package/src/utils/specification.ts +0 -581
  657. package/src/utils/ssn.ts +0 -1
  658. package/src/utils/vehicle-properties/compare-basic-properties.ts +0 -63
  659. package/src/utils/vehicle-properties/compare-categories.ts +0 -45
  660. package/src/utils/vehicle-properties/compare-properties.ts +0 -5
  661. package/src/utils/vehicle-properties/custom-property-adder.ts +0 -163
  662. package/src/utils/vehicle-properties/property-hint-enricher.ts +0 -230
  663. package/src/utils/vehicle-properties/property-remover.ts +0 -28
  664. package/src/utils/vehicle-properties/property-tree-creator.ts +0 -171
  665. package/src/utils/vehicle-properties/property-tree-sorter.ts +0 -20
  666. package/tsconfig.build.json +0 -10
  667. package/tsconfig.json +0 -15
  668. package/www/ecom.css +0 -60
  669. package/www/index.html +0 -32
  670. package/www/theme.css +0 -83
package/dist/index.mjs DELETED
@@ -1,3225 +0,0 @@
1
- var Eu=Object.defineProperty;var Mu=(e,t)=>()=>(e&&(t=e(e=0)),t);var Va=(e,t)=>{for(var r in t)Eu(e,r,{get:t[r],enumerable:!0})};var mu={};Va(mu,{AuthMethod:()=>Fe,AuthStatus:()=>ct,CreditAssessmentDecision:()=>fr,CreditAssessmentRecommendation:()=>zt,CreditAssessmentStatus:()=>z,DeliveryType:()=>ja,DrivingDistance:()=>Ga,Employment:()=>za,MaritalStatus:()=>Fa,PaymentType:()=>Ja,VehicleCondition:()=>Qa,VehicleUnavailableError:()=>yr,bankid:()=>_k,config:()=>P,creditAssessment:()=>Sx,customers:()=>Rb,insurances:()=>$b,orders:()=>Ak,payments:()=>kk,vehicles:()=>Sk});var lu,Lb,P,hr,yr,Ob,Hb,Nb,va,Fb,Pa,ze,zb,to,Gb,Ge,Xe,we,jb,Jb,Qb,Bn,Ca,Ia,Yb,Wb,Ub,Rb,Vb,Zb,Kb,Dn,Sa,Xb,qb,$b,_b,ek,tk,rk,ok,nk,ik,ak,Ea,Tn,Ma,Ln,On,Ba,Da,Ta,sk,lk,ck,pk,mk,dk,uk,Ak,gk,fk,hk,Hn,yk,bk,kk,xk,wk,vk,Nn,La,Oa,Pk,Ck,Ik,Sk,Fe,ct,Ya,Ek,Mk,Bk,Dk,Tk,Lk,Ok,cu,Hk,Nk,Fk,Fn,Ha,zn,zk,Gk,jk,Jk,Qk,Yk,Wk,Uk,Rk,qe,pu,wt,Gn,Vk,Zk,Kk,Xk,qk,$k,_k,ex,tx,rx,ox,nx,ix,ax,sx,Wa,lx,cx,px,mx,dx,ux,Na,Fa,za,z,fr,zt,Ax,gx,fx,vt,hx,yx,bx,kx,xx,wx,vx,Px,Cx,Ix,Sx,Ga,ja,Ja,Qa,du=Mu(()=>{lu=()=>!window||!window.location?void 0:{topic:window.location.host.replace("www.",""),channel:"Web"},Lb=()=>{if(process.env.WAYKE_ECOM_API_ADDRESS)return{api:{address:process.env.WAYKE_ECOM_API_ADDRESS},origin:lu()}},P=class{constructor(){this.config=Lb()}static current(){if(P.instance)return P.instance;let t=new P;if(!t.config)throw P.notBoundError;return P.instance=t,P.instance}static bind(t){return P.instance=new P,P.instance.config={api:{address:t.api.address},origin:t.origin?{topic:t.origin.topic,channel:t.origin.channel}:lu(),bankIdThumbprint:t.bankIdThumbprint},P.instance}static destroy(){P.instance=void 0}getApiAddress(){if(!this.config)throw P.notBoundError;return this.config.api.address}getOrigin(){if(!this.config)throw P.notBoundError;return this.config.origin}useBankIdThumbprint(){if(!this.config)throw P.notBoundError;return!!this.config.bankIdThumbprint}getBankIdThumbprint(){if(!this.config)throw P.notBoundError;return this.config.bankIdThumbprint}};P.instance=void 0;P.notBoundError=new Error("Configuration not bound yet");hr=class extends Error{constructor(t,r){super(r),this.response=t,Object.setPrototypeOf(this,hr.prototype)}getResponse(){return this.response}},yr=class extends Error{constructor(){super("The vehicle is not available for purchase"),Object.setPrototypeOf(this,yr.prototype)}},Ob=e=>{switch(e.errorCode){case 1:throw new yr;default:throw new Error(e.message)}},Hb=e=>e.getResponse().json().then(Ob),Nb="x-certificate-thumbprint",va=class{constructor(){this._method="get",this._headers={},this._body=null}accept(t){return this._headers.Accept=t,this}method(t){return this._method=t,this}authorization(t){return this._headers.Authorization=`Bearer ${t}`,this}requestForgeryToken(t){if(!t)throw new Error("Missing request forgery token");return this._headers["x-rf-token"]=t,this}content(t,r="application/json"){switch(r){case"application/json":this._body=JSON.stringify(t);break;default:this._body=t;break}return r&&(this._headers["Content-Type"]=r),this}bankIdThumbprint(t){if(!t)throw new Error("Bank id thumbprint can not be falsy");return this._headers[Nb]=t,this}build(){return{body:this._body,headers:this._headers,method:this._method}}},Fb=(e,t)=>{if(e.status>=200&&e.status<300)return e;throw new hr(e,String(e.status))},Pa={requestForgeryToken:void 0},ze=()=>({...Pa}),zb=e=>(Pa.requestForgeryToken=e.requestForgeryToken||Pa.requestForgeryToken,e),to=(e,t)=>fetch(e,t).then(r=>Fb(r,t)),Gb=["202","204"],Ge=(e,t)=>to(e,t).then(r=>Gb.includes(String(r.status))?null:r.json()).catch(r=>{if(r instanceof hr)return Hb(r);throw r}),Xe=e=>e.then(zb),we=()=>new va,jb=({requestForgeryToken:e})=>we().method("get").accept("application/json").requestForgeryToken(e).build(),Jb=e=>{if(!e||!e.successful||!e.response)throw new Error("The request did not succeed");return e.response},Qb=(e,t)=>Xe(Ge(`${t.getApiAddress()}/v2/address?SocialId=${e.personalNumber}`,jb(ze()))).then(Jb),Bn=class{constructor(){this.properties={}}static validateRequest(t){if(!t)throw new Error("Missing address lookup request");if(!t.personalNumber)throw new Error("Missing personal number in address lookup request")}forCustomer(t){return this.properties.personalNumber=t,this}build(){return this.properties}},Ca=class{constructor(t){if(!t)throw new Error("Missing address lookup response data");this.response=t}getAddress(){return{city:this.response.city,name:this.response.name,givenName:this.response.givenName,surname:this.response.surname,postalCode:this.response.postalCode,street:this.response.street,street2:this.response.street2,distance:this.response.distance}}},Ia=class{constructor(){this.properties={}}withAddress(t){return this.properties.address=t,this.properties.name=t.name,this.properties.givenName=t.givenName,this.properties.surname=t.surname,this}withPersonalNumber(t){return this.properties.personalNumber=t,this}withEmail(t){return this.properties.email=t,this}withPhoneNumber(t){return this.properties.phoneNumber=t,this}withGivenName(t){return this.properties.givenName=t,this}withSurname(t){return this.properties.surname=t,this}build(){return this.properties}},Yb=()=>new Bn,Wb=()=>new Ia,Ub=e=>(Bn.validateRequest(e),Qb(e,P.current()).then(t=>new Ca(t))),Rb=Object.freeze({__proto__:null,newAddressLookupRequest:Yb,newCustomer:Wb,lookupAddress:Ub}),Vb=(e,{requestForgeryToken:t})=>{let r={drivingDistance:e.drivingDistance,socialId:e.personalNumber,vehicleId:e.id,branchId:e.branchId};return we().method("post").accept("application/json").requestForgeryToken(t).content(r).build()},Zb=e=>{if(!e||!e.successful||!e.response)throw new Error("The request did not succeed");return e.response},Kb=(e,t)=>Xe(Ge(`${t.getApiAddress()}/v3/insurance`,Vb(e,ze()))).then(Zb),Dn=class{constructor(){this.properties={}}static validateRequest(t){if(!t)throw new Error("Missing insurance options request");if(!t.id)throw new Error("Missing vehicle ID for insurance options request");if(!t.personalNumber)throw new Error("Missing personal number for insurance options request");if(!t.drivingDistance)throw new Error("Missing driving distance for insurance options request")}forVehicle(t){return this.properties.id=t,this}forDealer(t){return this.properties.branchId=t,this}forCustomer(t){return this.properties.personalNumber=t,this}withDrivingDistance(t){return this.properties.drivingDistance=t,this}build(){return this.properties}},Sa=class{constructor(t){if(!t)throw new Error("Missing insurance options response data");this.response=t}getInsuranceOptions(){return this.response.insurances}},Xb=()=>new Dn,qb=e=>(Dn.validateRequest(e),Kb(e,P.current()).then(t=>new Sa(t))),$b=Object.freeze({__proto__:null,newInsuranceOptionsRequest:Xb,getOptions:qb}),_b=()=>we().method("get").accept("application/json").build(),ek=(e,t,{requestForgeryToken:r})=>{let o={vehicleId:e.id,tradeIn:e.tradein,insurance:e.insurance?{...e.insurance,socialId:e.insurance.personalNumber?e.insurance.personalNumber:e.customer.personalNumber}:void 0,payment:e.payment,delivery:e.deliveryType,customer:{socialId:e.customer.personalNumber,email:e.customer.email,phone:e.customer.phoneNumber,name:e.customer.name,address:e.customer.address,givenName:e.customer.givenName,surname:e.customer.surname},accessories:e.accessories,urls:e.urls,origin:t.getOrigin()};return we().method("post").accept("application/json").requestForgeryToken(r).content(o).build()},tk=e=>{if(!e||!e.successful||!e.response)throw new Error("The request did not succeed");return e.response},rk=e=>{if(!e||!e.successful||!e.response)throw new Error("The request did not succeed");return e.response},ok=({id:e,branchId:t})=>{let r=`/v3/orders/new?vehicleId=${e}`;return t?`${r}&branchId=${t}`:r},nk=(e,t)=>Xe(Ge(`${t.getApiAddress()}${ok(e)}`,_b())).then(tk),ik=()=>"/v3/orders",ak=(e,t)=>Xe(Ge(`${t.getApiAddress()}${ik()}`,ek(e,t,ze()))).then(rk),Ea=class{constructor(){this.properties={}}forPersonalNumber(t){return this.properties.personalNumber=t,this}withDrivingDistance(t){return this.properties.drivingDistance=t,this}withAddOns(t){return this.properties.addons=t,this}build(){return this.properties}},Tn=class{constructor(){this.properties={}}static validateRequest(t){if(!t)throw new Error("Missing order creation request");if(!t.id)throw new Error("Missing vehicle ID in order creation request");if(!t.customer)throw new Error("Missing customer in order creation request");if(!t.payment)throw new Error("Missing payment in order creation request");if(!t.deliveryType)throw new Error("Missing delivery type in order creation request")}forVehicle(t){return this.properties.id=t,this}withAccessories(t){return this.properties.accessories=t.map(r=>({id:r.id})),this}withCustomer(t){return this.properties.customer=t,this}withPayment(t){return this.properties.payment=t,this}withDeliveryType(t){return this.properties.deliveryType=t,this}withInsurance(t){return this.properties.insurance=t,this}withTradeIn(t){return this.properties.tradein=t,this}withUrls(t,r){return this.properties.urls={redirect:t,payment:r},this}build(){return this.properties}},Ma=class{constructor(t){if(!t)throw new Error("Missing order create response data");this.response=t}getId(){return this.response.id}getPayment(){return this.response.payment}getOrderNumber(){return this.response.orderNumber}},Ln=class{constructor(){this.properties={}}static validateRequest(t){if(!t)throw new Error("Missing order setup request");if(!t.id)throw new Error("Missing vehicle ID in order setup request")}forVehicle(t){return this.properties.id=t,this}forDealer(t){return this.properties.branchId=t,this}build(){return this.properties}},On=class{constructor(t){if(!t)throw new Error("Missing payment lookup response data");this.response=t}getCosts(){return{monthlyCost:this.response.monthlyCost,totalCreditCost:this.response.totalCreditCost}}getFees(){return{setupFee:this.response.setupFee,administrationFee:this.response.administrationFee}}getInterests(){return{interest:this.response.interest,effectiveInterest:this.response.effectiveInterest}}getDurationSpec(){return this.response.duration}getDownPaymentSpec(){return this.response.downPayment}getResidualValueSpec(){return this.response.residual}getTotalResidualValue(){return this.response.totalResidualValue}getPublicURL(){return this.response.link}shouldUseCreditScoring(){return this.response.useCreditScoring}getFinancialProductCode(){return this.response.financialProductCode}getPrice(){return this.response.vehiclePrice}getCreditAmount(){return this.response.loanAmount}hasPrivacyPolicy(){return!!this.response.privacyPolicyUrl}getPrivacyPolicyUrl(){return this.response.privacyPolicyUrl}},Ba=class{constructor(t){if(!t)throw new Error("Missing order options response data");this.response=t}getOrderVehicle(){return this.response.vehicle}getAccessories(){return!this.response.accessories||!this.response.accessories.length?[]:this.response.accessories.map(t=>({id:t.id,articleNumber:t.articleNumber,logoUrl:t.logoUrl,longDescription:t.longDescription,shortDescription:t.shortDescription,manufacturer:t.manufacturer,model:t.model,name:t.name,price:t.price,assemblyPrice:t.assemblyPrice,salePrice:t.salePrice,productPageLink:t.productPageLink,productPageLinkText:t.productPageLinkText,media:t.media?t.media.map(r=>({externalId:r.externalId,sortOrder:r.sortOrder,url:r.url})):[]}))}requiresDealerSelection(){return this.response.dealers&&this.response.dealers.length>1}getDealerSites(){return!this.response.dealers||!this.response.dealers.length?[]:this.response.dealers}getPaymentOptions(){return!this.response.payment||!this.response.payment.length?[]:this.response.payment.map(t=>({loanDetails:t.loanDetails?new On(t.loanDetails):void 0,logo:t.logo,name:t.name,price:t.price,type:t.type,unit:t.unit,externalId:t.externalId}))}getDeliveryOptions(){return!this.response.delivery||!this.response.delivery.length?[]:this.response.delivery.map(t=>({type:t.type,deliveryTime:t.deliveryTime,startupCost:t.startupCost,unitPrice:t.unitPrice,unit:t.unit,minQuantity:t.minQuantity,maxQuantity:t.maxQuantity}))}getInsuranceOption(){return this.response.insurance?{institute:this.response.insurance.institute,identifier:this.response.insurance.identifier,longDescription:this.response.insurance.longDescription,description:this.response.insurance.description,logo:this.response.insurance.logo,title:this.response.insurance.title,url:this.response.insurance.url,ecomInsuranceText:this.response.insurance.ecomInsuranceText,requiresDistance:this.response.insurance.requiresDistance,requiresPersonalNumber:this.response.insurance.requiresPersonalNumber}:void 0}getOrderConditions(){return this.response.conditions}getOrderReturnConditions(){return this.response.returnConditions}getConditionsPdfUri(){return this.response.conditionsPdfUri}getContactInformation(){return this.response.contactInformation}allowsTradeIn(){return this.response.tradeIn}isUnavailable(){return this.response.unavailable}isPaymentRequired(){return this.response.paymentRequired}},Da=class{constructor(){this.properties={}}withType(t){return this.properties.type=t,this}withDuration(t){return this.properties.months=t,this}withDownPayment(t){return this.properties.downPayment=t,this}withResidualValue(t){return this.properties.residualValue=t,this}withExternalId(t){return this.properties.externalId=t,this}withCreditAssessment(t){return this.properties.creditAssessment=t,this}build(){return this.properties}},Ta=class{constructor(){this.properties={}}withScoreId(t){return this.properties.scoreId=t,this}withFinancialProductCode(t){return this.properties.financialProductCode=t,this}withRecommendation(t){return this.properties.recommendation=t,this}withDecision(t){return this.properties.decision=t,this}build(){return this.properties}},sk=()=>new Ln,lk=()=>new Tn,ck=()=>new Ea,pk=()=>new Da,mk=()=>new Ta,dk=e=>(Ln.validateRequest(e),nk(e,P.current()).then(t=>new Ba(t))),uk=e=>(Tn.validateRequest(e),ak(e,P.current()).then(t=>new Ma(t))),Ak=Object.freeze({__proto__:null,newOptionsRequest:sk,newCreateRequest:lk,newInsurance:ck,newPayment:pk,newCreditAssessment:mk,getOptions:dk,create:uk}),gk=e=>{let t={branchId:e.branchId,duration:e.duration,downPayment:e.downPayment,residual:e.residual};return we().method("post").accept("application/json").content(t).build()},fk=e=>{if(!e||!e.successful||!e.response)throw new Error("The request did not succeed");return e.response},hk=(e,t)=>Ge(`${t.getApiAddress()}/payment/${e.id}`,gk(e)).then(fk),Hn=class{constructor(){this.properties={}}static validateRequest(t){if(!t)throw new Error("Missing payment lookup request");if(!t.id)throw new Error("Missing vehicle ID in payment lookup request");if(!t.duration||t.duration<1)throw new Error("Missing month duration in payment lookup request");if(!t.downPayment||t.downPayment<1)throw new Error("Missing cash deposit in payment lookup request")}forVehicle(t){return this.properties.id=t,this}forDealer(t){return this.properties.branchId=t,this}withDuration(t){return this.properties.duration=t,this}withDownPayment(t){return this.properties.downPayment=t,this}withResidualValue(t){return this.properties.residual=t,this}build(){return this.properties}},yk=()=>new Hn,bk=e=>(Hn.validateRequest(e),hk(e,P.current()).then(t=>new On(t))),kk=Object.freeze({__proto__:null,newLookupRequest:yk,lookupPayment:bk}),xk=({requestForgeryToken:e})=>we().method("get").accept("application/json").requestForgeryToken(e).build(),wk=e=>{if(!e||!e.successful||!e.response)throw new Error("The request did not succeed");return e.response},vk=(e,t)=>Xe(Ge(`${t.getApiAddress()}/v2/tradein/${e.registrationNumber}?mileage=${e.mileage}&condition=${e.condition}`,xk(ze()))).then(wk),Nn=class{constructor(){this.properties={}}static validateRequest(t){if(!t)throw new Error("Missing vehicle lookup request");if(!t.registrationNumber)throw new Error("Missing registration number in vehicle lookup request");if(t.mileage&&!t.condition)throw new Error("Missing vehicle condition for valuation in vehicle lookup request");if(t.condition&&!t.mileage)throw new Error("Missing mileage for valuation in vehicle lookup request")}withRegistrationNumber(t){return this.properties.registrationNumber=t,this}withMileage(t){return this.properties.mileage=t,this}withCondition(t){return this.properties.condition=t,this}build(){return this.properties}},La=class{constructor(t,r){if(!t)throw new Error("Missing vehicle lookup response data");this.response=t,this.registrationNumber=r}getVehicle(){return{manufacturer:this.response.manufacturer,modelName:this.response.modelName,modelSeries:this.response.modelSeries,modelYear:this.response.modelYear,valuation:this.response.valuation}}},Oa=class{constructor(){this.properties={}}forVehicle(t){return this.properties.registrationNumber=t,this}withMileage(t){return this.properties.mileage=t,this}withCondition(t){return this.properties.condition=t,this}withComment(t){return this.properties.comments=t,this}build(){return this.properties}},Pk=()=>new Nn,Ck=()=>new Oa,Ik=e=>(Nn.validateRequest(e),vk(e,P.current()).then(t=>new La(t,e.registrationNumber))),Sk=Object.freeze({__proto__:null,newLookupRequest:Pk,newVehicleTrade:Ck,lookupVehicle:Ik});(function(e){e.SameDevice="SameDevice",e.QrCode="QrCode"})(Fe||(Fe={}));(function(e){e.Pending="pending",e.Failed="failed",e.Complete="complete",e.Unknown="unknown"})(ct||(ct={}));Ya=()=>{let e=ze().requestForgeryToken,t=we().method("post").accept("application/json").requestForgeryToken(e);if(P.current().useBankIdThumbprint()){let o=P.current().getBankIdThumbprint();t.bankIdThumbprint(o)}return t.build()},Ek=e=>{switch(e){case Fe.QrCode:return"/qr-code";case Fe.SameDevice:return"/same-device";default:throw new Error("BankId auth method not supported")}},Mk=e=>{let t=Ek(e.method);return`${P.current().getApiAddress()}/bankid/auth${t}`},Bk=e=>{let t=Mk(e),r=Ya();return Xe(Ge(t,r))},Dk=e=>`${P.current().getApiAddress()}/bankid/collect/${e}`,Tk=e=>{let t=Dk(e.orderRef),r=Ya();return Xe(Ge(t,r))},Lk=e=>`${P.current().getApiAddress()}/bankid/cancel/${e}`,Ok=e=>{let t=Lk(e.orderRef),r=Ya();return to(t,r)},cu=e=>{if(!e||!e.successful||!e.response)throw new Error("The request did not succeed");return e.response},Hk=e=>Bk(e).then(cu),Nk=e=>Tk(e).then(cu),Fk=e=>Ok(e).then(()=>!0),Fn=class{constructor(){this.properties={}}static validate(t){if(!t)throw new Error("Request can not be falsy");if(!t.method)throw new Error("Missing auth method")}withMethod(t){return this.properties.method=t,this}build(){return this.properties}},Ha=class{constructor(t,r){if(!t)throw new Error("Response can not be falsy");if(!r)throw new Error("Method can not be falsy");this.orderRef=t.orderRef,this.qrCodeAsBase64=t.qrCodeAsBase64,this.autoLaunchUrl=t.autoLaunchUrl,this.method=r}getMethod(){return this.method}isQrCode(){return this.method===Fe.QrCode}isSameDevice(){return this.method===Fe.SameDevice}getOrderRef(){return this.orderRef}getQrCode(){if(!this.isQrCode())throw new Error("Not qr code response");return this.qrCodeAsBase64}getAutoLaunchUrl(){if(!this.isSameDevice())throw new Error("Not same device response");return this.autoLaunchUrl}},zn=class{constructor(){this.properties={}}static validate(t){if(!t)throw new Error("Request can not be falsy");if(!t.orderRef)throw new Error("Missing order ref")}withOrderRef(t){return this.properties.orderRef=t,this}build(){return this.properties}},zk=()=>"Starta BankID-appen.",Gk=()=>"Starta BankID-appen.",jk=()=>"S\xF6ker efter BankID, det kan ta en liten stund... Om det har g\xE5tt n\xE5gra sekunder och inget BankID har hittats har du sannolikt inget BankID som g\xE5r att anv\xE4nda f\xF6r den aktuella identifieringen/underskriften i den h\xE4r enheten. Om du inte har n\xE5got BankID kan du h\xE4mta ett hos din internetbank.",Jk=()=>"Skriv in din s\xE4kerhetskod i BankID-appen och v\xE4lj Legitimera eller Skriv under.",Qk=()=>"BankID-appen svarar inte. Kontrollera att den \xE4r startad och att du har internetanslutning. Om du inte har n\xE5got giltigt BankID kan du h\xE4mta ett hos din Bank. F\xF6rs\xF6k sedan igen.",Yk=()=>"Det BankID du f\xF6rs\xF6ker anv\xE4nda \xE4r f\xF6r gammalt eller sp\xE4rrat. Anv\xE4nd ett annat BankID eller h\xE4mta ett nytt hos din internetbank.",Wk=()=>"\xC5tg\xE4rden avbruten.",Uk=()=>"\xC5tg\xE4rden avbruten. Fo\u0308rso\u0308k igen.",Rk=()=>"Starta BankID-appen.",qe={};qe.outstandingTransaction=zk;qe.noClient=Gk;qe.started=jk;qe.userSign=Jk;qe.expiredTransaction=Qk;qe.certificateErr=Yk;qe.userCancel=Wk;qe.cancelled=Uk;qe.startFailed=Rk;pu=e=>{if(!e)return"";let t=qe[e];return t?t():""},wt=class{constructor(t){if(!t)throw new Error("Response can not be falsy");this.orderRef=t.orderRef,this.status=this.parseStatus(t.status),this.hintCode=t.hintCode,this.message=pu(t.hintCode),this.isCompleted()&&!!t.completionData&&(this.personalNumber=t.completionData.personalNumber,this.address=t.completionData.address)}parseStatus(t){switch(t){case"pending":return ct.Pending;case"complete":return ct.Complete;case"failed":return ct.Failed;default:return ct.Unknown}}getOrderRef(){return this.orderRef}getStatus(){return this.status}isPending(){return this.status===ct.Pending}getHintCode(){return this.hintCode}hasMessage(){return!!this.message}getMessage(){return this.message}shouldRenew(){return this.hintCode===wt.START_FAILED_CODE||this.hintCode===wt.USER_CANCEL_CODE}isCompleted(){return this.status===ct.Complete}getPersonalNumber(){return this.personalNumber}getAddress(){return this.address}};wt.START_FAILED_CODE="startFailed";wt.USER_CANCEL_CODE="userCancel";Gn=class{constructor(){this.properties={}}static validate(t){if(!t)throw new Error("Request can not be falsy");if(!t.orderRef)throw new Error("Missing order ref")}withOrderRef(t){return this.properties.orderRef=t,this}build(){return this.properties}},Vk=()=>new Fn,Zk=()=>new zn,Kk=()=>new Gn,Xk=e=>(Fn.validate(e),Hk(e).then(t=>new Ha(t,e.method))),qk=e=>(zn.validate(e),Nk(e).then(t=>new wt(t))),$k=e=>(Gn.validate(e),Fk(e)),_k=Object.freeze({__proto__:null,newAuthRequest:Vk,newCollectRequest:Zk,newCancelRequest:Kk,auth:Xk,collect:qk,cancel:$k}),ex=e=>{let r=`${P.current().getApiAddress()}/credit-assessment/${e}`,o=ze().requestForgeryToken,i=we().method("get").accept("application/json").requestForgeryToken(o).build();return Xe(Ge(r,i))},tx=e=>{let r=`${P.current().getApiAddress()}/credit-assessment`,o=ze().requestForgeryToken,i=we().method("post").accept("application/json").requestForgeryToken(o).content(e).build();return Xe(Ge(r,i))},rx=e=>{switch(e){case Fe.QrCode:return"/qr-code";case Fe.SameDevice:return"/same-device";default:throw new Error("BankId auth method not supported")}},ox=e=>{let t=rx(e.method);return`${P.current().getApiAddress()}/credit-assessment/sign/${e.caseId}${t}`},nx=e=>{let t=ox(e),r=ze().requestForgeryToken,o=we().method("post").accept("application/json").requestForgeryToken(r).build();return Xe(Ge(t,o))},ix=e=>{let r=`${P.current().getApiAddress()}/credit-assessment/sign/${e}`,o=ze().requestForgeryToken,i=we().method("delete").requestForgeryToken(o).build();return to(r,i)},ax=e=>{let r=`${P.current().getApiAddress()}/credit-assessment/${e}`,o=ze().requestForgeryToken,i=we().method("delete").requestForgeryToken(o).build();return to(r,i)},sx=e=>{let r=`${P.current().getApiAddress()}/credit-assessment/${e}/accept`,o=ze().requestForgeryToken,i=we().method("put").requestForgeryToken(o).build();return to(r,i)},Wa=e=>{if(!e||!e.successful||!e.response)throw new Error("The request did not succeed");return e.response},lx=e=>tx(e).then(Wa),cx=e=>ex(e).then(Wa),px=e=>nx(e).then(Wa),mx=e=>ix(e).then(()=>!0),dx=e=>ax(e).then(()=>!0),ux=e=>sx(e).then(()=>!0),Na=class{constructor(t,r){if(!t)throw new Error("Response can not be falsy");if(!r.method)throw new Error("Method can not be falsy");this.qrCodeAsBase64=t.qrCodeAsBase64,this.autoLaunchUrl=t.autoLaunchUrl,this.method=r.method,this.caseId=r.caseId}getMethod(){return this.method}isQrCode(){return this.method===Fe.QrCode}isSameDevice(){return this.method===Fe.SameDevice}getQrCode(){if(!this.isQrCode())throw new Error("Not qr code response");return this.qrCodeAsBase64}getAutoLaunchUrl(){if(!this.isSameDevice())throw new Error("Not same device response");return this.autoLaunchUrl}getCaseId(){return this.caseId}};(function(e){e.Married="married",e.Single="single"})(Fa||(Fa={}));(function(e){e.Other="other",e.Retired="retired",e.FullTimeEmployed="fullTimeEmployed",e.Student="student",e.TemporarilyEmployed="temporarilyEmployed",e.SelfEmployed="selfEmployed"})(za||(za={}));(function(e){e.Received="received",e.SigningInitiated="signingInitiated",e.SigningFailed="signingFailed",e.Signed="signed",e.ScoringInitiated="scoringInitiated",e.Scored="scored",e.NotScored="notScored",e.Accepted="accepted",e.Declined="declined",e.Unknown="unknown"})(z||(z={}));(function(e){e.Approved="approved",e.Rejected="rejected",e.Unknown="unknown"})(fr||(fr={}));(function(e){e.Approve="approve",e.AssessManually="assessManually",e.Reject="reject",e.Unknown="unknown"})(zt||(zt={}));Ax=e=>{switch(e){case"received":return z.Received;case"signingInitiated":return z.SigningInitiated;case"signingFailed":return z.SigningFailed;case"signed":return z.Signed;case"scoringInitiated":return z.ScoringInitiated;case"scored":return z.Scored;case"notScored":return z.NotScored;case"accepted":return z.Accepted;case"declined":return z.Declined;default:return z.Unknown}},gx=e=>{switch(e){case"approved":return fr.Approved;case"rejected":return fr.Rejected;default:return fr.Unknown}},fx=e=>{switch(e){case"approve":return zt.Approve;case"assessManually":return zt.AssessManually;case"reject":return zt.Reject;default:return zt.Unknown}},vt=class{constructor(t){this.hintCode=t.bankIdHintCode,this.vfScoreCaseId=t.vfScoreCaseId,this.signingMessage=pu(t.bankIdHintCode),this.status=Ax(t.status),this.decision=gx(t.decision),this.recommendation=fx(t.recommendation)}getSigningMessage(){return this.signingMessage}shouldRenewSigning(){let t=this.status===z.SigningFailed,r=this.hintCode===vt.START_FAILED_CODE||this.hintCode===vt.USER_CANCEL_CODE;return t&&r}isSigned(){return this.status===z.Signed||this.status===z.ScoringInitiated||this.status===z.Scored||this.status===z.NotScored||this.status===z.Accepted}getAddress(){throw new Error("Method not implemented.")}getStatus(){return this.status}hasPendingSigning(){return this.status===z.SigningInitiated}getHintCode(){return this.hintCode}hasPendingScoring(){return this.status===z.Signed||this.status===z.ScoringInitiated}isScored(){return this.status===z.Scored||this.status===z.Accepted}hasScoringError(){return this.status===z.NotScored}getScoringId(){return this.vfScoreCaseId}getRecommendation(){return this.recommendation}getDecision(){return this.decision}isAccepted(){return this.status===z.Accepted}};vt.START_FAILED_CODE="startFailed";vt.USER_CANCEL_CODE="userCancel";hx=e=>{if(!e)throw new TypeError("Household economy can not be falsy");if(!e.employment)throw new TypeError("Household economy must have employment");if(!e.maritalStatus)throw new TypeError("Household economy must have marital status");if(!e.income&&e.income!==0)throw new TypeError("Household economy must have income");if(!e.householdChildren&&e.householdChildren!==0)throw new TypeError("Household economy must have household children");if(!e.householdDebt&&e.householdDebt!==0)throw new TypeError("Household economy must have household debt");if(!e.householdHousingCost&&e.householdHousingCost!==0)throw new TypeError("Household economy must have household housing cost");if(!e.householdIncome&&e.householdIncome!==0)throw new TypeError("Household economy must have household income")},yx=e=>{if(!e)throw new TypeError("Loan can not be falsy");if(!e.financialProductId)throw new TypeError("Loan must have financial product id");if(!e.credit&&e.credit!==0)throw new TypeError("Loan must have credit");if(!e.downPayment&&e.downPayment!==0)throw new TypeError("Loan must have down payment");if(!e.interestRate&&e.interestRate!==0)throw new TypeError("Loan must have interest rate");if(!e.monthlyCost&&e.monthlyCost!==0)throw new TypeError("Loan must have monthly cost");if(!e.price&&e.price!==0)throw new TypeError("Loan must have price")},bx=e=>{if(!e)throw new TypeError("Customer can not be falsy");if(!e.socialId)throw new TypeError("Customer must have social id");if(!e.email)throw new TypeError("Customer must have email");if(!e.phone)throw new TypeError("Customer must have phone")},kx=e=>{if(!e)throw new TypeError("Inquiry can not be falsy");if(!e.externalId)throw new TypeError("Inquiry must have external id");hx(e.householdEconomy),yx(e.loan),bx(e.customer)},xx=e=>(kx(e),lx(e)),wx=e=>cx(e).then(t=>new vt(t)),vx=e=>px(e).then(t=>new Na(t,e)),Px=e=>mx(e),Cx=e=>ux(e),Ix=e=>dx(e),Sx=Object.freeze({__proto__:null,newCase:xx,getStatus:wx,signCase:vx,cancelSigning:Px,accept:Cx,decline:Ix});(function(e){e.Between0And1000="Between0And1000",e.Between1000And1500="Between1000And1500",e.Between1500And2000="Between1500And2000",e.Between2000And2500="Between2000And2500",e.Over2500="Over2500"})(Ga||(Ga={}));(function(e){e.None="None",e.Pickup="Pickup",e.Delivery="Delivery"})(ja||(ja={}));(function(e){e.Cash="Cash",e.Lease="Lease",e.Loan="Loan"})(Ja||(Ja={}));(function(e){e.VeryGood="VeryGood",e.Good="Good",e.Ok="Ok"})(Qa||(Qa={}))});import Q,{useEffect as cg,useCallback as pc,useMemo as pg}from"react";import Tu from"react";import Du from"styled-components";var K={black:"#000",white:"#fff",gray:"#ddd",grayLight:"#f8f8f8",grayLightTransparent:"rgba(248, 248, 248, 0)",grayLightDarker:"#ebebeb",grayDark:"#717171",blue:"#1d61ca",ui:{greenLight:"#cdf5c8",green:"#2b8747",redLight:"#ffd0d0",red:"#c71f1f",yellowLight:"#fff4c7",blueLight:"#daf7fc"}},Bu={color:{bg:K.white,link:K.blue,accent:K.grayLight,accentTransparent:K.grayLightTransparent,accentDark:K.grayLightDarker,border:K.gray,textDark:K.black,textDarkLighten:K.grayDark,textLight:K.white,hoverOverlay:"rgba(0, 0, 0, 0.04)",disabledBg:K.gray,disabledText:K.grayDark,placeholder:K.grayDark,ui:{positiveLight:K.ui.greenLight,positive:K.ui.green,neutralLight:K.ui.yellowLight,negativeLight:K.ui.redLight,negative:K.ui.red,infoLight:K.ui.blueLight}},breakpoint:{Sm:"@media (min-width: 600px)",LtSm:"@media (max-width: 599px)",Md:"@media (min-width: 900px)",LtMd:"@media (max-width: 899px)",Lg:"@media (min-width: 1200px)",LtLg:"@media (max-width: 1199px)"},distances:{baseUnit:"8px",inputHeight:"48px",containerMaxWidth:"1312px"}},ne=Bu;var n=(e=1)=>{let t=parseFloat(ne.distances.baseUnit);return`${e*t}px`};var Ce=Du.div`
2
- width: 100%;
3
- max-width: ${e=>e.theme.distances.containerMaxWidth};
4
- margin: 0 auto;
5
- padding: 0 ${n(3)};
6
-
7
- ${e=>e.theme.breakpoint.LtSm} {
8
- padding: 0 ${n(2)};
9
- }
10
- `;var Lu=({children:e})=>Tu.createElement(Ce,null,e),he=Lu;import Za,{css as io}from"styled-components";var pt=Za.div``,ye=Za.section`
11
- margin-bottom: ${n(4)};
12
-
13
- ${({accent:e})=>e&&io`
14
- padding: ${n(4)} 0;
15
- background-color: ${t=>t.theme.color.accent};
16
- margin-bottom: 0;
17
- `}
18
-
19
- ${({large:e})=>e&&io`
20
- margin-bottom: ${n(8)};
21
- `}
22
-
23
- ${({accent:e,large:t})=>e&&t&&io`
24
- padding: ${n(8)} 0;
25
- margin-bottom: 0;
26
- `}
27
-
28
- ${({fillSpace:e})=>e&&io`
29
- flex: 1 1 auto;
30
- `}
31
- `;import ae,{useCallback as Yu}from"react";import $e from"styled-components";var Ka=$e.div``,Xa=$e.header`
32
- display: flex;
33
- margin-bottom: ${n(4)};
34
- `,qa=$e.div`
35
- flex: 1 1 auto;
36
- `,$a=$e.div`
37
- flex-shrink: 0;
38
- `,_a=$e.div``,es=$e.footer`
39
- margin-top: ${n(8)};
40
- text-align: center;
41
- `,ts=$e.div`
42
- max-width: 175px;
43
- margin: 0 auto;
44
- `,rs=$e.div`
45
- margin-top: ${n(3)};
46
- `,os=$e.div`
47
- color: ${e=>e.theme.color.textDarkLighten};
48
- font-size: 0.875rem;
49
- `;import so from"react";import ao from"styled-components";var ns=ao.div`
50
- text-align: center;
51
- `,is=ao.div`
52
- margin-bottom: ${n(1.5)};
53
- font-size: 0.875rem;
54
- `,as=ao.div`
55
- position: relative;
56
- width: 100%;
57
- height: 2px;
58
- background-color: ${e=>e.theme.color.accentDark};
59
- `,ss=ao.div.attrs(()=>({role:"progressbar"}))`
60
- position: absolute;
61
- top: 0;
62
- left: 0;
63
- height: 100%;
64
- background-color: ${e=>e.theme.color.textDark};
65
- `;var Ou=({unit:e,valueCurrent:t,valueMax:r})=>{let o=t/r*100;return so.createElement(ns,null,so.createElement(is,null,"Visar ",t.toString()," av ",r.toString()," ",e),so.createElement(as,null,so.createElement(ss,{style:{width:`${o}%`},"aria-valuenow":t,"aria-valuemin":0,"aria-valuemax":r})))},ls=Ou;import je,{css as Kn}from"styled-components";import lo from"styled-components";var cs=lo.div`
66
- text-align: right;
67
- `,ps=lo.span`
68
- font-size: 0.875rem;
69
- `,Jt=lo.span.attrs(()=>({className:"wayke__theme wayke__color--primary-text"}))``,br=lo.span.attrs(()=>({className:"wayke__theme wayke__font--bold"}))``;var C=je.button.attrs(()=>({type:"button"}))`
70
- display: inline-block;
71
- vertical-align: middle;
72
- padding: 0;
73
- margin: 0;
74
- background-color: transparent;
75
- border: 0;
76
- border-radius: 0;
77
- font-family: sans-serif;
78
- font-weight: 400;
79
- font-size: 1em;
80
- color: currentColor;
81
- line-height: 1.2;
82
- text-align: center;
83
- text-decoration: none;
84
- -webkit-tap-highlight-color: rgba(255, 255, 255, 0.1);
85
- cursor: pointer;
86
-
87
- :focus {
88
- outline: none;
89
- }
90
-
91
- ::-moz-focus-inner {
92
- border: 0;
93
- }
94
- `,ms=je(C)`
95
- position: relative;
96
- display: inline-flex;
97
- align-items: center;
98
- justify-content: center;
99
- padding: ${n(1.75)} ${n(6)};
100
- border-radius: 3px;
101
- font-size: 1rem;
102
- line-height: 1.2;
103
- text-decoration: none;
104
- transform-origin: 50% 50%;
105
- transition: 200ms ease, transform 300ms cubic-bezier(0.47, 1.64, 0.41, 0.8);
106
-
107
- :before {
108
- content: '';
109
- position: absolute;
110
- top: 0;
111
- left: 0;
112
- width: 100%;
113
- height: 100%;
114
- background-color: ${e=>e.theme.color.hoverOverlay};
115
- border-radius: 3px;
116
- opacity: 0;
117
- transition: opacity 150ms ease;
118
- }
119
-
120
- :hover {
121
- :before {
122
- opacity: 1;
123
- }
124
- }
125
-
126
- :active {
127
- transform: scale(0.97);
128
- }
129
-
130
- &[disabled] {
131
- background-color: ${e=>e.theme.color.disabledBg};
132
- border-color: ${e=>e.theme.color.disabledBg};
133
- color: ${e=>e.theme.color.disabledText};
134
- }
135
-
136
- ${({fullWidth:e})=>e&&Kn`
137
- display: flex;
138
- width: 100%;
139
- `}
140
-
141
- ${({inputHeight:e})=>e&&Kn`
142
- height: ${t=>t.theme.distances.inputHeight};
143
- `}
144
-
145
- ${e=>e.theme.breakpoint.LtSm} {
146
- padding: ${n(1.75)} ${n(2.5)};
147
- font-size: 0.875rem;
148
- }
149
- `,Je=je(ms).attrs(()=>({className:"wayke__theme wayke__color--primary-bg wayke__font--bold"}))``,be=je(ms).attrs(()=>({className:"wayke__theme wayke__color--secondary-bg wayke__font--bold"}))`
150
- background-color: ${e=>e.theme.color.accentDark};
151
- color: ${e=>e.theme.color.textDark};
152
- `,I=je.div`
153
- position: relative;
154
- z-index: 1;
155
-
156
- & + & {
157
- margin-left: ${n(.5)};
158
- }
159
- `,mt=je(C).attrs(()=>({className:"wayke__theme wayke__color--primary-text wayke__font--bold"}))`
160
- position: relative;
161
- font-size: 0.875rem;
162
- padding: ${n(1.5)};
163
- margin: ${n(-1.5)};
164
- text-align: left;
165
- transform-origin: 50% 50%;
166
- transition: transform 300ms cubic-bezier(0.47, 1.64, 0.41, 0.8);
167
-
168
- ${cs} & {
169
- text-align: right;
170
- }
171
-
172
- :before {
173
- content: '';
174
- position: absolute;
175
- top: 0;
176
- bottom: 0;
177
- left: 0;
178
- right: 0;
179
- background-color: ${e=>e.theme.color.accentDark};
180
- border-radius: 3px;
181
- opacity: 0;
182
- transition: opacity 200ms ease;
183
- }
184
-
185
- :hover {
186
- :before {
187
- opacity: 1;
188
- }
189
- }
190
-
191
- :active {
192
- transform: scale(0.95);
193
- }
194
- `,O=je(C).attrs(()=>({className:"wayke__theme wayke__color--primary-text wayke__font--regular"}))`
195
- display: inline-flex;
196
- vertical-align: baseline;
197
- text-align: left;
198
- text-decoration: underline;
199
-
200
- :not(:hover) {
201
- color: ${e=>e.theme.color.textDark};
202
- }
203
-
204
- ${({inline:e})=>e&&Kn`
205
- display: inline;
206
- `}
207
- `,kr=je(C).attrs(()=>({className:"wayke__theme wayke__color--primary-text wayke__font--bold"}))`
208
- display: inline-flex;
209
- vertical-align: baseline;
210
- text-align: left;
211
-
212
- :hover {
213
- text-decoration: underline;
214
- }
215
- `,ds=je(C).attrs(()=>({className:"wayke__theme wayke__color--primary-text wayke__font--regular"}))`
216
- display: inline-flex;
217
- vertical-align: baseline;
218
- text-align: left;
219
- text-decoration: none;
220
-
221
- :not(:hover) {
222
- color: ${e=>e.theme.color.textDarkLighten};
223
- }
224
- `,O0=je(C).attrs(()=>({className:"wayke__theme wayke__color--primary-text wayke__font--regular"}))`
225
- display: inline-flex;
226
- vertical-align: baseline;
227
- text-align: left;
228
-
229
- :hover {
230
- text-decoration: underline;
231
- }
232
- `;import*as co from"react";import gs,{css as As}from"styled-components";import{keyframes as Xn}from"styled-components";var xr=Xn`
233
- to {
234
- transform: none;
235
- }
236
- `,Qt=Xn`
237
- from {
238
- opacity: 0;
239
- }
240
-
241
- to {
242
- opacity: 1;
243
- }
244
- `,us=Xn`
245
- to {
246
- transform: rotate(360deg);
247
- }
248
- `;var qn=gs.div`
249
- display: block;
250
- margin: 0 auto;
251
- width: ${n(4)};
252
- height: ${n(4)};
253
- border-radius: 50%;
254
- border: 2px solid currentColor;
255
- border-top-color: transparent;
256
- animation: ${us} 600ms linear infinite;
257
- `,fs=gs.div.attrs(()=>({className:"wayke__theme wayke__color--primary-text",role:"status"}))`
258
- ${({inline:e})=>e&&As`
259
- display: inline-block;
260
- vertical-align: middle;
261
- color: currentColor !important;
262
-
263
- ${qn} {
264
- width: 1em;
265
- height: 1em;
266
- }
267
- `}
268
-
269
- ${({center:e})=>e&&As`
270
- position: absolute;
271
- top: 50%;
272
- left: 50%;
273
- transform: translate(-50%, -50%);
274
- `}
275
- `;import Hu from"styled-components";var wr=Hu.div`
276
- position: absolute;
277
- width: 1px;
278
- height: 1px;
279
- padding: 0;
280
- margin: -1px;
281
- overflow: hidden;
282
- clip: rect(0, 0, 0, 0);
283
- white-space: nowrap;
284
- border: 0;
285
- `;var Nu=({inline:e,center:t})=>co.createElement(fs,{inline:e,center:t},co.createElement(qn,{"aria-hidden":"true"}),co.createElement(wr,null,"Laddar...")),Qe=Nu;import{format as pi}from"date-fns";import{sv as mi}from"date-fns/locale";var po="manufacturer",mo="modelSeries",uo="fuelType",Ao="gearboxType",go="branch",fo="color",ho="environmentClass",yo="properties.segment",bo="drivingWheel",Yt="price",Wt="mileage",Ut="modelYear",ko="leasingPrice",$n={displayName:"Vit",hex:"#ffffff"},_n={displayName:"Svart",hex:"#000000"},ei={displayName:"Gr\xE5",hex:"#808080"},ti={displayName:"Silver",hex:"#c0c0c0"},ri={displayName:"Bl\xE5",hex:"#0000ff"},oi={displayName:"R\xF6d",hex:"#ff0000"},ni={displayName:"Brun",hex:"#a52a2a"},ii={displayName:"Gr\xF6n",hex:"#008000"},ai={displayName:"Orange",hex:"#ffa500"},si={displayName:"Gul",hex:"#ffff00"},li={displayName:"Lila",hex:"#800080"},ci={displayName:"Beige",hex:"#f5f5dc"},xo="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQECAgICAgICAgICAgMDAwMDAwMDAwMBAQEBAQEBAQEBAQICAQICAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA//CABEIAhwDKgMBEQACEQEDEQH/xAAeAAEBAQACAwEBAQAAAAAAAAABAAIGCAUHCQMECv/aAAgBAQAAAAD/AHWyVQpVTFIiUjCg0MVSJIiWspVVSU2WpKSqpEkmJhHOqIakRymhoRGjWZhKaiZy1VFUwlNUTCOWNFUwlCw0TEbw1VJUwlSSMIk1ZaRqNZmDQjCWsyUjFSIiUxJU0lUJIjRSMNnUJNRJohKkRqiRKkSqqSpoYcsKJTnRVVVVUaEqmIZEQ0Q1VIiVVVMU0GqERErWWJyoLCJJU1RI1CMVMU51CVDIwxUiUMxVSQpIxDUwkNMU50MJOWmJEkjRUi5RomKoWJsswkwiIjVVVCIlNFIxTCayxIxSVVU0VNEiCg1VUhoqqqmJEmEYaKGmy0jRJJVUlMTZaqpipK1lDVQ0giTCUjQk1CTFUlUjFJNUUiIlSTGgmhikRJhI0VUaHOikGpypOZpy0k0TE1UJVJSUlMUw1DEww1QiJVIiNUVIwjnUWszE1UJIwjCIw0MUNJVVUlVVDSVINVJUJoc6hGyznQiSTFJVVU0VMSNBomqhHKiNQ1QlSNDCMCwzZSqpqhEYkkmJsqSTFI5TQKVUg1VUwjm0VVSSVIkaJKaiFEpEaqopE1lKYqmGNFEwlJTEiUlIyRUxWgShmKSmKmEpKTWWHK1DZUkrWUqkSqRhFChSahKYSpK0VDnQkkw0VJI0MUwwuaay1UpEiTE0JIxJM5mKSpKkQ0MIaikNFIWokqmhy0lVDVVUlVGoSRKmywtEwxS5nOhJoYjQ0NVVCIlTQ1DQ0TQkjQxTQxVVUjlaKqqpKctUNVNnRTlqqmxsYnKlVUlVGiqGSS0QxSDTRooYmiYphEhmJoqkRqqrMpJTnUMU5aYRGKqpKpJBRJImYkqSRy1JVUlVGopKaKSkRqiqmqGKkpJhERGhqhKaETRVFSNCNQ0NGstGsw05akkqhqSkSYpKSGYRJESSRKqqqjQiJVSVJNQiNQiUw1DFSNCSSJSOdEwwkkxMhMJMUuZc0aiYNFVVMTlSRJy0lIwaEQtUSJJVNljRRLAzCVoJipqhoaGhKpJGEYphJikc7KqEas6hcsWs0jQlVMTlqhqjQjnQwLFJDMVU5ZEpKRipoqHWNWdUTWdFI1VUMJLmYpoRSqc1DQmimiarOipophqEmKYk0VFMVSVSIlTRSVXhenn5OWoYmNdlPZtVUxIlTCNApSUaKYaESSSmLRE0UkmuD/PNGKqqY7ddisyNDArmpqNZREkYaKkYpGJKkSGkpJHg3z1YYaqie3fYaSmJJI1FVJTCIlNQ1FVMRopGJKaoR4N89amJSJjt32IJqhJhhJJKpqqKkRIlKmiqSYaKRpOD/PRqPK8gOLfy0Jdu+w7FIlGqKqkhkqGRy0jDDFWiGiaEYpK1wX56t5/s97T5hs/D1b119QoXbrsPNUVMMSSVSIwxSSJVTEaqipoYYYpNcF+e1d8faWatFwP1J1l8ddu+w5NAsVMMUiUiUiNRSMJMMSTQmso1FWuC/PV/T6LcoI1Tl66dR3t12INZSmJpzSNFIxJM5pikqqq1mrOqoly1UmuC/PW/Tsf2U876C4dGva/tX171w9HHbzsMjFVUlVUSwxVJSTQlMI0NQkw0Ukk8G+eui51zz0VFeT93enPAN267EFJSNCTVUTlYkmK1lonLVVJVSVTDQla4N89GqqhETt32G1CIjAoaEqqFqKmNAkjRNCIkuamoYk1wX56sI0NOa7d9iCkmiknLoKphKYaokRgaSqqqSGSqSNcH+e2WmKmE3227EjElNRVSUkxMSRoqpJikNQlNUIkjDXiurH46g0IiVdgfYAxJNDCIjZ0IlJNDFSJTVFI0JSIwaERHOijRNFVVJMSTDRUlNE0JoJGomGikRipiRoRzqhJESRoaGiZy0SIjFTRM5RGomoREpEkqqqqqRopqJKpzoNE2dCVUhoaEYkYmKqkqc6EYkiWHOoqkmKkayjMJTDCVJUw1QaDRVTDEjlGSQ0TVFSMJNCUlIiNDnUJGqoSkkRGKRhoaoqYmKjQlIxVNlSjUVSUmssUiVSSFqik1mtBVUlIpEwiSI0MSNFJUbIREREYkqms6qoqYSaoqpoYmrLaBEmRA0VTlSpEaoaEpokkpipGESjUVVaBJqoanNSMIaEpBqaEmEaGKmJikmGEaJKpoYRJiNCMMVrKUlDTUVNDFNlmyuWmJJzqy1OdZ0azJSJaKGJohkYSc6KRJikaqKRqGKYkSkRJJNZSs/pmqpEpJEqmhipJJhEqqRyzlpImpiqSpcpIiVCkxSNVVRSUlJTRSSUw0VC1VQiJUxMVNEw51JFVMUMkaJJKqGREqkqmJhhESpKSScrnUhVIKI2dRVSNZZiSFNFCJNJCaIqkpqiXLQxNCazNGs1SMVVClRopiSkZyxUjA1VUiSJSVVVQ0lUxQzZ0IwwiUjCNCOdDUSNZ1UMVSgiJIwjCSMJoK0Q0TRRoRIZHNqKSqqGSqSpJJKpiRJJKkRy1VMJJTmakmJGipEYphKaoQ0Uw51RMVNDUaCmGKRDQuWKqhSkRKpKSqSYJpiqc6IWBRERBqpKkqhYpESqRGEZIaqqEYpEkc6EmiYYaGJqoRiRhhEkkYqqazopEpoREYqkkpKnLSMVUwxTUVGqJoQaSjRTUJNRTFoc0jRVTFTCIiJMMSUlJUkiSIiGiTQZ1WspJKEwKJGio1FTZWKqpIWxponNscWssSNayWs7s0X//EABoBAQACAwEAAAAAAAAAAAAAAAABBQIEBgP/2gAIAQIQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACcfZEwJAwnGAAAAAAAAAAAAABHnz3mAAhfboAAAAAAAAAAAAAavJgAB0FsAAAAAAAAAAAAAI1uTAAJi/twAAAAAAAAAAAABGtycwMTPGSYX9uAAAAAAAAAAAAAGryYTn7PFhAm+twAAAAAAAAAAAABGtyaNi63vfFjp1OhiTf24AAAAAAAAAAAAAavJo6nfgRnjpadR4r+3AAAAAAAAAAAAAEa3Jsuw9YmBhn70PPZ31uAAAAAAAAAAAAAI1uTellfZ1erBv2lZV1kX9uAAAAAAAAAAAAAI1uTT57uxX+Q9rOu8cov7cAAAAAAAAAAAAANXkwAAv7cAAAAAAAAAAAAARrclIAmCYv7cAAAAAAAAAAAAANfjpIkAZZX9qAAAAAAAAAAAAAIiixAASsd8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH//EABwBAQACAgMBAAAAAAAAAAAAAAABBwIGBAUIA//aAAgBAxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGOcAAGeAAAAAAAAAAAAAAZcy5fqRJEgY1nqoAAAAAAAAAAAAAjv/RcgAMlNVwAAAAAAAAAAAAAI7/0XIAmJjJTVcAAAAAAAAAAAAACO/8ARciZjFMwjNTVcAAAAAAAAAAAAACNg9FzExl1nEnseb85MlNVwAAAAAAAAAAAAAI7/wBF5fPh1VqPVYTyNjsvc0ypquAAAAAAAAAAAAABGwei5efdXgTjn3222lzVNVwAAAAAAAAAAAAAI7/0XOHm7qoEZ4Isy4lNVwAAAAAAAAAAAAAI2D0Vl863qzhWD3Q1HUtlsewopquAAAAAAAAAAAAABGweissXQ6/vv0HC0Xded9FNVwAAAAAAAAAAAAAI7/0XlAAGSmq4AAAAAAAAAAAAADv/AEWAAjLOmK4AAAAAAAAAAAAAGOw+jMwiUSDj1HWoAAAAAAAAAAAAAnkW1nBJCUD6Vtr4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/xABIEAAABAICCwsICQUBAAAAAAABAgMEABEFUwYSFRYhQVFgdKPSEBMgMTQ1cYGTs8EiMkBSVGGRkiMwM5ShsLHh8BRCYoKi0f/aAAgBAQABPwL8wdcqg3brrynvSRjyyyxdcDT1IiPkmSIGTeSGl1jhi7lJVqXYEi7lJVqX3ckXcpKtS7AkXcpKtS7AkXcpKtR7AkXcpKtS+7ki7lJ1qXYEi7lJ1qXYEi7lJVqXYEi7lJVqX3ckXcpKtS7AkXcpKtS7AkXcpKtS7AkXcpKtS7AkXcpKtS7AkXdpLGql2CcUU+M/bnUUKBVElLQ1r5ppltrYAxZqUnzc+0Y/h6FY3yZ1pJe6DNSkubn2jn8PQrG+TOtJL3QZqUnzc+0ZTw9Csb5M60kvdBmpSfNz7Rj+HCmH844Iisr9miofoIaAo6kDcTNf5f3gaOpAvGzXD/X94MQ5MByHIIYjFl+IhL6ixzkzrSS90GalJ83PtGP4cBs2VdqgikWZh4xxEDKbJCNjzcv26iig4wL5Bf0GYQjR7ND7Nun0mC3H/uce4MAZAwB+G6YpThI5SnDIcoG/WcOKFZLzECCkf1kxl12spQ6oZ02mYn06eVMBtwD3k/8AOFY5yZ1pJe6DNSkubn2jKeHAodFNJgicpQtli74oaXlCYcQj6pcX1K9GMnAiKiBQMPGYnkG65Q4sdJIRarGtvUVla9AHDCEKJHROZJUokUL5xf3xgO7Y3yZ1pJe5DNSk+bn2jH8N0MIgGXB8YYpGQZt0TytiJlA0uKfuy/Vfz3xT7QVEyuygH0ZZK5RARACy6N2xzkzrSS90GalJ83PtHU8N0BkIDkGfwgLIzyCbYswCWA4y+ENlyOUE1ieaoUBkGGRsYdJR3H1N/wBKuZBNMFbSVsa3l5eTqi+NT2YPni+M/sofPF8Z/ZQ+eL4z+yh88UZSYUhvhRICSichtAGdsQeM3UO5ST8GCQGtQOoc0iJiMph/cPQEO6bUdNzt95KQDyma2mIYZ4Phu2N8mdaSXugzUpPm59o6nhwWdIuWMwSEBIbzkz4S9IeqaFqfdqEtEyJozwCcJmN1TlKBw4RwiOERHGOMevgpLKIKFVRMJFC8Rv1DoGL4XNrIUURNlwgHyw4cqulBVWNbG4shQL6pS4g4FjnJnWkl7kM1KT5ufaMp4ehWN8mdaSXugzUpPm59ox/D0KxvkzrSS90GalJc3PtHP4ehWN8mdaSXugzUXSBdFVE3mqkEgj05IGx1zPyHCEv8t8AesAKIRe67r22t2Ivdd+0NtbsRe67r22t2Ivdd17bW7MXuu69trdiL3Xle21uxF7ryvba3Yi913Xttbsxe67r22t2Ivdd17bW7EXuu69trdmL3Xde21uxF7ruvba3Yi913XttbsRe67r22t2YvcdV7fW7EUcxBgiZO2tzHPvhzYraVrgDJL8m6/nXH/8QAKhAAAQAGCQUBAQAAAAAAAAAA8AABEBEgMCExQEFRYXGB8ZGxwdHhoVD/2gAIAQEAAT8hbdBowfYDOUGM4NJ/uI3tmreCmyG9iNIvUWDAxY6xhtI5afJZXApoZyw0aqTShTAGsHMBQw+xmzA6QipBmw2ThgbxmjTSyOj3znY/z1tLov1nNu9fvuMMpJqzpYB7OkHRpgyhDhm7Dm0HuPeM3jFRHxHNDKH3BjBvZvVudJDOyBTYgyQNWnEzduV3dDJPkB8YGSHMIZywyh9yCizbyvb0+zTJodLP0PMBvZNZA6whXEGDOkPVgbyDOV5Y6A2gNGBlAVlcrow6xGUnoxzDeH8TWT5sIpoZWQFzvlgDFAdZutt9yjiDonVvERuwfEe2GrB7eEFI6DdD1HumTPUHZnth9hO9i0YCmUwd4M2m7De3YTMrQF04Logwkn2EvrnBjACovIuLeEFofYj5ALjMWnlgYzi/tNKYDSUGU8ys34z3Zz1/A8yujB0XiPdDow2ndVILYG0Zqw1g5spXPBcBzBlBpF6R540aF0tUAZyzSA8QnyIM0XZd/wCJSi4jhOsByw6wFMumAenSV1gOkQaQhqnMk0iMpxzDc39Q6t3T3kxVlPEFMJ7iFwGP8gMrCfENme/3o3ZhTKW0zg8MPrDKyHEn8g8oZsDNDWAzkGsPVouEemkYZxdTxMVINoh8DmA/+FQwK4/1vexhkz3AekpjKYKZJnJPkJ9YcMDJl5U3qhxrB0Z1ZShlAZIGTAzSlgZM+M1QexaBnN/WAtplAURm38b2z1NOEXZusK5QqWVIbwGMspke7AZJ0aLMLRTZOkPhg6A+tf3dauYApkBlNDJphKFSAUhpbS7rGfkQYSTThnuAMZQZMfAGDBTHoGsPeM/G0wFUYKjMmGrBadoTlnKGsfvD8sR9tBuwfFnCcywV/E61G9iNoMojVvdKZRjOrHwGcAaszsApt0J+M/UC+Tv+WTSD1YBUIOt/u1dEOWBlJ/G927ptGC2CkP2E0YLjPUn3KHyx0YYSjJHRGMB1TeeG9rcu9H3WB+aUNw/j+7BhYDmQfEorR6TcnVUUsS0XdeTIwKcvrchv4Z7np4If+GdnvhA/whf4Q38Ie+E+L60P/CH/AIQ/8If+Ec0uN9FRhVUlFCBHLVCleeUtzB7D1I5i5lBqw7NxiPjSv81TS16zVJQsEgvS+AudbYGkukU0zt+zQzsux8S+zHwWhlJNZe3FqHQZWVDf8Q1/pFz5AGSVPYZoGKDmlMopg/Z6q4kuiLULUpa1U1KqW0Vei+dhz5+uUpK0uivlVFa9XKxV8Loul18lh1eDgii7nRaFMPyx1+yeU6RlJjPpz6zgvn8zDvClX0hT02l2qgpHCtzVLcXmFb0EqOLwfVodnIpTlKUKUXKug4yq9yLIuhTlqG7a4jzJPXQj8T5ZWSnI7E7et4Kl7p7tzk1UtTq3uf0Qperu3DaX3XBdKLpIKQ7SAohDrB7sviVuwxi0GKKxSiBSrqwu4XJ2dRirLSGhaVJuvyrJS0vuhJZms69aOlDq1qflsgpMVoupi5ZdgtVS5LvQ1gKlf5LrZ0snaAobvlvPOLUqBJVagU9aylFKxWcqvNaLQHGX10D1vXKU7YcuYZ/q0NYPBSj36KXWmn5RUzuR7C4XhW1v90NstU+RfwdbQrQxae2+k3sD2BlYjSG+BRwNahRepS0U1S2pLOCzlOWvA9yOB1rIu1XRcP1HYbZ6aIrdrHqgWpWq7AulObJ42knOk50i8dYLxqRUtdQtK9NVLvuWqhdKVjws1NOio4NlR8UVKK61r6EucUSS58mGqd06wGEo8MPkNH4bx6xftsVCo9Fws6erP11O3qeqoWtWCL6tCtSLPSeqLLWWsWtPB61lKx9L1lp3TqlGZ7YuyjRXKXWKvVVqvRVWNpVq9S3VrUrqi7nVMSfSFq7yfE5g67Q5t8tBaFDPM8K2Hmf5hylBhLoeg5Acz3CpBGNiLIubI6RdIKGhpAGdh4M2VNNrGbTfCeoL1i2BcmH8suVX9JBrKxNWd0ewMIfKXTaeYqGaFVTNoeqbN2Wx7KX1Jm5FtUfeDiA6TD7PpgFteF8fM8MmCk2Z5ml6dkeTqU+W5alK0rWdWpyKy71dWqsqupAUrNOHQ4VDh0OGR4dDg0OD/SOPR4ZD89Dh2LnDocehU1+iOK7fS5b3sijtXmtSyiqil1SikkN5YOjdPDKKiBdpMmhhI+MXaFxhtEOsPuWCowwQNW52S+zGc0Uhj/Sugysg5oYSwqkmMzmw7Th0JXPDGI2sQLh1kLmBRF4TpM69ZpvYy+wGch1mBdo4vtYat7SQzTGSGUw0hN4s5DrA6RnINbIe7EGMXe1j2hihRYdv1p8sftOsn1HWh8YOlBpGd5Jyw2iqm0S9Wb/sF1q6SDf+J+WQ+SHmX8AdF2joboh7hFwA6VRNPWch6OhoFtdBT+iobosodZV84unaw72E9Re5HeYfYh8GDaID5L3aeIDJopvKBROK5dLQ0gzhCixdYT58hC6E1gB9hDNAUw/YgysHFuolirBiwOtlNYBbOGHMHEBTKrni4jNg5pmhRDmmUl38jiAoi6zNk1hC7+FzD3jHTejT7BtMokHVpwh9aD2+mH2QGSGkg4gHN7Qbt3j5n0zRdgyhqQWw1tWNo5qKWlMZrMzZrEZWDOLrAVlU4yb1jM2FEPWWZNOUoxj4sC4PcZ9nBpKCiwCpv5EYSSu9D6gawCpZSVQlLOswugvsf6g+S6YLiDOE0QMmlMXSxirWLtpxLMLA6EMox7P1gZTtIvb551mm8juxcamG8s5g0QzYebkK4gzleLPznEZ2MvYb2QKWPi7yT2npDNLgrQW336RW+6C0OExSn2lKHZi00TGtlyek7JoLZ2SmlPSaocpogv4gphkmu6X5J7Q9oKYbofqfEDZPadmUp8NGYfv1KM0PSYGKGzA2S+/wz1yhuwUgthmgpFVKTuh3Tt+j0pTVuiekwTsl6XJ1+ILSk/EN6UxTqeEN0+oGydH+EFsFIpFoGyXA9MUpY//EACUQAAICAgICAgIDAQAAAAAAAAERITEAQVFhcYGRobHB0eHw8f/aAAgBAQABPxCKN2UU7iZwFpgLXMThHVJQYQ3zgoajUt/t5CBJQCVwiVzM4pVd92SBtr1k0xEKKovYKwcgZPiBzdDAgJmAm1p6p4PzpLQsCZxCCTVF6kz6xNnscyK/HGFG66XF7KI/GaZl2R/aCW8Q/i3XGwgBgr7BsPgApYgSII2xIflXhZ8CiDcEaBU58xalwI1MYAI7EbQLKM1hHMpkb8ocvAFzyj+jPxkqyZig2O4I4xHwdlW+Ne8D5J3p8rhHzkeT5bBqKjKNmE3uXfTxEQH9oQadjOH5Lr4Vw8sujsbPFxGs/hHZIXrnELgkKafG4zjY7VRP7zoeIL8skQhlUANRO60XkowW/j4w/unXj3hQXZb4PPGEwO155DNzkEv0wWR8QMEdT6J4nsY5AmnFXnso26DFaWGgSo536iTkvrUWHU8DBD4BFeJtr6yjZ4BQ2PvWCPAALJGyZ8zjKCXhHdf7+cLMR3skO0N4OwWd9ISP9ziYWx7TlkMYVt8NTqXQWEbHIvfFUsoRDL5iOepz2gxHJ+BkvkPkmofmZxRSlhUDrv6yvKGoTZA5jFUVwAC/96whhFmU+zZ1Rwm2K+mBXeS/0hzb8ZcAkXED1sxiWrLX+UgYrKQlzJqOA8phc2TVdxlGKDKP/GCH8YS3/gYG4oeMPJ8dhuAmGskAD58kjPZwxNEWfPW1rNENIiCqr4RziTYZICCvwScfoHiSzWiNZXI5amzDizglH410T7yKlKHsuETs58vh1IQKp4geWzI/mpGIJ89kvlyGesWxaD8UiPGaCFCTxzyR/eFhKNc+hrXnLsxEBT+F2M8/NIyHIWLzcybO6wAkgvmUAR+c4A+Ce7LDvCVR3UbEUzeKJZoemOKw2wT/ALXhA4ICu3110xnMB2rYvjZKxxJTkGPjtHF2/sk8nocdYgwBdtJpPxksP6EEs33kpl2uOwZMDE/Bn3r4GABe9xqewwN4hwPhfP8AjwbJvoa6NnHDE9mglybLw98sDngQIKrDOgej/oeNUlsaXVCXlXzwUNAAQ4+cup2NJn5H7wzRN8AgQfWQLhvYgr6wDvuRsednzh5+f8UIwKlZ3sf0scE11XBPCw8g7tizq9DCa6PHTxPYMu3/ABkqTsyv+tnHsiQJ9HQKc5ZFD7m1+8kAtCCTuUSByMStptceVwo1nRP2wRPyTnoUxMW64HjPsWYT/ReKRqHHSCIWdGkZMz3pec/vtag5drgdzwJP6wQQhpOjH3igVuXBlgbZedrjvlErAB4TBMXqYLGf20JahscZzbYe4UQBY/OciQ+QFocLAdTrRj2S89ADzuO9HKjUnvbbeIDwj+NyzAyrEOAwhyRn6PN3BM7weAWHdu0C/wBYIpkfr6HjKc1QdbDisAaXvbXvbwxzdj4AoE5AP8PvQvDrs7R9cGe3kGeIt/3/AFhTlt69cZM9V7efYP5Pqx6w8iZ+wfgbwsOP1tCBZ5rPBW6ZIe/JOdX1bmTNZYn5XPHeMk+JXPLTrOi9XzClZSs9DX4jJcVHL+Dqc3wETBr1/WJ7K+TsRMHNivAXhuKzv/EeOVi2ClHKROl38Zo9OAG/OnHxkIdky6mZFZ6gcURdLeQpUI3Vq0sl13ZA7dhg5yV4agdGcny0z5XB1g6CslhAE74/vF3e58BHE/Lf5V2R6yQjs8qPENB58QmXBUEaHzhqgvUceMpxb4/5qcA96GhJoWb/ADhjyBDP7z3yL9yiJf5yP6j7LjWEUbjQ1UB6GGeQRLgX3xg+FeudN/OQebI1L+5WClowl3NE4ZfIUfdwXlsJgm1b7EMZwopT5TJH854AhIAgJ2DPOD782QDfjBQudy/pYRP7DiNSVWUIWzGtQVJ7wbNel7ebNsWgJ/mM5ckTwq2KfnADJQmtqILl4x1Tv6v5YfZaH3BjjPKEyVaR2oOIKiJbCE6iSLxRZHJ5JKvNOzYXI4TjPo77fQYaGCU9GSYnS5vE5kBaIiZ6GWg05MD95CjlVyQwXzgAEDbV348MEjZbL22EkzrEDzC8DgEbQwAQuQVGqfl4wQiIIdsk8eYzdKRKuPXOBHu90Do4U9Hmr73lRTtfkMcnBs7ZFid/PGXMiYPSC8h4P30VytgM50AFz1MEJzeE7ZHwB5i3g3Ew+0BP3iA8KSZE0eG8XFGDLuCWLMYvnYAgClyD8sJpbI3zvECeZPskTKhZxDosybNr6xRSciVHrADPIbFMmZ6OLsxRlzo6OJ6gCjrSh3hTIJSmzR5g4uvTheE7P1jX+l1bS3gtQVoaXZ4/ecC0Gk2BG6LyO7QmSRBPnNppyQmJKu5OAPqINvbMDeEsPhncLyBIw18uF4LDdGiOR+pIyHNuzwBs4td61JskBgn84QLvaXoiPWFEiIm6Cg1xlopdVX/BHWKiSbgkujDxbsuBYBZn1iMSiY7W52cP2BrZ7C5nJgMs9BW/nLnUfSIPWEc1aNPkfwck/TA5PyiML90wKM/AOGvQZkE1FbwuDwUY8pdBfGfiimP2sepEurBfxlz8MUvzAZuRIZYH8bOWd2JG+uQefGAfAcQBAszh5BTHkRfgTkwQSdd7uC1hJ358pxtjEjv8y44GB1RXEAmH2cF70EjSiVg7UGtbfY3imDFr++8mUw9qfha9ZAcAoVpbPo3jfbAKvf4w3ZO0PKXBBX1gQA2uuSEr3mg42TCkyOsJkAuwZXNfWHbppdJmgbwTNLzCULbGetCHK4RWEcuUGLk78DIruuR14/WULU02mIghnxhfh/Zrg5EaXkRZ1tZcQquGGgODzg6RPNAyOlhUnTk0QdphB4Ad0ZKADBEZfwoMz9AsZPMIwYHjkLnPnkmJRgzA/jIpkz/REDQNYuLBP7vlm8CZdiOELQ8ZPw018f7jIn2+hckZJZH+IR4CxQIW/Bim1giLO/YJ3ysBioG6mdiAMRr7Gr8Yd0tgeC9dfWQ+gpJF2Gf4w763f1Ty5HM+tuRGc/FF1PEnIn0x3dEAknEFT/xlTeIyVyLdNRIrPuaMbcDDtwyO/RZ/FZM/prxqWORmwbULadmJ8Z5jYngc9jPlXZvo2fjOyYs25qiVl0pXddIAQcl2/AIX6zlmj5CFe37wRrchyPFQT+c6glwIY5aSPjBex+zJLzYsmdiI2ucgM6f8x85APXggDyyhnq0a7HDonNvlrS15DyEXztn6fPjBwSCZi/mziMbG55PYqKwRCk60ewyf5zuYmU9/rPNXIMH5r6wSxOpPIndXg2SFYtfFfOJLR5k2j3vvFLI7f6Ogc1AT41rrWK0dmmduUv5xE2PAiDyxMZIIcD6r3l6KIpD/ADyZvVoFbRF4JG/IEEOeg1kM2SIjvcICMexw6v8A3GK9V2DsIomMsF/kFSZ1sYZqTXQ5+sdact/IrDYnm4J1BXOCBH4RJ5o4dakh6kS6nBxxRtfwwMQ5e9SNQBIeMafqZmocYaJlddReh6z2B+/vjLRQVzy1pEicILJgd7UNzh19Gl5u+M+z8LlHr5x6cj3c1cZoEgkvd2QJXYyIsnEwSAP95yWT45Y2oEs4dmSof9I1fGSnfv8ACAbWGuajj5Gu8R5sHvXEj4wmOjLD5uwf4yvstkwbLLnrHDuJfXEKHlKztQ+a0ozxxEOOAWDvKACKgugPvWGJ4F8jym8kJCFGifNJY4goki90flHEhK2fB0XZLwK5G9yInuMFOUZ15cYS4Ihn2Bv5y532IHj/ALgE3wTHmuHgYD2btn8HEN8SVv1EPNp8bfzwT94GYPfiPC3nU/MhdSFm7mTwmwdGRnIpb2yE0B3j+oICR60yssxrRa6MGFxnJRJ8Sr3gS2l3zxIbx9n0H+dMQLDejsvLhzLNT/IXxhYHgiRHXsvOqiCHDL8TlPgWDIIeuFhC5ZMJq/hrAzv6g8+Q15wToKh2tkeBGIRvRYMqjOJ6g860ABlmy0JgEHx6Pzl+RuJ+SBGT0Pliwqkcd4QDvUIxG/IOKZ4NmRtjQTzsdXol8nLEQF6Ez1lL7bL75IxHok8grf3lEjRDtASiuMEi51yYK3N/OLQXYkQ9Hg+8EiHBNl8QxqsBRLjoVck6nEud9EcJwAsTZCT8RuQ7yjGo1Oy6ZWAah36Neus2z/pdVAwdlq+CLBOKDBZH3NPzjj8ErRllqSMQS5NJaAPVYO5Z+hhDU5dX3QBVaNYSyZQfLA04YxAu0h5PBhvDM3SGvp75xqTYFl7JhB7GFvkEKJIf95e4PzuiHR+MRh23cLYV5+aow6GyMQJNk8/ocI4gcs9/M+Fmt2CTO+nBy9mW6BiJAmsLQLOhFk8jxk72AjIPT08lRpFAss/YZJkaZmvZ+cRBcbXXnQGQeXMh7f1xnJ4TtE7J8fnNJA0RuyfrCAbLAQiSJ32Ti9l+G/aI/jNTJMAW+DwSMpoq2QCQ1rhZxbDI1Wov+M90R8ua84XBg8LtyTws8qLhFBuA4QGLd8gjmXMMDCH6hiY/Jg/WadnnQD1yiMXJin1fovCOpaiL56xNWB8ICCDO8Wq8R59MYuKNAWBIMhuTk1A8cKQPeGJbPbQ8rX7zYWzXoIe8gGAbFeEBKx9moKOpdJT8Z9pGKlUOI+cQMSonV0PJvAOGO7fbqd4QLPncHUh7eeS/jj2HkwybpulSBbBnFGvIoyY2x1hFcvas7fjAJFrg0plecHlEvuZf3m6/k8nY3j+RD0ELnACgv5cQQdD9YAKINnnY2ao4RAZPmu9/6MIiyqItyQT5eKfB9kpt7ymGfK3Psn8YhDI8Nkc6yW4YEQfx2sCmCRzJgghBcYBpasphEgHg4tNu9tUTwMZgeCT8BB4rlEozXALWN9v+vPd47DUW6NJrA+Jh8osW5kYVY5XX+C1nxWoin/qxCmwZ53zW8O98v8JViEsPf5YCssecEzyBD8H8ecJL/ufKl5+T0QIITwEok+dlWq14zezVemdmNZsI03U0XobxkGat6MjgGsk/Fg+UcZFhC1MxuFkD8nnnH8WSGQD/ALSyl/BPdkNicrRE0a8yEJ4yfHJhkzQ5xekiywyiL7zxvl8C/wC8lljxQuE+fGXYXkGjU8o45MGOwZ/IwgvmfmJEvjOLh0yPBALYzwB+qC4VZDSNkT8/YrnNKiPTQ0QzWDgqfsfmBhvZcOSCF5GMGQ9P8MoFfzkblSJOlCaYzlwlNDq3nqHri3HJw3u0vTcGX/GR45YsB4AfiAabHcjPt/2ZneFPojqdN6eBo73PwWHQ+smDvmV34PrCvfsefFmcPhc1PZYgOsuAQp7A61BGMsriA4ueNxj71AERydjLBBPmgvt4tniZ+et4pHyQ6Lvm+Mgo6PL0zHGE66I3ahklF46t+q3AT/rGZXO9ctcYDN2I01W1LrOaUkizBNCs/flkocUVxkNliTOhMg8F4/PyBV0QsVCd6i7EwfvBHyv9WsMsfbr0PG8i6uZq2zGeSg4gTxcGOsA1Pn+SEQeOs9h8RrmYwHdrZ/woYSFwnFD6dZoCtwxse5eH3Jk1XJVYCTKMqEFxsziLG9CVu/jHKJaBev2oWcCCfpi4UXg6vltN8XiCg+mjPIBe8D/Kv0EV+s0jFNDklCQY/GAJk+b/ADKlYac2CGQDHokie8XHf4CUMSfWVLpB3OxOslgUfLm9yjiBDWtMwu9g/wAZ9/nqCCb5OGJnwWlArmcHX6+GICw9+514IFke8j5Wyy2sA8oBepoCjiAhmKvfSDDyb+PgmVYGT74/h6zapFvZAF7xqtDaavgcfoWrIsEAjNUXRD52SCL5z81dftrIkKlCgnkbOMd3zvi/6xgQff8AJ0TgKDJK7l7BBXecUXsiEBfnGF3pwxHNA8YrIgfBCvlD7xHy9ngyQni2e4v5la+cAUcfIBkgzvJ2GRsxszGusuTC06NshcZ9zoy+OKeASjNg21wSh1i2xvuUYHTANOlC1ueMLgKQ/wDDg+snkdhD5Mm89vkjURBneJgipQNTIR7LyQIR2WWfmKWPkXNIEnU7wdwu51cSSsEuRIknaoqlibNGE+VsayIs96d8POzUoCuWSHOJDg2aZE8b7xMrQX9e4wMhvR66k7WB2ZAGCfiIxsnY/jY8HAFEjrs8GihkH/Hy6OCKJ9hE9fPGRPfQjqMublj1+8AsNgx761U5+wGdxyNMZZ5A40OUSOsgqwFHqWLn84pRonuYhf4sFiT4pWfJrJ4U7QHQIskaxRd7Mmq7ZxCTIPIBp9MPKBouOq37yTvgToGu/wCWBXYgARcDw8Mo1J0mOzU54QLR1Br3hV2gLARcSbJOF1YQ73D9/vORsS6JBk6O81xJECOJBuThcGw4hkeD3kQNjx8M8vE4ZjiBIaOGOL39P8MgynZBHVDzhkAz6t1fWAFXwgUnwdk5zYTiGe3zOH3EI3ryPGsAcSF5vkdRGcqlqyesgoHq7gEzziFEwLQ8z1nwBrvQmixjglnRkRHXeQnKqKGiQPZyEbt0c8esN+C6RZoPbxXcULERT4wPV/iKmUzgQDDa8l7M+ZyDsJ8KYgdOcPbVrknRN7+sXG0tgSJXOImNao+jy821MgkajU/3mrXsjYAJJooYFJBTYmZP1rKT+O+iaxSnJqIYILHB/OTvcNUNMHh4F75Sffg4RUn5Xk9kvGGwyrVPJgA8yZPJwTJJgkpwFyRhgMyv+DPN09kHY8PPwt+bRXOKI8AShyC+cP8AaMtLh4df8KMfGFv5Robg8rEOfyjTJdt+80n6PJPyxvJILD7RBJ0UJWdMkttx/wA6wBtRpSa5OIc+j685HPhBdca+84sR6+xkRAAL3ER0CFgf8CKBhks71nB1oeXw+cA4J26Jf2HjokczKJQRXYwUiae6Sh0bzSgEIcBybCvNpnQ7bj5eeYubQDXw8EhoGk0flDPp9ln91ky+eUCXDReAj6A5jRAk4ABxpEeOKGPe+pPwsRK/49BUcsIRw/D9XgZU9KbGzAOKeIWlRh39YDQSlGnAniic4gcA/Hingl0WbPPCgwMfGzwdCjLFZurkCI7Iq8DHBgUfsClk0RJ7+6jrEfg1KdufWFBkCetozGDUGGAwVJ+aGEhmDXRQX77wwvuXo+yMBM+QBM+UTvPr8mKABSGL9nYPyGy8Yfos8D0o95ZAB46K2GF8ZWlJlSHRdVnpH7frHAXwwHKEfebHDRHHwSvWIxd/A4smxl8AtM9FVVkQfBhxEMA2XjhFMzM3QAv5yq/EoKBycUz/ALRsf9z+48ypF/GWWfgT0BpA3xgcl8XYDZYrKQPMWKlHmT4wU3r3/EYBvQbn3YucD17J7LdpHL7Frx2IM534F/ySGNd4DQoASre313iVQFBCqN5cnW6fR4D1kh/gTwo6xNdv/pggv4zga8IH/DjCNlpFB7jRwcz9EHwsPBmRx/yeDm54/Cc4iv4n5aBjnKBXybn4vDK2QK8xfXhYvM/aYL8jIiNx6dFL5w+J5W/JA4xdLwzPNAvGfYk1wucfFFuZKiO0MD0RM10hu4wdpsftKxkPidm6LVCveEr3YM/AYjEdbMbQuf1miZYZ4/Mh9ZJH2RKkRzGNSFKfHmn4M4oQB8Fcs6WPYKuSTTkqmzkKBR35s7eNeGv5ZJ5wD+x5me2T7VR/QX3gHcq+xZvT3hmA1Jd7wczyZrpFWOsl9kPqvc1WA89bmrIqGCPBcxHknZwsH5EwDwHi2Yrrgf54BZnmutSZWLdx8rWt52iRxwFxzn6P3/PVYhFaRCudd58e3fpiQw2IVSD8dIHG+1FSYkKxOOAygRYr1sRn2JAmJgDUYgT9nsAwC+86tGCx48gh/OHdCm5BjBu46chvRWOh8bIO3UziPTN6BUvnF9SOSYNnxgral8mt0S/rJ1aiFsQfAKxKGGdHvQNrFVjsP64AXwcq4YS47Ce8S8Ak9S2/AzswkHQgr2BiSUVZmPPA+sCcW71rFovclQJT6ecuVHXaFgrKhwTtwuNuIyToX8k+DisUF+3zU/eIiOtXdkcYnLUwZ52Ds4KQ00UCeT0MRleEXNB/AxQ3N8jxhwpYhCYsPmsKXIgCitRsnAeX1D7JB4LxQZLgDpEjiGCqHrfysi0yUVUiPInNFsVUEeOhg9ocxW+3nHKoeFHYWMsiBNeaPJJznzF3H08WlCoyAelWKUGJcb/oYpa5GGX5zy2N1z6Qxq3Fo2dF1leJdMlqSVl3IKoEeTKjF4JCZ14fOJnXY5/maOsFebaRnr/TleRBC7EE9DEelHjRAiUD9YRIXkEniYEMnFyJakQPIan85dqQObiB11iKPqOEdHxk9i40VHoLnETXOxLv6/WWkwHI1IEBaxc6EJHxy8/MuGCdToA4A+xA0QP5wjfJqJ4fOeeNdFHrF2lx42DCQxdn5Dc77GC/B8FBweQ8fZEgmD1A4Z95fNunxKRwb9PRhk7eOyL7qLHWQQCq4jjcmH7xArxQP2efOIhlsjarpDnDWnCAKmJ9CsQWq4kXTm8Ij9nuSz7+cFESB3oJb8feL2Gf3Upz9YAqfhtEKPbnEe54AEbs61xkrghRxMB7YOWDMuSAXxHBWTJIG/1fn9YZ2bL8TK4x/JKY3CBRv8Z8FCBR38AA52Y6MAzJWTMp164VhZylJI6k2jZWARfw2tckGcQ3BBlBQp5g4mAAhA5SgtLnnAuNkMhsxJ45WWlIVPul9fWSBtcoLr4nNmeCRoWxe5wcdsDgML4xHnuzfGDsddRvl/rPtqYaMBxOSj45I3bf3GKXzsQPMF587kTIjVk4Ih7rc3VRgQbNBML4GxkC9eyp3DvPkbT38jBQO2Ziz5o5Ym3z9GOMfrgSuIpexhFl/RE6TLc4JL1rrsXvPyu0CejtHOjqiTcSZ4Bx6kX3KrbWAcW6sQtCl9Z4+rJkEEiP4yiSl5pk+WH/AIYjxG8iwR+vOcmhU/2SN4G9/wBceB6z17HL4PWa2jJRZuZAn5wdSGefyXi7GtyJq7feV2BP+cm8cNgNUlclrDo2gDTjrbjJRhAMEBb8Us12fHEciVjIBP7L5JzjxCK/qOs8WWOEhQBM/jHN1ZdVb5zZAc2QIe7K9Z7kgGPJm1vDe7GzJ4GstXCPTXKIOCCWuT0SJsbzuJjeyl/lhLh+tyGGEv45yRY/J/p5NslmBQHnr84gig3dptE/OUdgBl6LNFw8uw6Ygqf91hMjxHn6QjPoQT+lC8NDTb55EwB7zcw1M/RQEgTgl1Kgv7Eaz8PacSL/AHKzrci2ueo4x7/YjiUSXhsBwGS6VfIOe2hRv5IhjDc7jslmGZAOaX8NShdgY3S56vnneRNX7IaYJNvIKjS3Y/jxh/LIIV0q/wA89q42bNmrwEq4+DXdYjTeiwxzUgLC/IXQZoA+cK3Mi31MaOTI5JuAgkvZ4nDDkiWDP+PjJ+Dno9J5sJi7962s/MNhOeURl0WhyzDkIt5YbI+F6EnHJnQk0+tBjvJN8wioITySTY/KpRWUogPYj7WT6ig6ggskfGOrPwkxNChky5opeh4MZft+RV3IeOI2R0ZLEjWb+mwPUTBzxGuDGjYK/WcFn+fSRvDIAEP1qj8YCC+B4gL4w1/uWQpDOeROxNIleHnmUyXsCuOfWceiHIvkhvKs7jvjp5b2GR4pjz4w+OZIQhn4n3g+umuWzrqsWlVS0VEbwc9QZAjlU+KxHk7euM0I9dhKahYCw5UmAKn94eQYszcn8vLMiUCv57Bxq5J/qmhiZTc/RlfWOHuQTscxwDgLAdnrTmBNYoLlrkG+ps4AiNmevhF4WzfoyPDn1j3EsiSzz7azRUvUfB9RhBjhy4M0tAHBEeXK6hlRg1sSYSXtJPIk0UnfHNz9ZYexJk+31nIGqmG49jJPFhC0VR8Gc38VXd+cXBMcAFXoUsqLsq9V485HBAPLe1mMIC58bhfrO355LQFRznKhkdJ2fM4Gdo6VLlbGAGflHmx3B+cvakQEUa1ycLW7BQM7bImTkaCUiSRMgNayDskyiPtecMliGfPwDEZy7P0p+jPjEI9ptteychiSaXfDO5nFwQtBFJbUvJoRsDMaPxgF3DQ0rB8/eciR5Qfl6R/GS5mI1NIGLGBARyP+Q5H3k0H0eA4CO/vIcETX83F5bIOmV49gVhH9MkBAJc/1nCanye+byZWuZJPH3GbqAv6Qq8kAkJO+9M7/AJwmN3bieTwM9NV1b9nPK6gKL8s4efCnkorohYWweCVlHvZyv2F8sdinlbIESZZOy1CxefJdOjwXmp0gPmZ2xhfJrcmQkQdsfeGtgmgVqjrvCTEz9MeVM5G3XTjloYRJ3tO/XH8ZBMMzPDlTpH85LB/USn3rCJVM/wBsc7+cfIvXkUPhZo02pa/ywUqkcaRqhgNSAAA/0QdvESwTIv8ASEZIaIAfnuCbeAIv5d5rmjXh9GcrbGpRZd+XgYYpKagQPb+c7tC+b9YWrk+7GtgDKC2hDW75vB86vRJ5Wt5DAZFbiHF4KRlDWwQK/GT2ANC+u2f1m/k8bQmoGBSIe48iW1hMEk2kpR/CjBR+QV0TGk571a91VHASVJivsJPG6hz7v33gUJ3IcCqPnGuVCr/s4js8DsB9DrEAL75nRZ8eMDmQTrpyWucSB0gxNHrSzgupceVbRyVPhgl3JjBNjbgBcc4jwede94IQvgqrE/GfBDDPlwIvOQRfxz8DnD9lTB9a4jDRvc6IL8h5ZdMiSwSF9PPz7Am0VnK9wSH/AK8O3IXcTdwHi1Wp50RJaeWET62xJ2Xg8mST0a84WTXh/sLvF8UiWRENGJGXoNxJscwKzRgg70yrErAXupmIgiLHnITDlHyeZ4vWHzz0u7mJwcN/cfEMZ3JhEKS0/X4wihocmI1t5IcscRX+5ziVsWSiDClnI+CRzVJ0cCTJLkzYsNT/ABn8hRA6D+MA/PY/Zbwx56G+10cRlQkhr0WLwBWAuYG6j5ybB98H8ZW+3A3uN4FW3AkqWHJU4+GSTvRqeMCbHMIQtiP3nY5O4KKHOs6SsFCirqYwMcOvgVIdzkk6FB3tgEHnGfKejdD1OQUjMkqC96GVQ4qz/I95ASIc8nis67Ds933mw+2NAzJ8msjUA8IOxHs4UwWpvRHF6xccmYP+nCqp2SBqbrLsLo18bwoeeBxVmnig+w645/vNpMJR1T08sd9MSA+2cnrfJA8xeRLESo11MDJXDndLlBYx63IR74OE8Cx7L2lncGpl1vj9YQiD4Fy22L5zoO7AgStuRj7LoADbiaxKw+0bjqfOHiRwe+1rNOzNfgQ1hnY5ZnQ1tnm/Pzw4wasllh7/AAVlon6MXQU0M4nkJp8n5zdVMPexFZJfBh7EXQvEhp8PmIkIF4UOwy5c6C5yQJ+7NQO19507P8OjGEFcwbX8Ws9rUeBzAOAiTNnQb4jNfxCBsEEoZwQA51+9OFmoZc6nljg4+DGloJ9ix6yTtAQQP8sF/fIBa+cv5LYNcO4HOoh3oRNnCIqm1M14PvL7EPYZ9nEP0AxMAXefzZiChwJz+WAjSmvOWAXDqTyN2ZzlfYMb33j2ZH8WA88YpPUE7D2CtDKhheLB4TK/eV44HMLiwMj6EbD5n6vF+f8AU/eSEBqHp/mMFutEd95LG+Q6NH4yQxTqa76ZwngAjc05nkTnRSXhaQ8P7wE+qtkpyBzkkM2HUQu6ydQKJuaEeB953Vk7sgH4jE4nwgmH67WcAoaSVp3+sMmQxVqCXXSx2Il7bjvEozKhikm9N5F10Sbg1d4m4gSJIL14OMkDZE6vY7AZ/NPVogxJPp5GggSNoyy/WEE1vRjt+QTljtovaEr1kkNTwCnW+hnXLyjoT2M4NkqRDlSuHnIDXAk3YeTzJ5I9Vpx7waKRYfjUV1g+LaG5ZB5xVJmyHKgeFgdX7Iu3t/zmzpE+yag8ZLSQBg8IR5bwdSCFRQ8dE5zxvviXO/7xc3aHP+bwbsVFcKfrKItxwBScQ1hHEKWapfIGAWiyRvZFHxiGoLDsve+xg+mqZSkjw8mZHobbPUfvLZZVKY5jnAffbVdCkDlCnKDZ4XgaGPiaotp78Z4KBQ0wglMs/WaVLrRG+Dys5FVtIm5wN8JBXGx8/jJEUW3okwzx/OeXsDl2YzdoQwSY2Lp4HQfk2O5sYZ8H15EirybjRXDgI5PJHACsQonHkAtON0dJs4DSDM9UAGOAcI2WKlmDSAH+nHwVE9AcGsFRtIGDGzs5YXSIJ3PO8BnfX2X311kjSHPqyLhYwEz2Tzwvf4zd2YC4ceck3I9h/TCTxSSWvGyEZ8DKgGp3HRVgZrn3/ZGfRKKuyQz84oUFpklIaavOB5ls1fd4a1occE1t6GCbe4IUbGGjLpTXBfnNDwzKlu+DOEH8EroIrtGPGSgW5CNQx4dYyUYDFHy2OSMXZB1xYLXZwTekQq6Iwjsr4EuGfJxkD0ABy69jJ9KTWjjF6k+6jGV77Jah2s6ZkxoxfmcCLIcuaXgCzkvmV+394o597FCIAOHyNlyxJXw6wuQTwqdGVd4E5WiE9CA9oYXuQ3xCMFwshCUqNh9E9DIdmTaL8OsdkmwEKExfYwMRBAPr0eQfeI/f+/7eHvnuC4SDJGCQq8ABfcH+cNKGa39kd4IQr6JgCp2cIA+yjPpWv4wNL+qPRl9DCR5TK/mKybH6l9sxlt3/AEYmDGdbhaJI2jv84RyZL0C/rOer3ShXvJBPYfUE2Xazf9mOiJFZ3PHJsL6wgUOEoO2IOzkvqg4sszb8PGmCNgypBiUC0c48hL2ZWkcgx3R3cwkTi89mWelJkZPyQaR9rvCNiS1/PAM/eF+WUdLsP/PCfgX8/bMYpggmpvmfJwn1cjh/lDNlH2JsoMu8rn4uHNlfeEooQb8k6PbwBLwq+fUZzG2AG/I4GsQ8ivS6H/cgcSkXdeMPHO/MnYIzlDlsf9yqJjnbS+zlXWiPwi5/WRZPGxseAc+TR0SIjkvD6DPs/uSctg/0v5BxS+Cb9VHIw2y4kWvcEBZw+OlEibrFxTfkH0sU116N95JGxQ48wwMH/d+xEsYh04gn4e2skxNnT0xOiHklCH20fuxhDpH4bEBs6eLY3c8VYNZEKSONAwdnNJdUVHPS7xPw+72ATyTkcAUTz+pe8F/6btv7OcEjpn7Q5z8u0BPYMjHDHmKJ7vjD7NkH4Q1vFadjvQ0ij6yv6HWF+4MqEOg5OV/Vs/JRwsdRaatBr5wwJ0Lk35i/OOIM9TuCiSgs93woU7J5zomT+VYGxnA8ea/eFr3sE66DCwSIJPBPw6vE/wABX9VWCQA0rQI96RzamRU7b2Eli1/DMvwjiQIE9T9oFsZKFizAHwdTkdmNtF1bVY4M2R35nVXWJpn7N9DmcmjxFGQQvP1nBu1V+XZWCOA9dm5d5Rtx88WYyASuoiP4vK/HS1oI4J9vXsaJyeeZKix8vD4M2mAY0u+c0QETXmTB7WBwv0pcihCwuCfxHRL4yfMXz4VZehsixNjj5ypOhyy1Mn8ZLG7F+dEZyaHdT0Q7xn9+ufHV4oC45S9PWDugV2EYa4GTUs8QBUjnPMadMAGZqcPRZh9Kys5AVkSb57fOM7kyPjZXIrOSaghbHezedhBOzYJ+mckNFmuAP1mrJaUyRx4nKagBc1sz1iNhVCB7gjqc1Bcu+P7jPhNk9aF+sLRlT5Skz8d5rRA+WseYzsMIRsIb8n5zrW7DZLnENJcgyzBnoYhwieDPJfg4Butx+XweMXJ5BuXA/GLroSZElRhZ6nsyvtT9ZJikdSW7PWVyPAloAmICBytTfQBgkAresmD5hHhep+sm4JDBuPH7z6J5D81l8TZkQPOiM53BHQmRE1guTL/O4h482wDJqfZv5yTsMWC0WIfEZMBxQOywUX/nnHyDp2WucDS5OwkfGknkk8gHwp42sHIrW4OJpVlkOduVDoD85Agbe+A9MnA2WFydGnOoGL5mWZRdd9YQjpEJF0vxjUEbbgCGfnIo70yEAKJFoZaBA5Q6hxKQjC58zGtVYHznIhlWQt6EsVh1uWd74tTkgAelrrtDOGaL2+3w8IaC+bNPg85NhkjcyOC4Gbll+Si3XD/GSStwSeD4o43sJgNPwC1A5xO6872OIz4skTvmdhZpkk7qHyF/zCSJbqIExZFYufhw9dg7yRwdkvdQPrLXyxI5a81jL5DViGbXOOJHenfmXWE7sQtd+yVi0yAdT8MoiMjjYMlKTrSw8BqosHl+MQKFK0WRsTxhLuIoyD5AkEE4GyjIhm1sLo5O99kBb9M4UxDQ11IB6ws6MnuJtXC+8BJJ2GhqiPZOFw9URcxXOSY652lJHf4wBjhUb3MD/HGbgx6g/phfZhShATsucDHYTATQGgrLWOrkagtFxc59ph+sPgGNOSw3HQz4JRD9bVZHrZmHIXZJyKFePm/WIAFii4YnrJIoeGKMX3kmanlo+0JeCvIbK++cmr5JgR9gr8Yv+kkzaPErEgeeT1y4rJM9cQX3cOs80ocal7wD6tp6k2N4nJt3v/HWIFwYY0ToWc+wkBMrtbw2q/e65YX/AK0JFksg50tV8av7z7g9g/Z4m89D7aN+Jws6hwFr3UZCDY3BU7nt+MFTe9EQbrWcGTPHLlBX7wdUzxfRl/1kt6k245FAZ+E1oz6X3g9ebc+uP4wST5HyLK5eAuuIX+AQWKN63RcoDlgfJMr464zTIqixA0mUTnF/58zrBzujG3cQTn+RtV3eDf4nXaZWXanQlka7AwFRJGuRsDsHOUUQ+xPajAAKIcgQdGbMzm/opSJG+8INHmwzFLyfjNE3ZRHHUcYDDm0uDoGIGeedI3yUCMkQQS96+A0MUJcFe928Amg4YCjxws9EAnwZBmy8SvZ6ry14xla4f7sSRn1MM8+5zUw2L0DytY2RW9z4IfGQyPx27uMFmG58ED6xCr4hJn6nNn5YfiZ3oYyO2OKXFO8Oo2fZ+p+M7sw+dCvGAeCkkebs7wnXX9KRNZLEH91QAMDJck6+WtBScKeitWg8CZkeugONPnGe5XySkof8Zf8ACkiOcggWZB6gd6wtm+BUjiYGS9olFOPxfOWEeOPVXuc4NJKPRfnzhHvjyO7aGs46MnZPCtnXWADYPve6ph4TC7e+zawfVbMQh4OFetlTBhFTOKqbZIB294NCifBgPQhTg6oeJXEh5CLRG4IOiI5ZyuJZqquTTxyO6W4/Cy16OtTnBPmAFzZaT6yqS1u2S+ED7wvVXOt9BfeCR5snfEccVm0wfTLuglkjm2nfPUPjLjYq09M+MfJ/KCT8Tzh8h21QF8sjJr2SNxBqS8PCfXC6hz859mNR8549mHtdOPjI0ABFKTwU0ictGa5nkMVlCea71KJJ8ZPB+eExexgrkSoodE37wsbjlom4av4w3uYEVT+59ZCJ16MOnxhZ8Qtggcl5T0Lo794ANOOP5/WPmd0PBNlpfeQ44Gid668Z5d0Pi82dE/PT1/WIAOQzok6JJ94vtvhbI7VdYNRsRvSY5jKHOvT72R85BvxA2KMUesqATPPH/WCdw0U72cDXYLXXD3GTZ8gCeYi8Q3BMxrxwZGDca3ZX7azkzbHcfnrrBpBxM3t0UsNsUjUHsh8PGB5t/gEmWveb03JnpAclYuDR4Sb1LHeTdWwTEXq/rHacehOugBRrIPlSQDZXVxkkbBtPS50HggIBceWfayYEMSzy1V+8BikLmlv6yY3sn3oDeBwSLTZHSIxI7R72LjbxcAPc8J1uMF2Q6hBrjX7x8+kPTD84SL2avmv9Oa32UefxgcEku+3CODyDd2DSPNe84q5gxLQXGER3u1UzrDFXKXA0RyBiM1dqR47O8KOma/o8LJCq40DSPkZKmzQBqYCpd4I7s9wry9gZ2ECOesJ6a5IA+ewcciuYZY0FZOBgpuI5g/xkNW2V8PjCJ/Lr/prPII4omDQGIwW/oB/kYjpF/EcjcfGImi+yY60waPebMNlHgqnw3zlxSo2QTK8Y0t8mfzRWP69MB2T/AIHDccFyBtPtd41AriwOJEvBlK30rXnALdwZkMvQwqTrzdRwBltuJRQ5+jh9xHZhJ6HOD4Gh9nqMgs3oKfw1lflAyDT8Ec4RCF1+z7OfikF8FsYQI7O3J86I1l+Hrf8AjiihoTxH3GM+O2CnA9bzySoCG+KlEa7zvmEwg60ax6BMQB05Z/Cx+TYQlAcg2ZyRQfuSsChqaIEWI9HCKjpiCFRHn4wgwur6RZ9/OQNsn06D41GDrczyDLHeT3qyK3Gk8DTuQiYascImhiixXDEkJDdZvdoosM6WBsmbZB8IenmnvbXtOslM600C/NZyoZAZfqCMPBBAsTu48ZpRyNBBcb8ZtrueX5XGFDpwEKHQIbPWIuJSczpewt4HNtowuiNHB61EqU/OTNEOBHcGPGdBDxrg9vPb1Lf46x9nT+H+nFzSezPg38ZJjQj/AL2cpIAtAl71qs+TbEkOtrnJJ+Uu2zeeSbTXKgcDGmk4Ze0eyBODya2wWudYiWBvcifHLvLtIWeYmNEYdK3IBUoyHX7wAbS1VMMXz2cnXvjYPhnIkCEYizZspxnMExIB7JR6yl6C4g0yE+8i54K0T7tnA4bFjcxf+GfFo/DAm7yJL5Ea9Sy80Bdsto8Gng4LEc6JiNfrNkfUeHo5MAj6+hqPeahiAASNEClZxekFx5khrBpI7Ln0avBFa4kHyIA+cPVx52Jg4fHlzAR5keMQ3431Ul4ZiA3X/G8mNBq14ho4Gw9asjncvAuUQ4ZQRl8mZz90XPKnXh4fPsDr4WPzvbwOSFnmQt3Gjys3YmYDa5jjKHz+EwIs51MxSDzQB+s2LnghfpjIO4rd8cYIGzAA/wA+846FzPCI/Gc/OpfiUM7uqNRsigt4Eo6HWk0gw8MlL/glbfjPMSV45uPOefChPw7GHgmfyzw5GOzpyLEHShk44raYRIsONgZSBdxG3BYOEVDfkSBeavkgWxaDqMgrXHrVaOXBsTYYngOTnJkS9Dx9852wtT+Sso32Ze+DrXeHW0XetlHjEW966dYeDuCQvIhEp1hJ8kRAj/RjmZAMHk8LzmwWJ48SbLLGdIcgNT9mBkrgl6AqVJaJw0+K77cEYSgHL+J+sMgrY9a9mM40BKN7c7X7w3Cujcyw9v1h1rjzFqDhJAH+syy0DkurOuIW4WLlOUOddwsG0+PBFaDA95ZgyJH+5Y3z/Eokc+ckDx4tbcke8ZXfxviysGwCY1D/AOlZtaZfflmbywdsDhmTM6ypDItggvo7K1hRB8U+DNwowFlkpLoF+clctqV44WXBXxXzyMHPVnxrNHTYB1yNViNzPBMB1o5YocoUR/W4z2fduaoPD3Qsr0W5yj64R9rYwR1ZP6JGsj/Ph/LOQWQwAtJ/jCwWiZgCY5XKw1/AQPBsz85Kgy12h5m7wiFpzsZ59Z9vkhERMVNZIsV7XjQE/GCTwCWtnvwc3JMUNn+WsLOqJjnYPyMm2kdBEQDPKwl8hJ6ufLyamUib7HRF5/BQ1RrZB64yQ2Ed7SnnLaRCCURDBwD6MHlmW7MYZKdcUP6GelDi1wrwbhR2I0Ho84vlF6E15E4Gx0RImlfXV5xLFmILGveeADXzy1i5Du4JVe/1lv4PI3HJeD8z8HqyQ3k/KYYYkWdvEnRHVp76hYmYptAwjUcrIaXWp5H3g2IEMQocvp4+k4qa2KNfGTO9FizUKVkg/jjaqgM4dJzuNDrE7J0l3w9TgdlioBvknknJswJJFn/A4YKmUORwveC2Q4NCF+WcmZO9jjnR/WTogXO2CvwMqC0QgEEXZBGsZ2oLA8O/VZuoTHYVBWegF1u/cXk0gq7I6fGBlPrd7C7GAISWlYgO0dvObqVyqD3hQguweX5FX85yOlJF6XBOHTnbBB3a4W9YdF8JFHrh4WzKUjjsHBMwFZB4JibBeck604YHcN5pC7b1UZXcodjyareQPKni7JPBxCAw2fMbegGHbE/0F9seDh0u0budbOsJfAOhZt1zhFiC09Vb/OFmQwOnLYWT0DScbQQ3ljaMlcog3OsPbM1CgVwSX84qYEmd8QAZnDX5mBoiO8mEWjKjyx4GGN7hyrrw8XEUi4bnJ0mgOnDjhYtzFC0Y2NTXGHhyWPKHAqR+cR8HwhRMdgRk66T8glSpwXAQBLOv99DC7C0Yk0IP9ayr+wk8If5YZb0yqB4ZPGHQCqn19hYdmUZk+YHDzS4dCIpA/wCjJdS0dmpXrIgh71sLDwdpjgiSyNrAdm+PiuIPvE0GT3DCU8t4yU4b+s0L2GLNSDyf5y6jURdrRRyHaiAhBNYjZ4cwwqxepgVWjyMRPaogAGBAHABwsQyYmK4jbP1lECwOJRezoLI5+Guf44ymH0ySxBcjHT98hyArxTtu161A/wA8s8wPc2F3eOz2U6ta7yPck8ipABVHIl6if55eTEepJXUme8TMRD+eTPFcYL9/MWyTmqPUT6pHeSnmP82SR8YfJFypPz74WBAEz8Wh7BeH9iH4MdxjBvV7W0+QsYOjNQdNSoYxxEADyN+4zQEcHXXHOFUdHegQi+bz2ZiRzHAmMaWjUiSRHQx1pp1wa1ea9zok8gO8t8yLJTj8jqM6mvg34j6wUdcrXQNMDPFBiDv1/hj2DDAdufDyzf8AtBLWD+Ol0D2cbXuvo7Me8cEt8lVfKZnBe9wLrf6vzjPr9HexGeb0rIEmonFcG7+RCqMsx7mPCINjJcEaX781gcwQCJAt8vcYueWB+ON/nIUWIBjQnYx9gzv9XrEJZkjwV4xjl2R0pnanAkWrcrfI1nn7dPhTOctgCHMvdAvLci55lBcYeRSC4bvgLEnQDBrf6wbsRZRs8+PWCI9D4jjWb77+CQ6fnO0tItaoIJ4R0HPChaMgeMnrZFosTBmHhWtBsWqY1nitBRRRN5pQDxT5XnI8/iJjicehw4A5+MNFyiUCT6u8uPdVxdFZz4v2fFfWbNTfa4zsF9GtIy1BwmuZmlDLfA4Nki5mQo31ke5X7NnJlyQLEQb/ABnkg8SA0Apt5Njd0V+H95KLDAoSyqczmn6VEcwsm0XxFkqeUM3MoUtjfAOHmB5fUbwK+Aot2dDFujT5/t4lbEmWN29awhhVtA0eo3gPCRJks1LvrC5oHsiONQZyYp7/ANp/WV1CZoRfbwcatFAzpDEXZ4Ee93g2NBKLfjvACklxPL7Ky3NWXFbFYUbEXPX4vBQOjrQ5L1WArm5Bufgkk4GEOJtn4jnEN75evJZwBg7JfO6RvHGtD4EaIeR8FuuTpTgpaql51mzXqJunZG8Y6rg1zVdYYo8Jdv2AWC09SNxPYvJ18xEze0cGqRa0Ve7BU4L2Z68A9vnExYcgiJLjw/vGTUt71pmxeAaPgFKQRfM1jKgXykoAVzk/DEi4YS4WfKBCVnodLG9CbkGjv1kJY+y7Pu85Pks9fkcZe+ZGqrVHGTIgc/RM1/WLurex34ByOCdogEh6A1/GTwCeeJMTUYD4VxzYA5OIqfphVQ5VY53ortodDJ0iCQaUceQM2ezrzA4JO8PIESpgvn/XjZtosqY11gv8mLEmLv8AOdoHxLJ7NDE5NufHHSyS0iGQWKX5wvqV4J6X3lHnvfOvrvJV8lui49YPEEHTao+fo5YlgDg8fc/rEZdLlMj4B5wgRx4ok+vxlytWur2WBvQVzcLPPzCXA7YZ2nNaKE7c/WbUSb4Ac94yHAfvRftkxhmUR3R8AcnHY7TA7k8hLJ+9BIF22cByT5C6YIRyzsiunR9ZVlEhGYA0hbye1+or5zkGdPyUehJ+sJmD2EQvNPEdIA60OKs4kLXjt95OpB9s9dBYiwOpBpOPeTJH3fZjhrJQZZlAUYU8jJ1bLDhWtjKgSQY50BXRHJ4RYcOD/jn4CuQQd94keOOvPr7y6KIdqR54x190B5HNsmInwYE3vHxXpFn0s/DMiABz0QRgewLgeH+3kqxx6f3i4XCQimSt4w5q9E7Y5xtIAzD8Ap4WwHyHNkeQYnnJhiCElrknT4wu9fa2eI1liCi/F7KhkjJImJEATL5q7wuhB8Se/LHxjPs6OjLfS+cL6ELqOrIP7w7QcwDQksjZnJj7ZZQLusR6R1yHbwciJZZ5uthYjvyldjw85aTEDl09nnHQRcPmHfAnFEjhkKf4WSYkxKKRM0cMSpPE9G+RGEVMItgIJSBU/vOTPelH2QvvAZBMdlzFE04zkIhfRhe8D55fXQcs4GZBjnlU95wgGQYfGuMAkAx1oj9nD0GHRQA8Dk5K6LkTOzEAY/HO/wDDhKXlE1zoU3jTFAEAfy/c4fZnQqSXGxl222ixDWq+8hEbJ+SR06fjF8gV++qyWRAc1KZvRvBPgjvUdX6xkHjy9X1PWRxYdMP2gP3k/cBiuOksACiRrrz5xt7FmqZrvNwdMxP6k8Z65q+/YPeaDdPwrjrxhJjXnn8cYS/UupFwawjtAD6PZK/GDk11R7OzHOJx0FuORErBzRgBxHGxnCANx4j4yPINDrqdL1l+JUTU3gbM35iIj/mf0H21YLZx9mOoegbLzW2jP87J+8NAmF5K/Tz0DJ6mQveBAXZcVFkesvyqIl0yKWM/jiupd4ePaj/Ibz3tcTUDj3ecaI8Vs1WWm+G4seMm/wBELuT1iDVA0ge1yus6PAoE7P6Gdyh69kEcecfiHRZ3dc5E0kYL+gYA7zX55YlD4zQYFkm12+8F7kCxQ2OTOKVuyb8XAOHU8LcGP8e8vRvmuCjBeXEF+Uk/8cPyWUaqSiaWJ83zuLReIBUDyrqIvDOmVM0wdc5dKwRSdlbz40Wpt0NYQYPBdWwC6FZfkj6I8psZN/hE+AmxlNqp1ZPl4fLDfNDVLOQ+5lEsFkROFDWmZSHCkT95/XHV0HiPgvw42i83Ijmuucv4DIc/CeKFXCEeJTOEGX+YT2xoecMnqEWVP7eEgTx4Yb35witPst+Xawyoex/ZNRja9/mgxl2bCgINzf8AGT/NI34knxnfXliFUwfN4yxsdVuzZySEl6N8vWJ7AGjM76xcaNlR+v6yg32xRMp0LxEgwRPMpJzeCpHtr2d40anxzq1EYaMm1Cf1w+sMeLUsAdTggB/pLoDOEOI7tJKt5qHwX3vvrDI8iZnnxvFzOopRCJKzteqJP73la1wJ4BgTj+BtnuyRM5NOijHjVAYetImIbu8Dvkk76Ui4zXDJHto9tbwbpUOCOKLyeDXCvm/8skS7ciAC5yWIL5i1tcCss2e+bdipxTIhsLRGz5z0d7h89mfGAnoql4M9Y+dXUrj3gDkuefgrh5QgMgy+Vf3noNj7TKsYyPFywap0awRWhD2yDC4zxLZRG3LUFZxNMh6aQJvPEyXtjccz9YOgd+igeHmygQeTK+fNc41z2TRG15wovZGnEV1Wcm+NeJ2zhGhFPxAE8jNkiTA4ZHHEYUDAoig9g3z/ADk+7QGtPtZOoFgnSfPP4x8lwiAOTzyslC9lmVFrRyQQ7MdePO8PgGUHXlmTBwjgt2OjKCp4PEuFwISM6wAfbGiAU34xehvipeiTzlcCVLM2HxzibMG/fE43QVsmoqdzj4C7QC67r4wjiS+IHR4Ay+bDjvWxeSbIIs1DjljADrZQ1W8TZv4FaPLG9YXNojdMoVoB5v8A6nt7DOwUna2IIPE5MqUXc8oAfvBdWNH2uId944kE7BFdF6zimxclLnZGQk/2BuWZesc+6CDJq9rHLR+3wARzgRtnXz1oj9Z9llCB0QMMfZaoHgcgmesm6HaCIpq5ytUBLjTQ4WGhPuyOAucZ+PTSB/ecNXWjAHydYzYEHkjpE+MlskoxQBDNHrPR1yOSa/zww5uiaEyPObJRFpJkm43WHSgnffZ3gPrypRntycSQZ44LnyDN5qGPNDY8V95MH0CBUmVSIyAiAaYvdDjOAwPztGIMZwSfS2xMzxlyACD6vkUVgdHmwTHR4YxxSRnhdcpYhJFlz5S63k+rfHzDEveBA8AvupH0cZ2vnizxOfxv6jreWAbMoBc2HsZARPo2RxItrGfiZQjg8PWao2hyu3eBy/rVnde8BKB0pXnjrA+bC2zwZ3xj5AfGzSKOQV+ARsNH4zxR4McR85A2ECYGv2wLwWVVBzs32s3INlVR8zrH1C0RX9kZ6F37Fer8YDpjs0ySP185oh3E2PPMnOBsGTWrczOU4jiad8bz6AAsvTEaION/qv5x3JXcz4Txmy0I4Zp+J5w2qcAfuiMrcRB/gjqMc2fXkkUxX1lgMq6O3HM4a9nilRNMOsApcwjEA9QzgmdI8KhuD+Mkrbdx19DD8DQqahFy8EnxEUuJbWGv8D8oJkYUb1BkLRWWh3vYkdWMX8A7XFc+cPhtjv0unj1o1Zr3S1jlcT2PM8bzk75kx0SMQ412SL86wGNtgGyIXGXHzBBXnZZy3aBUV0NSDhY9kRJ8gdRgLHfI99BLJBZZdfv194+JR2YPjv8AGXrvUURNzne18sRRHIUHmvFMOsIdQpr2lDnLuSBYv6zsrb90SBBwRE8032VeGyOoHL7J58Y5jfYLVi7nJMfiPe8apLRP7/eGyJlmeCKHKwcfK2xtc454Zf050DgWtih7RDq8IIZibKEDZ5Oa7irszKs5tWix0Zsh2c/glfDuP+5tlee+SjQwMdmNKNar8YeCYYga4ClvBo0AFzwYMyxI9aZn05GSNc+rNkZ6koRRSV14y/ROgIszo/vDQAhkKeIv1kFfgoytiDCWNEyIDPnTK/vPAqdx0lt58AtcxwSt4xPyAkOkay+YI5k65gjHHApcIE74w/BFr0PAJOfIeq/14ZAPer+ZPxi8E74fHiMNfCYELooDNj2tGfSKOeUtv6WoOKmvjk8QnnUJx1tUM5fkmm20U8Ibf/PCon3j378xzpHHBOmxJmevxh2GX80rAADyrswSvvhB5RB1A1PxkVEiY4gAabGWAw60rTYfBwwXF/hApw86cxM87vnB8BxrwIgvA9BSkavSAjF5cS2X04eJt7VxupoPN/Y4qd7yTqnDQNfOROwLEx3RbwP15JHjcZ09mEX8jHJ8j2V+sNpGezQswT+sR8SwEwhQiBmv8PcYOAjTWix9YtGfKoNTe8lAPZ44MGZz0t1qUx1gm5+KtFEk+MfZ/hgjsOWVMS+iHj4DFtqtly2Mkyj4BVlLmw8B8kBojrxbWGD52YA9ioKeN0IiTYIsKzGLixzrhGsB6+J3QUayhMfcR6BnJcmeBxZHRPONJggX3xI4WS2p4JGuDpZfldtxa+mCy12nx/AyanwoJbu4JnFVx8WHeGfzIJevIIwL0ADAh8g3hK4qTzwY7OWQCAxBs/5h3j5DJUJbTPk4YsdvXT/JwaPaIFL8RniSNrY7FrCY5geJgFDln4xtgvkQiJgd5p2TU0V9zlwtlhq/0GEhjhA+tx4/GOSRJJ4QpWazgfKEa46jJqbkmVx5XWAh9iylAE+S8nhBM7EaGpzUvRYIlDvTwF3LqLFT2N4z6XslaIjPb5IsOfSZowy0q5v0bxp+XwDT76wlBUpUyGd8nERchsn+tFTnK2JjbW+ZwNWp2tD8h8YXfa6bIHbz1skOSLenkiFQjhnIGKoIbM/PWQjIhX+fT4wzIcmxrVc/rAfPvQTXdesARPDiep85dkdiwpcjwxxhkwAllkAb9g5Akx0OBCY9YoJF9c7XnOi9IPokB9Y+lIii0zw/G8AVdRcHvzk0IsyJAr7ONPz4oOc4sfknQJ2Dk34q6p0mckeP9bFnqsJHMwyuNnwclGPw3vrJd777BCel7wqie9uJ4wdsTv1HYOTG+ufmQgJyV+etqOQVkhacxZP4YXvEUEvASMwtCMI9QGYg85wACtF+J2KOOyCEElfQPnJ7oiExPN/8wHWoptWD73k2CV+2QFpZoSSBL2Q4XjZwkrwYOiEd8gYKJ4cyUcobzSTAUmy0Yqhj8ju/QcnOZCba3SW08fP9GON53ReSwGa0CMk1MmTSiBgOkQjotbjvrOYmY5ofeMkMQ/Ng2T4GPq++NlnKLJT8mWxpYXZR4P1HrAx2TR+U8FYNmYnzCfVZMHaa+IHGTM11xB+DikIitCdzGsZIj5rjZ+vOITNAOJ8kiSxiHWlP884CtT6FtBx9ZUruz9manPfRjR+QyfzkegwZ24tTgIhc0qjykHgCqgSvvaqcNauBxxU6ynxp+qChYumI9p+AbwCwZVUTW9eMJ8i9lcemf9OCqTNLUCYzmput8Mh+8FeKB38gK8CT/b276z0KtN1QcgDL35sOEk9YNn/hPYfeRYcWvil1j7WpDMSSXOTBPO+whymcklAqOBWkRc1WQIL4AAIrsnCCizaSMLp9Ze6iIkrtxhsjrutsP7jBsdH+0U94uuYiutB4dH7YO2/r1nyOlADmJDymKBQGpPyQcvr8wQJLE5ezBrvYPWRZgG2L4eQRyjzXx1kVMHoeOF6wntFLQPJRZ/7kP4M6A49+s4PNPcQYMAvCAwGvyTzSeJdk2Tz/AEsh8+AFt6OOXz14b7yOWyQQgvjeQOevT7yvSPApGXriM4LPCew40G82bvjZNxOB9RVng1FPjKdiwj9QI/OKPcAQjLlnLoXe46Jic7D6Ao/kb+sJL3aP5YsIDK2AP37WFgNNMjtnoaxOEhB1K/gYYL3QejYy/eq6PMRhYXDVwPUwR5WAKQY6nuOM4E2gf+la94iSnLmq9SIAxCZ9Ea8Rmz/v4PWE+LI5vRhfvBe/9q+hOI+FXAK2H+M1sUxC5g+BrIRo+0FrxWN/0Q/AXE4CZKFyr9SQxeAV1ZQ3yywcMhIOwqEySeDiaNDST2Fus/1FdyQkcc9+EVAnbnDW974NknnB1DJMxwe8sVrk7pE9XmlMJjfX4yuv9KbQxVLjkz395JrQ3yblQVlyDGmbT9mcH50+XMDayfNphIDneFOUB/bhTeQFUbMJ8oBYxI0Ljipl5JfO5qkBBE5YIl+JuE6EYlT4gQIPRc4Q+X0hRVysc30FRdTKPWH38RcXEDN60R6s+DhMPr1K2KygBYL17EsZJOxZ6+ljiR5mQaEWHnr5Pi8AE8TRHFrkMnOo4WmCGhvGeGdgFJpDs4j0X05j4D9xkseOLM/jOGLYMvxPbxjaWhzsMaX7wJGSZbW+Oy8JtCXFcXNDJMeZVV8gnETK8EJpwea11gumF/M8B4Kjpe4q1vPgk0wjR+oyrk7WhE/zgjSZS4j984N+AXw+OFOOoNaM8Cs9GGOW+z3o4F3BAFFEWv3gIWhsoeEhwRi0PaWj30cHHHI2Dp8jCemHvnlmAFkNjzDLFfr1gcTNlunxQyXfJDEDrjAixeyv8gayRrlDtfycB19gu53IxMCPKkyZPxknBgsA8+eBnJkQDI8xgDcw0VD5eMUAZoeluBMYL5JI6gKVV4CbIi2/dWQDhBAAAaFmfIA5wvcwqf8AZkC7eGwCb104v7xwAnzsGUJ5JxE6A+PQ+NayYMnrYhb7xq2pvfJ6A4z37Gz2BbWErwUQbccGawAs6nyw4yZoLZmtejvFtQeLuDzIOUdXJ30OWsnhrX8E8HOr4CAXJkJHDfQm9bgcYzXMyUboKXg5NseuPzngtA+U9Y5pFlGxLD6Zw20TohcTewtbwcwVIgAGdnRxjpVLbiPxhgpEg/F8VjfkNP4M+c5f1zB/JjIYcH1yb08UeyeLkSNVnshXuSfvLfdF6mUbIyXLR/3kO80hqDoSDo2ZnCwG+921vWfkvkw1ehliht2RciK5xuwgvOm3tj8YeYC3wNIe8kbFRBH1xkskPxzJ/wC4ixL0YVyfMDBaCT9x1pEYi1CkzMHqTBzTENAa7fAf+vESiFcxsyw5w6olUiOejhkgXT/bAqMJ4EKZStjrAXAPS/A9DC5bRbmQHocAXiPEHWqTK7OsPEXJp+epwudQCSNxMmsDIF6n+15R6ggmTYCwx23o7Sx31tOdQcEaNyo42FuH7wXxogc2CfOMnqfJGgtHvCDs2hArn08KSl1Db3J1klzOxxwMnTZJJe19Cckywo05dc3k/wCvjz1n80I8k1s5fczUiUiqyeWCeSQLiNLNoSp0qSjIppDsa7aGR7IDsv8AAIwwJrfJiTp4DE6PKC6QZGEEBABmBT5IISwQoFyOHW7fWWAZ+xDlXvKQnWu+IGJgmahXEx2cdEf5smJ4wo7Ur4f6weY/L6OK+SDda9TeChC7iSfGsTflfARdD4yY7eIrbGIE6g9u37nA+y2y68A5zI/he+8c15cBORQytwIUAe42cgezUiTYNfzirdiYf8oZXCaIfPUwfWX03sSPtmMhl9yITCpSTkddhQCSnrLYohtHRvUvKTPH/C6YwscHhv6kzjsonjzUa35wKvV7tCGhnQhjc+k9e82SDB0OeYrNUpUdPwTnsPQbGuD+s9cxyK44GCDCk/SkVo+82ahXwKBlgvECX2GX8GCIW7zUbF9dU3m18jfXJJ95f1s7AOuQcA2KR++ev3hD47mo4gWMKknSmR/3OfNji0Ru8Py1QY8mTWHQZ8xX3+Ms0xyRrqy+c9E+IC0VJC1m5erM8glDR9ZBDXn6u1ncATwiNB2IxDxMLRSI8HOjBMQD5Y9nF1EiZ9rbJxTAmLpcxDHnDox9HaXl5pDRDZOvx6z4/wAv5+8Opuk+LbWQYnfmXPbRz1wdE/ZvD5MJ+PoYdAx+CTzF4ilwuZ5k9ZF0vNmF6wcLkUn4L3j+Sl7CgscdYQLR17q3+7xOL5cJfeLR5qUgvW8Mx5pSPLwQASf6Mtx4CwuH70q7l+cFc3VH3/OFJ9Ku+D3zgaCQok8/GDwn5jz7OJeYoaaiYbwmdm6RXrnEPw/xKIwwPYbmJFKMq4mSJn24xd/0f+HI59ju6CkjGD0mRBog7HOUAyOolxPJz/I0evvFao7iSEuKrD5lWvFiUxiqfAsJVuFkgv5uK+cAFQX9lFpNYDoT2zoq5wHXaMFe2GTz/ji65+vjL6M9hDXywEkeK4eh6z8/LG1+GN6C3wQNgdLGf0qL6d1GEoOoaX+UnOSH41b/AHlCAfZXqN8bw+DJu1wVw8UEaBIZoLfsn1loUd7h2dHx3na6H1LA4AxsHsgKNd1hgMEnqfsEsBYvh6aV47ZgvbXray+RcdgSjpHeeCAJSueAcZnbzxNcD7xNFggljqdeRrJsRPk8Al8fjOZm3cbA6BznYk+Tx6GL25VFm/AWbI2AZqSYHDwD2zJA7+U/WFpCbY68misbUXG0bf8Anl8kF/08fxgbhlyToz9LC4N1zfRPOdNvgCCrPnHAk9Iyq9knGHzIO0GvZ/OVA3KQBXZL3ljw0Oyqel1jPo30rD852wCWID9dEHDTpGSOvNgPGTVwwSYPJ0vznBUQXx+/6xGP1spAniMkH40bkEVBBybDPaubHvWMR5uwOyzBOA8VRMnWnwcdIRFXyIFOcEFX5sfy8EeCQSy5KhDbyIAo9BFGi5gYTtkp6iJL9Rm0YFGH5A4HGE2Zhhp/5H8ZSJkaIgzNbJyT9Ag+Q+pGJcDT8qe8vW+90QR1jYrcgR/DOcMcU4P6jIoqAm+dLXnKSdXHrsoZPw6dnWbgRogHYscY53Mralxqfc42kGGrqkezlOGAIIKqCCcHRc9ouSOqzdnTUTyeiM2WeU6kQ/COIr3IgaHorLMbEShCFD84ygpuUkurySI8gI6usiWyYotonRjVYqAkHZT37c5fg8sFP5k1nYHXBHXzk9PYJg3AGmsoWUGvxPjHNGzarfo8FIbs6TUaHjCASiZlR7HwPnByaVq0mVohYamF+eBxd6wqqJR8nh4UAdM/Zyrh+SFWrJx78gWez3Q+soD+ANgmNRlQK5I6G+DnB2xUUaFDFAFET1Bh9HIIqhVHfHOBWP2apLo1xmtgCXLJJvkf3myfZNISErOSqS7JWD/t4NTqRUSj0cFMm4ct6Y2RlFp90h46GLYQlgomIb3iPKuDX8/eDpHqCB3o5T+4ofusM1CMPrQNYnyFEz71P1n6BDPW+xlszrZHo8HJ1Zna8d3ka7cfoCwcZZ8R5Z3g9zKXCGlL3jtwtvWl5ymZ8wGeZMHJI5XZOynDIyv3ZJ/kT3nleF6IGB1xAPwPInLZaNeDafRwQ5HliiIXGAniWr9hn3iuCZPQffn4wwo2B/q1giOZToyUEIxAf2oJmzZxkwRIDsiahB/GFTAqodcVAziDNEEgDQ3BnIDfFTvQEA5sM/HZ4dectfMmDooTCxyh4sL1ErH/AHCXJ3rIkL8moEAv3l9lz1uDCwUoowjHjZzXA1CVJ2kcS2T/ALQrLHOnXmRrHKR5fu15wncwfqmLQ7x3EgtH9DaPgZIYDLuu1dkYQQHsppOhjJjHCQEdDWOy58a5nCZ8wR+6Sx/Uy7HF1gWiOoUC7Gsc9sQBTF1vGHut+B+Rlo3+URnD5/BQQrHxagKI15xtkir6seDjPlHTH0nj+g6YfPGsjcRwEjo9PGgI5oeo7x7IYAMn8j3iIGiRgt66sYggCTL9UtjAt7hLcLjX5xdnfmDMmifjFPR0N/Jz05K3vYgYb8CL3yYrFy4l73AZIGfOtKbPOHepUkBgaGkMaK6C/wCPjI7oqI6CRawJUDoqlyF/oy/QkSI4Z/3OfKO9pVySxkngosv9LnFYmN7L+ZCvIcIzySu+Hn1LLFlzz6z8iza8CID8jOiyZ7IBI850Br8qg/8AmALvi4T6eeHVzIAgsTfGCSVwHFn+sPdbMxCo/wAvGEuNH/pIE5piLmINEmbylsa2Q9xrJnUfoI/XeKrufJEwUTbw0So0qh2jIwUiSdb++RPjI7PbiA4WDob2jPJ4PvC1eiD1tkyoxprQfkRNh5xEX0NAdIHHbTB4oH2mc6sGaJueCshqN/JBYicr4Jm3ZXbxbmUYQ9QbOzi/ah/n3jPpknpKM7uItySo8YQhzo9tPw8quCAUyFrxhBDUWfoL8YCw+W/NAVt7zjSC5NEoaX7yY50S677LwsiQ58RzNHEYa3PqPJjCHadS43fQw2ylB2eGfR+scVHBuOBsZffa8mhMEYkyAwdcjoe8FfpKtR4jBHjTsCy8gQY5QULfnPIg9ECa9/zjk9Eso1sM7zTns0RD4nODcAsquK1eNgEepQ/zjAeipRBta6yQYDMmTOh6eRydKwJagSJzkCREAmOPWQzMEl+UyD1GeF8Xz4n4xuvtz45/WQaM3tcz84A/9PgC8e5nqk3blfjAtgTRktRukMYnbcDbZA5hzhsCtMWSewIP5zYEz3w5hTlvkQYj0U4OXJQXFht6bwoH2wplKWicMCRoAn1VzLwYzwNxCShQAezkYFoREgkxlESSZGENTSeY2nhAEAO08LURh4cQETPx8srPsrmO0B5CTwRusMqHjBIhwS8N9DndAoMd8jwvBIfwTgATAYlnjn42A2aNsNMQymGC8xgIFQ5PplIBIsXyEMCVH3vWm4YOFkb+bXwyUQkJbv2WB4gBCC6EiTIKokYKTE4KDoIowxGFL1Socrr6xSlXCTHzeT1w5a/M5sgkJ/lUSOAIcmYomXPoYHwJm47Mgnzhi4Hj/ACfeLhuDMIH+esPy4k+SgROGgZExTnQbk4EAOJkPtvysOkz0/M/jAyZgrgQ3+MQEcao8wfBz0A3fOvrJ4Lc0UUEa4GTv60q9knOZL2RA/lfxnAnW2LJM+JzVxCvnpGsH05Cetnnl4wkjuNM6i81MR3sS7ZxzXZYpIFaJBxut/AEo+S6yh6PSbMoMVihVBqR/vzg4LPkV84ua0QYXDYWfghySEYSXYWADYn8gEFxF44JbQ2u+tgxjghYd3QdbjI5KMMMmEy+0s4QIuyQvPnHubg7UGOQThJE+EFM37jPynxBKEbKyBoke2N+wOcs6gy1uNScqZHY2GmYuXjPXFv87YCVQmJERpvrF9pyAuK4zZXvd6V541Ukzwlf6wE3rckpcd5zpToE7NetY0+YCHypC3gNnubcW20s2BqVyFUj/LI1ILPuiyVrCz9pPVsj8ZGqMikEF6LyDZiHN2eRExvAC2iPK6vgBZXLMQr9EbPzm/gcrn34eDqJ634uceklYA31MZwx1yA1Z4/OeCpmTA4QJxruLn7QIzZ55vUNLKNb9r7JrGTI4jzuJS+MWy/x+D1gruyIJ6aV5UaH+swlhUdjF+AKeKBsD10XX+eUeyOA+ET2cUaIVIB0tbxxMHydGefnJCD6JN7QvJ+YJRDHYSBw/FLomUeMougPCJ+ZPnE4BMItg35o5zIMOZA+6WL2tmStVTykZOiYMdo/eIyLlIosfvGIDfKYRQCj7wKBoCNgMsgClOs65DfOq3GWvyRXtAUMQVdEwlvxmlE+LYEDdYvHBI+gfeD8687JSrEutocuB4y+Ff8AJjAgIjz17E4QOhsP4HGstAER8/5YhMd1Fiq3kTBAgP3JmXjHXp6j6yCJD/2saK0EaMzEbRwARCnLrUghJaz9b3rWTvXkscSEAecYT74naNvxgdKO9DzvNEanYlMGwgMan/Q/G+sFAkyJ1DG/Dz96G3IkUcVC4EHy0T64wmBpgaB+Ff4yWSlA7/7eSNvyeqk2cA4++ZMUhns2WKJVIPGkkxqm9C13m/Q/J/jBSEKwmVMOEcktRCco+MK8UiedmVP5wyDrkEWIlEHjvNRw+vAMLCzIgHfxNjjKE8trwXGU5DHmOI8HBVfATtGERnh6r6TgCMUg35ExxGKw0uyUFgP6ltQ7MFrWKDx/CbUskYCVPASAZm4eD+PZjQ7P3mhSIaHL1L3gb+JUJVCC7x6Qm5Fv1Iw/uwHyxAPOKvOwYEFTNi8Fi/iH7SKwGB4aCETuLOE3z1wnwQcdK98/hPPI/wCXd/5ZJ1zHFATdThKI6DJkopcz/GTsBeSABmfjCXYix3tgeMfqgAQjsB9ZyyvfHJTReXsh0BB5L7wHRmbDIfResaM0BPZPDsBZ+y2NE6UzyM9gbgpuTPDGOIBfY+a8ZNeaN8jnRnAP5e/BF40Jj/jYO3jAjWxf9PJ0Gz8IBW5jOS4M9pf1nOwflOP+Y9TQuFtIcAYiAr2zQ0p6wekFev6POS5FqQRak9RhF7BR7dfBBzXAQ89/GAqFAnzNS0f3h5MetRBFvPJJIjp8AqDnJH+AaIIyyGVwp3Fv53k8VJaletc4JIbgWKnjbWQWWQP4RBApRgieyuJ24Dz3QlLwh5IwUCX/AC6yIg++RAQowxsGilyhNvlbwHlElUNFe8e5VgnXmyjgIJpHuOb6eGPkybk09nPx8EIQPJxFnYqUCuR1h8cF8ATPBwlQQ11FRHGcaB7VO+MijtU/CP6zzJ6Na7rBInrdvWA9ABMcbg/OBUeTQiOdxkdKB66jSjEefGz/AD94UVytaiKUZ9cGF1Pv4xHTD4UA8nC0dwaAYU+WGnqR1xsOspmWWJubxhOwz+iBxW/WMSQ3IHBLNHZOT0YUg3NjQwkxG3Lgu2LAyOPLS2CKFD8YZY8I6J34rGCCdSA3wz2ll/NhghgTO8VRzCQNx4CywFMsxTXSZBzyuyKWg9Xhc6FMk9d3mq76OyzUjAYTl9A+gtYJDcqwX6RyI2XToE/ZCwnphSQxew9LAZn1wOnz+sdORJfh1E49skdTf2F+8B/7rpwZeMIjhCaGh3eDTbkP7fc1lcwo8tDo5A2yEOyXXjCk+C6Y3Mc5/KcOWHHNZKolqCXt/COOZUWtfNgxkQdAXVQIXGD1NByHbnOEeXszqJBOQK73vzbyG9mQ4C1qIwl6hUyCx/eEomLiRJ63BFY0gI/KKmakrF2RrweVokn4xrUgtanknazkbdQHuCOs6mwAbleEEMff6/w9YyaW3z1UhZBHkIkfG7wS4n9rmRGcRMXJ7nxmrEgzV7+8lACRzEpLlDGYT3r+SFWAst++Q9xXpYSwaRKCnhGO8FeZuSRaAIGENfFTFXGbPlNxRe9ec1K7Rk9Emg8FnqEChTQ7z4+FNjkQBjSS9mtagGc/DiZNDVgDHtSrZSHblnCYPki+IU1GNAEA18DhwT1hReplhyn2IGGfYHAZfYNZD3NudVJYz8a2lVf7vKO/kkewMjto8N/GTBL73NNdgYG3Km3vQE16yuaaEz6AylID78xr4zouOrkO7ZwdG6c+VR+s+ZkVEV6xEBm2zJSNqRQyXUPsDRfyMkID0xxb8Dxjrf7N8AaxfAg0GANl6xhjt87U116xiOQXGhXfxGAAEQD3HHeKKZYR5DdjLIHXzyBrKY4kTQ9TnLPKJ/v8Zt7al/Gxj8keHD+zhLQiRB6e8ji/V15R+sgS6YJX35wkI/FlxgVNdky0ghZCtkQSAbN1/ng6bV+dmo+cgyxbv9wYAxu+h4m9GRkRP78GneODEjtGfGskEOKHGwWwbwlFYzCRijrDTiJiKLP3eCACm+LD7pD4yVBmnLT/ACMK3GgeXOv+YtL8pVuKGBgciZrTD7LwGOvLIPHeEqBMnyPwcpXanx5AGcDT0QGD05AyBP8ACRpwIzhlsQOVPisPhQprUbYnOeY0X9TOEPqiZKhXAyApn5L3JDnOHLZiQuJoThBMb61N9H5y71ti91k6F8xu4/nNIUzcknwkA8Knq9xxE/OFDfCk1qvGFWQvZPAvnF7RNjQqSMsJpjl70oODagQqnueFir61BBq+PjOZaYMO+q9YZ2OlNWYP+GRassbJmRwH5xLVTENvwl5wSo7ZrzQk433AKUflH5xeTwYNoxqFkt/4mE5SGcRfo+uEMGltVaBU+Mlo04fHRsvFVRVg0dtrBboMiIfBff5z2L5N+3+4xng8s+5XWaBBfutm3hrwjPLhn85oENlc9/DfWE7J0NST9jGR2lILfg7ZPrNUVI4RvtjNnxTcf0rAY8C3+JWK3o+I1PTwlKYt30/P84KSmh4IqLGNbqFIAWzODbaZAFuCIPeVzya2hMYKsmWCCyu/KxHQXxfxQvBScakxDBNGcHFPtDyIknBElaQJSAgE2jOM3QfrzOuO8ZLvVEArZHOdSdvg9Km8Z4Xt+gKbGFbZEels9HCUjLNRXH1gUDlvjY+18YxJNhXFilqs2NsllUjHhHAVG7NC+ewMrgDQrpvkjNwCdAQkKPjvPVzJhSzPAOOAIsdNEUNg4wp3zdmSKGAwdqoh0FAnGn4EfgA8PLc0TBrkMTHeKJlijBevBWb62XXrPEEzFf4p4iRVsol7Zs0t8jn3kcb2UPJ1/OONe+XR7Ayb3xyH1X7wTwmdLd9D7xiQBJiRHBIwPKx8sWNNYZMMe8lrUMutyA3ipgskHoOwsK3wgxAKYBXk5OjCllheAokfnEQe+NHwtZHRPB1ufGLX3rU9jDP4MSorCPMbiM2NngiVwOT+svL+KYisrts8hQMMDfo7gQ7yuXPAcB/f3hsNoSX3GtjJgIsb1/JGMFacSC/WgQTjChvxNhjCfPhrrWycdXLDOvVXnQg2BIQ9Q3j2a20DSpWfOEN6vsIJl6xi3co9wfIf1ifosEbEq94/pJ8nlVeHoFvw0xJ9YDHmtS5BMTjhqBqQdLreP+Ar2ef4w8Ptx2fLGBedhbA1O+s4VlFdSdLnCyCQfIkKIA2594xROpBKNAeBGFDmkF+AbeFgXx86X+efmgkpeNlkSjcwS5UrOHJUkcGhrz6wktX9fY/1YPwQwQrNnvPk+ads8AMVnbBsAlCdarGbRSujxXLwQ7uy6F/H3kNhbl7PPGafBY0FokDWCBIo6sHbQArH47sRsgbfOeOk/DGnrHNLS3y1zGeFnT+MkW0KmYG1bwbPz7qQgbw2X4nueBIxhc/oGHKgYiRCBNk/cKXm40Vwte7zccqy98lwDjYBS5d+JV5TQD99ezmkKNCSDxqM0xVk0EAdStZfOj+0zt5Uu+omq4yB0lHzyNjxm2RcH3HcZXKMK49ojO2v98PAeTNxD4Ap5EF+GY+5ZGCCuiGrsxGs6O3czddesVTTsGec7HIJLhb5EAZ68Fc8JR7eb40Pi1UU88TxLmf9OH8Ol3JJexh1PQCuNyAc9o6eXHyciWkSEQrpcvCSIL82BzxrKlI8WQOoJz8D9Ea6WACR2JXb7j0MKDSnle7kmMmBJKH54jfbz3FELm9sZyfl80iFxlxv59dfGbfBRYEjucEkeUL0NFgFeki4nlcYL7UXJEGTvD/Hh3ALawCRBkoLZ0ZvDSFDQtQ4g1GZoMxg8fgg3IJcpUE2DrBemg0NoXwAwA1wgKKExCfGWLuiGetIDAwQICxBXylnRirOkLTd8YEF+BNKIwiJMSwI9dk2JoiIElG2EIkGiIEAEiCGLhf1gHklUJFDSB+nhAB2SJJn/IjCkYLowx8qfObpwoIvu1nqi0V5jYwxvpEADiT3xh1cOzKgff8AjnfybgGfaHnJhEI9iAOPIyzsEMydV4GNKt2aPD33k/O6H57XOcHh/wCA5P1kwYLJXxTqxlFu/wCSJk4ZDmRHjfQWaXwOPN4ifab68E52oARf2x+sBjk7X8gYyL2UBH6efmE2QJsucfcmo7qSutZuuCnO+0P3i4qeI0EUxgrUx9gEuc52QrUWbjnOm4bsb+wTkH3si1dSM2dvcKE+VOE9jmPh0Vx/oHd9uGT3Z+chuiyJ3VbOAfnTB7jUDGZQBIHzz3rNWxctzchisHa+CYQjbzyGOeX+WHaMzaPwRwEmhvZJ7Eo/1l0vYfC6IOAMlpun1BInICNgIQTBrXOdCwGDBY464zieQRe6PEHFEF64PQB6OM93yP8AD1eChKnVG4DJs5y2StbD0Os79FmhsxDIx/4pkQWNoD3gW4Vg+4ZbxUMcvYDnl1kEO+xHdyQNYCRZA5ipQBRqYw/ElLfjifjPgANcRz7zcbkJN9OKOWbr4NJTj9uh33wsEgntgcL6GX2pqrHNsYI55pPccnEiEGeUhw/OF0LVvc6PjArCHjs/kpZsqQIky3QNxhPBHhbcvpDHYG9guTc8jEOgULMCkPgZHTMFkWOoaOPa5NPwfgfeBMy+uJ6j958jkbIHBaAwkh+UmEHswxmmDFoD/SsgRTb7mLLx8sAu7qYnznJg+gwu8JCK/vyNqPSy2XIMlUvJrNkTuAPYL5/eQDE6Q/d+znmG0z4fQeQ3MDpI0MP3Y0akbnPhLipqYeCw+y3qC3w8m1WARcBW4yIfH760Mp1570S6wRJDt7JU1odijWcDwBEGhUEKDA3B0FbJl0xQ+YM60WYPxmyE/KO2vcYWCDECdzWzDwpbZuhUSUtHAWAMEGY7Zm0XjEFAZRp7JUsfOD2BIsonkgL5wkWQW1DEGnsycCGyzKBgRFSUCzl2hVknSBExwAeNBJmwnykcTeCCCeBfumSc5YTybBEgwX6tQnWEA0eu3y3kBy/WqWcSFEWjQRl1g6NHzoe4y432QWLarAIPspgyWL8jCjy5E7JNFcnCZ78PQK9fk43UjyQW3fjKJLi+hW3awgU1vwpi6eDatoRMgn3hddNi9oSZwaA4Q2pkh3HxkUUGvbOrhnIP+kiAT3WeXBHiN9DnL5Rjo0lO3jBcsd0EreKDthwTPJDjxnK52VOvL1j6ZFmAj04vCk6chDZ8GTiq3bQ+Jo/jCbSNN8Gg+3GEgGTRgJx6pYSPg8kdtnbByplu7BSLfistigaaL8DoDBy+WKMIEkxWcXKcq3vfrGxsTJJ2DToawPcaUFxE+ccb9EakazxKhbQteYxhuRdsEmDzSGGEOSKFbPzkLmzsYRvnGD2NGG9L9YIk0gokC0fGe3y9vOXqj5RBgR0cD8yeCdXJQB4xHgrpP8LPy/itmZXvLG91rxzl8bXdtqDPnPuJj8gOycVdmfgxIBOVYEbncWpJwvyudj4WKGKRQsb/ADmr11yCYgBLD1L1zW9RnKDF6XgLWeXAIcCftm7JRDr0qvGlvfDa/Zzk8lBlRRmxhfM1RXMtr+c3vip9nz6xgsbolIz8msrwD18miP8AXkDT9MOfJeRwCeVD62UBnyUfvwJOPa3pyd8P7zgvUvhzXDyX5aqY2tZfPgEPxFPGTB7Va15HnOT9+rsRHvN8vQqpYanPcyOJT46w73Ucrdmzl+NFvUsvvJtAGX/2P3jkA9h6Ndk579qbbCH3WVuYkmogF+85aCBW45TywHF/BoSngaQBtVstcDBBfDfw4kwcqfPh2GYrvCvk/GsaQCwPtPIRLEARsJJyJkEBQEIy5CQGHjQtnT4uRjAMkBBkEgeCAyB3nia4JYShKe8kgCIM8ai+MBAI3yXyzJ495Q9z0Ae0VGEwZYsGDJKABAgLJCIhSJBQnQaeaIZTYEBlw9gR1h0wZpJt9mxBBMAj1hJqiKmyDBQEIKl5sfokjc7yNOzhVbs5+GI9Jah4QqCngM7iKyh+X2eayv0iI3yNZp+Py3Lbx72IJhDd2U8nqSe61uXOfbaEaTFHeAiTq5+RskIjJgSnYc+TF85VMImTzXuDnuOVBuOAP1lftV8Dws/q7qEGx7wEEGPsrRbxTXtBmuMIfIijFfr+cPcsKDBfENeM0kqQc27O87Lj+UChuMaoro9upiRlR/XgddZMfufNQcRDLPv+A5yTHQ52+Z/rIvxP8QeccnTXw/kP85pmQJ2fcvD0TAe5ZGgmAOMgRL8FTx2AMeiwup8ySwa3mxD4l9w9xmiKCZUhEyjULDRuf9qwzu4Ij4a3gTHz2NClCWbdwuoIoWc39j2jpGcalkD+u88ko2SBZ5mx9ZuG0Hc7Oe1L3/P3h3BXQ5/eAGmE+ZQS/vCft3pwvrBQJgLYH1yY949z4LHmSbCwIwGQZoL2x1lu+A2mt9xkBAsFbkzwvPnHvTjZNtcDGpKKMqDD9U8Psyz2tFbrCvfKsWdkEDDS2WGR5Qk/GMf9lBSUr/eWhwitlSlWEOSP9IkWBnM7M+h9LJ3Bd/avGuSIOtO+JxaaKEeOTvAfH6Yc9hnGw1GyS/QE/OQjFH9h1w8PLgFHSGxychOoDhhGEB5znzPjkRe84Y66fAs/8xi6EgfhgaxWOTqHpMefGNm34gE2ByKzid8Qw6luMe1BBWiV2OBkN2DJJ7gLz+MkA6A9xzEjnBpaUcQmHxnVyB4FQ+8+zzuRa6j1mzIJ2EnxtYL5SHAE0usAAIk7gyveklggOPdyMBI3Uk3sojNroAmNkDzeO34aYXn+IwxyRKiwPYJIjD/ZRCIBNKOHkL6GZxORkWGxRZIkNoRLXREweyGItwXAmwyQjKCVeezVyDkPGkHeWYCx4zROWFMtgR959On6tc4QcdUtFQMIGrgYAxTUlXAEcQSm8C+JoGZAY3DsxizRhaPoABN8hnAAWQQCZABAAaA1xgsFe3W88LnLmqCMk8hTOvXzjnudQtF3ObEAfolcI3+cQJ8b7bo4+oJXuSuC2sk0vIihV7frAojr7/C3hPxsweCEN3lbm1Z7noDGGLsriRt7P7z8kflMLSAw0O234s+MH3DB+uHzlEbkzw6+cL2Ov+Sy8NXaoNfogLBJZ1P7btLHzCFCx7gGM7DPX+JB4elwHGzNbyCrcOmCVOiTjGtpWJoC1IGReixVfL/jG05ZE11UsZr6lI/G8YPREH3CY7wNSfZkIbvvKpQ9V5nrBIJmTtMrLkaOrjXnGEikeilP+WMeO1KX0Hj2GUhBuH6GRxG6gKCB4j1jataC+14w6O455jBs64XGg1U5ps/iiSjrSwGzJmD50HTzSPjd3zOMdkmDF8gioxcDpq+M6YnXgEPyciKtPsib3hOodDjwViUjk+PNmsTD8rrm3EYgeT1phCJEZ7I/p+2VgVJHhne/9vD86iAioPGQDRgQZr954jWmJ1ok4wa41BvUVGRGx+CGztXnkDn+S/8AmFfKRXwjnG6BOwQ7feBLrjVsFmViCpD/ABUisg9yHVpRKzduaVf1g9HxoaAs6wGyQ4NBw67was8GWrk8YpSUIGZswZSIxnj3bfAB2c7ChyvsM6xyYsn2QlMRm2jI+FCS/wAc2TWjXl+DlCuUQEvSj7wzBj/E6/nOij4Ikw3RYxg+Ax4CrcRj3IJRVxzE1jn9LcbP9ZtzPR1yJ8jJ/wCv7qz7IwzYjngfAIJydkSNx5jxeEC+PSXkiXkiD68x6aOAOV7hzMTTyK1z/X/MlwFKJ65dDxhKWxx5iVOAkqlEgB/ZDOPwNijFIcGTARwVR0BpCUhByB4xj+ajommI0T2BhSmf5a4ayD2u1bDfWsCcoU/nEdgD5sjooPDP8EgqgxAiixgJ4AABBFMmBmJcjD52CEAkmAOEsFleFEnsAEwSmiTQg/GaISDML3BJt5sGDEa4rKsGnhwiFKrKriCiY1hA/Kpf18YADWpCIfIB4IwijaP5RY5P1hcuvNiLiMTDA2CuI0ljHD+qj3lpAidQe5xBBFdgREt9ZB9Bywo2K7x6gaH0k7WHy5Hq6CM4Sv7kELpkaZlmHO+/rLMdHXvs+sMBBS1GhO8gyU3faEwaeLx82OTHeatyZv4QjOJI8iS5+8R53saEgUADOH9gy0J+DhAtSY/iK1k9FGzPZrj1gR9mGiJqIRIx8qpU+T1PWAa7mfFhKsSqPl9mR/zL/YMIEa6WP43H+nG9yOP9w85Jejf8Eg8ges3IAFcJfDABVbtojUto4g63qAJAB2HlHcw2z/F4PNkGeEVy8YF+4Klnbt5D2lWhF3EeMLYJ0lf7gHBsHydRyVzkcb43zX3hSPEjY43Lf3nlwhw7A9ThFpBdBLfo4ouVQaQIJW8ncGSFP0Lg5PtlfFGYJwFFS+PZN1IODmTc8iY8+cJDHaRmG13OOUKaKdnjgBZ2szQPl6KWd2F5nSNy8J2aocuPjLqW9kqQ+IyIhdF8qO8KBGzCj0hawEFLXz7eisBfIJR0Y5NQMYAMGCq2BqzWDwga2J0mdZPE8Ch09iDk9l1M+pIreMVfJAhk7u8Fxs/4zzWOyIs+hZ4kF4OjEEdCW/eMCguXB/u8AspSlEi6icHz0OBtGoyJ8hpjx7wC5gHgCRdJ5wXMze44GfImYHTT7Ge+GxPWheFDR2yNPZ+M7Z2STNxZnJTk7Iv0PBxsxFM7bQByANbZRd/N5AMWSoF8i17ywkCmvHzki9R40DVZ4kBVH/OcPtDenY5KzXE89PXQxq+l2OOBGCV0K14mZGBTZ1566Wc638JqNZJXExyUx7zj0vUh9HPMDR8b3ljkiBcyd4fItH+9Yaej4v45yEyv3pNc4zrwdFnjjLkpLsmfoTnEEiB1cf8AcBHZIU0rmuMcX8qdDRrDZRxxy4ojCw5t+QAP0fzhKDZ6fPBTMYpl8uhqpms1qImhthsIg1k1EL+aGRIhAh/2J41j0ptDm2TUrGm1wvXjDUVXPiXRza/lAalx/OJANDkdTx1keyAyGwdAecodtCQZ1bTeMISyo8jaO8ghH2yU9/Dyg2jwHBL3/WORLdeJIK3WW0GFA0UZvjAJMv8AMa3hsIE8QgIE+pzQWt1oh5R+h/DhHjjBIJlR9wVzpijv4SBSJfGA6+DzyZ4z2wQYG41aj7zyJqG+QIVJ6xw5+T7BbUY0GYDjnzyXjCuV2qfnNsJQ+VCPNYwGLO9kip7yBG5Sb7XHznvaq2OXIX4w93VN+FT4y64K5XhC194ioJqYD/7nE9bLPcyFj1Cql9ca85HJ9t4pCI/J7hEjKLzHV3ejlyR5HJ87WUgwNjkdAS/3iX4LPBoQDm5NH60+5+8g66C2BsMrK/N3UiL6xaku5UW47wLxtkymydHWSf3Ij3BBG+sgGFqvHDTRjLkhx5vogRDwAudFtLXjK+j3xXjEJYEyOfZ1iZmxR4pfGKZDYkpOUpo4TtbHLcxF4FthmqETGD3qN6k/GCArmUAjFQMmCAvivmCMDncgP+gf6wta3bXi+8Vg+e/KEf6shscaV8HWWF5m2eQYJXjFUUfr84pZPgP5Hzk+RuR7AgZOxs/0GvjNyeOuc20ufC0Yb+s1P3y4qDOXK5EwQNe3kcR+SdSyMNkUyk3OrWMn741UMGcYojz4ESuPjNgn6HSDsxgrUCDaHA2Th9h3+TQjAplb/u5GcRJsf8oRgczZEtyfjO+SH1su8MvqyIJevWbt8/MxPPxhs/59evrOfm+zGoyPR/XCOvGf96PI3g+Zo38Kv1hPC/gg+NZRsOuIr8jH890j8ZBIcsI7PLwSeUbkEHqNYBDWC+2xxDl51Msmh4g/54Li9zcAu7ZwLqKlyTfTObs1xBLKpOfnFIO2fhnrI4BZgQuLmcWh6JP0LMEYTSIBPzMv3lgsSOE2KreOyHz1rsYt1dSCCBrxhSLcwhMt+GXlDjg6EIXX94WD+wJnkbgZCSE6Y20bZKz+ZuUq2V8Z55An5L1VYZEAyvXfJ9ZRTmTCZfkADxh37FoeOXgqLo05ueRhTT3AADH9Ygexr1oaUYhdO3xHJhnNBAjre4l4TOzNLVMQXkXJ1CMPrQ+c36Pl76b84IOy+drybzx9aMsriMC1IOvSKs/jLmeuQbN+FiAhBuuRzPneC1+50T1Zxe5bn21BisgBfSItz9Y6A6EONtuYGfCiuDfcnAqBNv0+qGUCwooSux/tZBgowANldnnP+2/4feMngcGDJixWCu2BySR/Bxr3o7J11HOLqL5R4WwqzpEqmZ+dVjLNoOx+KbydA34EIRMYBuTYZK0ICOR0tnlBwBSzYiNKEDZPGEjkra7pvRwRBujsM12Xg1wQUwBER2Dg0gTJX+hTjbj0YJNOWKBxmiBRLHXUIYDwye9X+CQ8fZBUdjTawXzwdcmk8YN0u6BnqhkvxHWxe6weyPJEiUBb94YjwFMxAE7ZYJsgBwNWGRnmBug7fOc7HVxBB5TjIexNzOrEp4/wW2tfrI29pSBfxnMGSXMggQBzlw78hiDE94LPYUitJeTjFUeCKYEVWciA921YUtY3Tp8NjgXOT2UT6IEEDf4zzMSZsMl9PCyTEj23X84wK5oxVh8DE2W5s6F7Dj4xoEo/KUkE7Zx0LDVLKjWJAlp0UaQHEVDwE0i3XXhLGeQr9SArGOgATrfD4n9ZshFainGh1g8Fd1jOgeZbi+xjuP8ANNRgJKlIk+RjsEGTwZ4lYzSL7HbFd4+z/K7xnYJPiL8YeQLUQYcMlRj0if6VwojCwIy2IhDcAMnC4YEEX0QiWhZxxiERAJEEe9HDsqA5G5DjGFNhGKiAUMY/Td2SpJvIEokjhPMzLxhoEv8AcjclYW1YJqHAZ0vnO6T+QRIhnjCvnn0W5wljnhIuOCzzmm/B4NSv1hI3zRFK/jCQJL48x+n1ggTAC9edvnIfBgSaJGrBKGTDDIlRdfX7xk07HwZfoHGyOjYLunqcISDhhE9aa+MFO1MOuNOsurlVUtCNm8I9m0KgI+bywS3qlHETgAOtekeOH85A6TjqiOW94UG+nbCMC2+8mG72ijo1U/Oc8k8wCPgNT6w8gGZYTAX5WDoId2f+HCU+hoBmVt1gtFbgKBEHV4fltDRliMfbKKVLk+xj0bPSPyL+scuYiIve2sdvRR4L96Bx2XB9MNFsOMFbL1Ao784Kj24g6vAi4SVqzVeMZ7lK4+IE4nG+N/GGpS5E+wAAtXhItE7DXkIesW7kMNghCZh4SX3Yhhdd4I4ck9U+3jlva2bP5I4yPI4FT4JvD6JsTzvazUb/AI0qnCKZmiyh92nnB1yJ+S7eIeFc9saNvCdeJ4e5rObJBb4/GXfg0weeo+MQMaoeAqMH85r3Lui5ClZwHTMqFAZaJnP8DyWxcYGgKD+ePk+MOmZgaBgnzGAL8a5n5e8MGSh+XBfhYAFbANCyF+cv4a/FVmy/r2JAkFZH+aVV/GDmUd3LQgAHB6s+y2+XkBFgAe06XDxX3BvzAZ5xJ8BkR15k+cFxz3KBbthnCD1JYFHyK/28my7PEacF45PKsmulwMAi13oU0+VhC1INgaWrZ8518QIB90VnG/lY5kHLQCpcN1h/kGIwNFRBTkcjWrhj6BvLwgPEA+AQV5YDdnkUodCMmKiRI/TwFY+Yyhy8VUY2Vg/CIY0GF0Cufb7ZMDcmRp/ZjOr7Te6GOAEYBIhAmR4Z/TDEIvBVZZFNmlc448VRsQ0PA5eTzII4k2OAPMLS+eGJOwABARE9UcELiSgQkOCYQGAYaw70GUCIMSNIkydYB3+lX3vK9JLcJE0SsXgQ2kq+IzgSENVwJ6ygxJ4MuQH8jEx9VBArbQzs8J9g67eVQCsCyTQWBOvjhilg6Z3CCM6by9Ag3y1otZVytxBOmVo4CqO3RnS2W8JY52uut56kI1ybt4QQuYDa/MH94gtcdT0+RhFoddqHG4GW+EJ8E9ln3nG5j1sJgt00x/NqMuZrwQp8XiDHc+S24+8U6hD/AAmMXRi/cWUSvxj5JXPkmN1iDoz2xLA/5jfSl0OLO0cAEaMqDW7PeaIY2H335wUK9PVwQ/5yAzwaI7UHgHJkLwAgLhHl4oQETX/f4wFhRcdb0BxkEiATCNeXMrCR5AcACoYxO/vZG6H1iutRfiIU1KwF/jSibSC8byxrwlB77z2Kdm/nBIfBd90dHSymebTXBS8es0qBYrbpKiMgGiPTo9yhlv8A6NjLAzJU2SF28Ufyl+pxiJRufiXhoG2dCTx0SFntKo3UdesYTHPWgdms8PiWwV84QGK4/Bn3+c5RHI2VR8rWBr8c87hnHuOGVHLoEYlIENl2GnkJB7UXyqbBzQv+Oz3+8Bci/l/sfAxr9KegoDWP0+fvbCGUe+R70jrBPzKY7kV+cfCl86PUS8SUmAn83bQGQBZ9Q3AXfGGCTTjnySNmfjAXII3zzA6OaJFUXv2ZWWvEKgfH4xW7Es14B4x69RyLGA6M/t2ETrBxfLtbI8E5GzJc0wRDOTafF7WtYIHCIJqWOIwhS/Q4dXknhgyOhwC/nOJ67lWN5ygewIXzL+sZJBX5RHPGEBgHmPdjW/OX7Ukcy4kr0s5HTAfC2F4xjkCFofFmDkFJ0ALoy7r84uzBk8mAfQWGZHBbFcDy8tFmxPB8AU1hv8GfY2yDrHIPxN6+DGMSZlbKtAvTwrfF9OrJk5FHtzKfXjNdk/frw+8gyx7jqoiMPajbN2VxAw+2FD3cDfGXfDVcfE84xdHsGWECDYYGGBvmJ4Z1/jlLbiRLG5JKzpozqPM9YeTzYsPSVZPscHfMiLxqypjhdL95xHgUVyQBvCG4F7fWxeHXka/ZsrCryyOAt3GasIbQR3Gsi60YkEzPz2MfuGXCXIleuM8gjV1MJDeAsAm5H5/jChfH06tYxyzZK5n0cS9OouZ2xrK6BJKtwbMprC/zrSFdv5ygAQgFzPnjCg9siJMzYYeCdLcFW0pfnBEP9+b2VlMlgDUn2DsF5MgqSmduBAtgYNxxBdVN44Z1KMMGFjs9q7MJYJZZHLg8o/OQIbIks6w/hu4MBp1+sdl0EeT2OHrnCzAj8p2MQF/UDQkVOPdc/wAvYxhnyJSDA54eTBH7lkdAYakFm0PoozjPB09c5BgSER0orZBwUtOOLirnxmu7AJdcbwHzs+9hXGc6HI77qVhTMUtbuOznL9xAErzmgLcsgnic0QuRpeILk5CaiJdIa8essUt8zRwb3BNxewusilHqo2+sQQ8EgiF3bKynZPMH60sUSouI543kpPUPdT5nBUaOz6jeHt6QPwZ0MPhaZ5PCF/ODa9AKomoJeJyIpCqfNM1hiigKPdfAeMgA3ueDpnbGaIQS5PuRxi2m2vbK4952NFcM0p4GC2Ns9PookZostrgDegWysBMgz4m6agscZXs+aoQXQyZ5OjUXw2M5C80LUvZyx1TKJ4Nc+cC09D4EPjGTfEiLNHZwQQPX0+ckk0YkQ3pjfVZaIe/sOZ1g70wDx7/RZyI+uWIvvKarBkeRs2MBfnQOwNlCLyHNqR2vNnOa0Iu4h94GjL17Antk4g/njeEAkc9OC2ZYBz0fBriPnFsTL3J8Igv1g8pklcg9jaPOXyB1ouZEsjHxbqLiFKYByGKgOjXKSJOEgfxItltPeQ65mffELFxzPVp3WEQTvbXUGYxNLX9RzWEDdz7RavZOJ9mi9bp1haPPiOO8X52DU+t4fsGFp4pLLc+docJNng4m39aXZlrLOzuBVb2xh1RH4A7Y3kkg/iR4awmvMeFJHN4xbYW+nO5jHLIL+I/gPEOI1cPbhv3miIjlqaZl5De+UQoLveOT+dDzOWD19IIrB4gyQpcpY/V0iENvNSQ9seRrJSCid7mH1lVQ4OxzaE4ISaTUH0NnPAewxsICfWPvz52GSh85piDfbhhLBa8r6JiU+8PhHlwB0VlwK72OlY94T0YSK5E6wcoAixrrwccByKLMammcC1I9cG2iH28jxMjkl3+pzjihv9W/NY6JBH688A4GW6fpHijnqEda0AH+sNaOwOuCBwcUfKB42I4OSkXAmlWzvJ74185PIA8oKK3isnwBypjbxMKnc8V8gXjJOwr88dxksiw6IXPmI+ctKB8SDoEQctSEdevdYSNzJf8AwiR4yRFCvxR3+8gOkDD8SjZM4wmRQR/rkHACteD5CgZHkprR4tjNMqOTzYpDAiWOI1A+7yIBc8iVIk/6M5v8DXqTlEuyqYBPSn3lR5jxY94LK55hBfY4wEdEsNfD9HFF6MBJTQQ3j54B7uGhl30PDlFfHeOQZrWnX4z8HUTpjp4P+dpvDVaYCQ8EOTldLZ6pIAonIptzc7feDywS5hWe7yB5YYPchmayGyu5oyOBzjW2RJi300hj5JAHKnwCCZwOLF+XyREDGOz5Q9ipzga4H4L5GsIFT5MMJybKwflFNSd/1m48eUgSCL+c9JFkWSdgRJW8UblekgfBAxAG30SX5GDsceXom1kQ/T4F0xXzh9sInrnprCacIhEyZ0fWPbhOhH57yblDgHwFxnsExa7PB9YfNq2vRhfvK8yl35BMPzmyrMfHIj5x3MqRWrJIxyuPJ6RLt4F7vQT6GeJTCET6hYXN9/YjnDXEgzbQUDN9tGU4f17wpg1RnXXnrCZOlKib+XhM/lOF20GbKsU/CIEsmMKZ+SOWvEYvxF9rengpW0545VdYfa2uByZN4SWO2R4AojbxqN8GbZIoA4OCBybfUS84/PYmHHGOztbgGdAmsj5I8sSj4zW/YluyFrBqrPgkbBmzg8lwSpK4gVkV2YE+IkXhpgCzBDNTRg44vtuFwpRWFLacoDYsxgIqevFxvWfRuIAEp7GR18vDevvCi9Hsp8tcLARJ5PfWihCypJ3K8bgYIPIGy1skiwMY1JnvtawEElJkjnh4eg9eiPhPAu7AGwPHTwKfuIhjzHGegWW2gvcx9ZBV7X8zrAQH3qiFQVZG6P1JvonGgwBcxKfTeUY8m5mdp+skk8hCFPNjPa1u+f7vAAf0CiB6bx74b5HNEgYRswoY4MbIWXyRUs6TjSz5qQ3J0dsk4LGjSb5s85ADgW14RXbwLZDafiUz56woT9llBQeIOcAXbMSwyXOMCfS6M7UYtTYRo1o7jIZPUrcIei8C/XCPNkc4rJT5roK8lLaUg+zIrnINzcH3pvfxkzMzQlRTVcYhsn+ln6xAC410wd7xDYCMi+BxQymUE4PMIbW8jkzwaf6CwyiDa/6inWBR1V7OiUxhIfQb76WJrjirgz7yybKMFvyIpYbB/cj75wIEBc8ifdsfGWfy9pSor8YBBTLvfsNAvJvkPQHtwUDkHwtwTu5tletwXO7Lz3fFvgxr6xABpzxJ0W7OJfyUTDn184UW5AXfb6/eIQ5Yg6T4RWL4YIcLgVE4EOTKO558rFoRHr24KN5yw0mXQ1OzvPlkmjPJ50MgMBSQK5BNeM1qHshRF3G89gOPJ1YwDiETDut6ayRN0AzJc+liAJPs/Gn5yHyCgBK9aSypsPmuC/ByieTAYIHyt5APPG5Nhk7VYeDtkgC+JHGK4mUR/wBmckK3vtU0AWKNrbsLbfWQzDNjoX+feb8q6BWny9YZIcj68A7zoHobrsBs5z0vB7ZhziSfXl8Pk75xeATdWftHD0woh+4ANazgSGBNGPznoTNuaJQsYVLSB/Ni2DnCbFEAkr9RnKCKUnXzGLY6hFODAEB4T4cIH5PrOxEh9Q/cn4x/KvXMgH7wVAuR0bXhjOgx3QOl7wGKUHy+6Lj3iCqSEW/tbJwBLZ/Y89DEEkZm0XWzZzSBL8yKqyjKjTA6DvR2KxBfc9xqKwigUlewhlgF/OzU2oyD2R53sQf6xafCoJugZOMekvpqF1g4QkSl3aJxAe+GSQdX1ljkPRYRgiAIAzxdzRjrgY3we7voOMgFwI/Ex1ibMIy91fWJc8IfEtsYEh22gZlUNYVPkEl7aT1GbNjcST3FA5/sL48/eOVzYKh+peSFsOBOiJ5GexR2dkb6w2JBUT3Hzzhm9dEt8TaxRE0pETcBP+MPsmx74MyLw+TcboTqJxlBdpuU7/PeQYCAuhW8YvWyWkzC3nJu0hX0ZOUgUe+NtQnjQFqrZM3cHJYYL5CokfjAUEpDaQ9/GV3/AJAcm8HANLb8jhzjMnkjwkr4GBCF2SSgtTLnxkbISBQY99ZfshjpIOIeHhoq/HNZ2PkC/hFnjDH3FTXwhjo1s2eh6PxjuC4QTNtrCTe+NPaL1vCr4hBFWAIkYYNBN8BnZhHAY/DY0FzEjJn1/k85qps9T8PBwKcIRE8Yb9KrgmLmMA5Mt3zEbWRqUK6cobLGMRy+jfifw8Y8AGTNiEPQyYN0tir0Qjh+TG17AfP3lW2f3oFAtziuTyh9rs4AXG5ZnwL4wHU/oKi+FgDRPTFyNvnL8GnI5rxWF30HQ9OGcEh3BQ/Osl8EATbfPvDN6FeRo6ZwyptKfsckj4y5uD2C+uYxhj4JahMbo4y48jcedPCG1YFp9LAWww/kb+YxgLymYKF71+c81IRuWS0LWMcpfL7CaOE87gLgoPYv6xQHolxTmAdZ4MeySxwbQObCG5onh8hfWB0K0Q9V5waAa3o8BdAjD9/EEkfCGc+0Cw1sF4fKq7RNPWIGKikUa8GFhK7W+7saxxaRguV42chVolweQXJd5pQTJWrnk3h2VNOuF/tLHy+YJINKQspMPkAAjXxOFV1Sva7YxsWRFmBZHX3hmOX1MF2zOMATBLZj9bOTQcRo0nkSyt3K/wAcYNGpPHbq8BHLMxvoOd5KuhIf7E7zijSbA2uZOQB2AUDCZkyMHs3Io/EPGuee5HHrB2TYIe+hW8NaHAUANs3xnMk+IIj+sZlho6bl1/oyyNL7J7zZ6bBXzypzzoxwGtbTw+z0KkF7E4DwY5JriInH9n3bRlx+8YVAQQlr6g+sj/q3HjIgEdc6HhH84GkWO9+huMJ1zfIkbqMVctkgL/NZ2XDo/keM4hAn8gquXiTXaAQT77wDgjvZ7mC8QMk7O6lLwxiYiHxSpUD6w/yIKZTLEwcAuElUD53gBoQZmJ7UMjBHD6+wAnWIGKA+T71eAbDsIt1HwMINiPfc/BvIAIK/KaaEIYBH6rtTTyxxSBrpxeag7k8k7EwcEs+nVqBytHDbtxI8U83HscXxEnvFNankhIN+MhnWvt1aQ6zyTvaoofDD6QDa7kbjnITl7oE0WhnMFvgKYdgn1iOi7dElxPrKkszT2BRXOWFMw7odqXgP3W4GogYyqI4t0lVi8iXAan5ViOM7SAPKHBXTGGJ5iCOLaxUUT1U8nCfLovyvGMWb+V15YrDaLVMjYojZONODL4Kn9nOeADDC+XHxWJsEfqHFcLA4TC0YYOvIzRW2Y+IwoLipMEOtpc5sdTqIGnAecknwa0O9EnjIN+n7D5oZBZXE38JyuMiZU+L78j6xXCNooxtEwM6nz1Vq4OFGKlwGYgEEViFKgwPZ+axUZNAASEuwM3csBuQDKneK7BoH79s4vT/lIGgcBNEWN6C3Ms53rV+0L5zurAi34LLzwSAoRYgnW8XPRDP+fzimfMV32pw+o2dHHyLvaKIatLHAsbdgMbOTQ1Z5N93kdFyDutaPGIjvoU0/hjCDK3vv+Fhvz3ooUQpWSFfAD5JtOhgIJJ8e9DxhEcKegQY6o4Dvvtxrf/M9r5kc3zgL/EjQqaJPnDXKkx4ZUPI/AHukSTIwm5/gQfnEE6PIXDa/Wd8EvuF4zVuUK5H33gsw3yyI5PH8YJDCHSOjYAtHCfoep2BeKfhTK31DwiD30/QlNn5ygDo7Bl9mKGQUTH98TYwUHo87bc9YQh1Q+t4yGSEXKDYHxzkb2tG39YNsJnf/ADWHxMkyuHfOQSIMn0fmx9Y+j8a5/wBONcWXPPpuKyH9CRundZwhNnoRSyPNzLa2hMHCN6UnXqQZWd0xUkjniF8Y/QsGbO4hM4a0x1JJ6hErB+zo+S5KLwfRJvoZqs5VsVUj02ciCCZO74VEsYb2LUsM4JLhlfI3yEBkC0qVsk3vjJ/iT3BmcRe/S5P3OAjUaASe3TWGI+iB9aZwCQSWVS7dDPvyOSvNHDCKqPzQB4w8nV+1FNF5OkjAmHo/1jFyhA5LUTkMyjvf56yaIEgNJn5jAZhELwg5NAY40oWiVdcZHhNJBfKwMV0TXD4BPYy0dclxoBO3vPBNQYJJptvebowelPDP4zl6G1qdIwcBiCwBfjSg1gLR7juPAqcfZprqrJWQRIQjemw+skF0Gz/hv6w+BLvcccO88M2ZSJfw8sH+wj5FzlmDKDO10FvDNVffNcnOF8Dxp0hjF1thOVrAvNk2uzWG/r10fjKJchB+aALzwbCCZIrrhZuSio2BE/6M7Fn8QuCyCMM0BIefwoGX/vyCOsnXMuemCrGdVYC0ZTXWPbATfgREO87a68xUyxh+SEgkH2P8MsoEGPUKPE4exUM7Fr+LzXcGqdCex1nd0gdwJHeDstuVpD4z+thglko2f3kx2bZr0NjC/hm+eyuORnrbQPo0BziqYHbCTL0pwLm1oDxnOuZpgSpDzsmQUSIA8mMZdIzHU3NDN+PTKDN3OCVp8N1yFXxnLUgHljspB5AZ4gkR0jfOsGgb4bqtv851paDDMwNrL3xBSyPJytwRG6HlDGDHE7HwpOFWqvkz54Z/PsDs1oYtcgzPXzmxMgowRo9rD9vXPID4HOckSYix6MawuIcyvGvjeVudutTqc15BuAEKMc54uD5HyCvOFbMS26ChA95dlo3HwQd4wgJmN89tEY9+uWRtovrByPY3c82sFWGSx7/EZ5gBdeGufziSJPEk+1X94j/j4r+sRNKx8CdbeSyWvlLmYJxFS+Y16WsEgaXDYuN8ZyxADNowQvxgn5Kmgpld54HpFNLwQMH1sncGWIjzhHZPncEhrWCT+jqNeVmmO48yKf8AzPLbXFqtRnIfZO3tOOPGW9EWr5COBEcko/ethZXc22T2/rKAuuDyw50ckd+Wu55OOLR5KhmtrFtkD25u5E57OlNhfZwV4Kdn+Scm6LVng8NZCptlX8VGJlrr81OaG1SMDX1+MBswfSJIYUkqMkCamxJ4frnNvgmzoqR6GQAdAcBflvABven7nvJJCjb/AISKxDQ98ERyOMFMEnUmPOfmPHIOb5OtIb4Y9Zsn99Zornn2hH1h6NROjt1CxeSTU62SdYfqfqbvP2FauUP6wsKST6kDShrIqQSCXSnssSMYWwzpPZXMl5bCjzUyHy9Ztzzo3MTtYyCII4EmIsfxkM/PQTnjNFm655glMA1nUtNyAH3GxhKPAERfZ5QYhDqLPqK6zjQJIYv+iSMBh9FMuO1g5Dig4R/gHI+kOwUyfZyKZ0eXsntnO9XXDeN4fpW1LieMpiuPUrvNBlibh+WOcvfbBSHn3kEhcGdo8a3nxLaZY87M5PfdPq1GcmT48keyhnon5lIQTpYjN8wZfA6w6XekBwLVrJYMzNts0+hhAIQLSfJkwVORJfPw4He88C/LjytZFy+t/wC1iNP67ehzkKWQPIjTRk5MHxU8tzU4ACNpr06YFDOQKNIkgGIhJvL3LKqOoNrHoadFwTbphZB7KiC43fOa5ECqUHx5eQip57/pHATwfr8O8rbnltT0iP1hrq3R5Ht5IVYKvngAjCpbNmSeoC08bYhgqRzI3zhFjZ+1q/jKcmb0o0av85s0a31Zi8Bgx2rPb74wC+dnde+c3fUOgKUpHAAkOjBk8zxi2TbEhN0Ewf3hhfKIPnlZySY0PA2Nfzntap8/1nuYMQPmecGwZkptrkGectjVa8bHSzkfmYlVbGadk8TA4B4Jxyv1y7pElYZqoA4PMeMuBA12DPeBRIL0aT13l/Ox95BW0feyK6GJyRPETVUxjBZ41xaOpz/EGCRzyQtHCmJe/wAyD5wftPuqlH6xApiVPQL5c5a6O0dIE4iCOffC2TGXzSklHfD94uNz5CD+c0CGmbnphmMF8/xTY6zw2NxI89PBKAdPw66yFzJRfauOcXofVuBgT4bH8gKAj84ZI+VtxFoR+cB8I8e2jGU9mJSlISQZ/nEL3yBDd7l4VZOx9IrebXNj+S9/eK6s9EcDe5zZhq9piU+8LlOwORr4vIY4K/YJK+coAA9gMIbmDT+ssyUa6n4eCWQZ9o8G6OTezFhRtxXzg0fRN3I4t49uT10wCHJWKd6XCHKJYOAuiEOtcUMYZ43xwNZEPQe1JmDJ+cdaEBdx5S9Yt6BMezygFn4HcMcLgDLN9OmQZQqPGP5XVQSlaGLfgtx5XXnPeyQuGG/eQDPB5McnZxKYVmOKZvDU6P6CJkzlEW/SoV7AwPlhTzQ3mojUq9ntfrCVD4blCBwd4e/I0AkbnHyi6ctACH+cn+UvztYfnaG+25GVxvunBqnWGmjAgdRu4eBXpnwYvvGhCmAJ/qFigIrRt3KdTjA2UzySfDiziFJV4kgLBrgZqNTO8Bdc6dbfaGTxLXLvtgPBVVKouYQyBTRm0AE/I/vGPFME862KFZYCLvh+fIfWKgern1ZkrC76rzbcYyq8LkD8EYVArgQ3rxWWAT/HnyRvAoW4HwZOAHjci3YJZneGid9WGhYz2abPGxA5tYV981f+8YFCh0+OgXucRMjbuOAX3GLhgTRbXFxOUfmFylA3g/l7R884LQ1ybW/nJ8bhT/feCwyDr382Dg2TyyIS9bHOd6Mxx2NwcCXsxwSD5CVZ7W/5VWGQYPSpChyRj1Ackt+Y7wwi51uS4pkHB5MDypBL2znYFlmnqtSsATUWK7i53hG5IM/xaSeM2GZc7B0N4gPlt7/jWDmTw/bBV1itXohfCgQBgAKhg91raO/nLnguQkN/YxDzwWG+Lksc5TtO17f6wCoQEwX2q5ztoNrlzF5AJKvb7GujgAIERJ2decTmRwu4BFkA8ZIbqSZkd/x4yy/C5XKEJzio0hS4/GJSCVdtm6w3sWQp6kKxkBjgvqb5XjAB5BTFxoPImejPpmpWBgyeWUmq8LJimXqiC6Mzic78uOltVkBytSf8Xmxf1wNYpaVkQffhjOWNv61yhi5g2UUNTzH5wlkcUfJjFCLkVbAHrfebHdnkDrt4oMUYLRgJ8RnAAU83ZuVm6bkleV1WUiGSztgOyFp4ZbcBgKiO9rAOy2Ox43OLlpuYVtmAZziEf+FUjWIiZAlr+DN5xL34uB4/GLRmXJGuBxk8rdBDkh8vCPJMJlTUH/PEeQZGt07sDWEFVJXw4Tw2A6Rno3oYvJl1vn/RkqTzPdBAazfaOt07YBBd9bX7eAbEmhoc67xl81O+ChrEBoIPZsV7ZxdoJVQ4Z1PGaCjbAYV7SypH8sWeu8NjUGogBgSIWAGEf8e1JyEKJl6g69Z+O4hD6X3gUHegT79Qc43ptX4YwriIN7oeAvWVubNaXexnJsENGEy/c4Qz6gGrWq/OOCbhFwFWrJLz5Z9kGDzqLyeKIJngepwyJHZ+YHkjJlkgG3V6jjF9j1EWI0wAeNDYIbXk5PhEgUugcIjsw+y3Ei8Uh8Q4UTsuMiWDBc6a2DWStsAsPmpmcKMsjQIQb1OCA/jQMmlO+M/DQhvRJsYzU+Uij6hYBK+tURyCYGBFx6oyFPDxV0xGunrIIoBvlzxl7bCaCNQ+0fnGTCoqCiKVhziH3FSfL3gXCILQEqr2MnsKUmx1hmEOo6gzxj/x/C+8Mohc/Bb6IeXEy3I65Y3rI+9cwgP7ydhMqfqJ/WKlx+K2E1hDlmEY4miFkWaBH8gx5zb40/YUbIyxbjXPxnEGxx+/+5CaAX9B6iMECpZc0T8BnLuqEieOmc7MmZE9AeQ+M5ScNK5v/uftB+/VY41MyY4lyf3lnquuAhuYeTApSVS9HOV89TJJJODcd2XpSzxgjzJJp7KFn8ZZ3bemJR0Zxvl8Mk2qhEnJFKwR3VxbzTV/Judz7xocWJn7j/DAo2USFA8CBP3k0OnyLBNkayBwHZV+wYy5sF1rnhs4DG5lmo9QPWFI/HTTD+feGlW/eyCSf6zuJHP40kMCcmQEhCG6VYvRI7+w0ccNjgnn4ANYJJvjtb6g4DEV54aW/Obg9j7kkvwc6pwyXB0+esVzB+4/XWdmxzqGQwZjDMS7KvjwyM32qdP58PCdcnjtO9ZZ1QcQT+0BhAIIj8oi5yyI6UIcu7xPXR2qMPOGCdmYMx5A+hmhxbfCIusJUcohscbOFSNyEF5c45Adv6uM5M/5GJRwlFwNGT6fEbw8prXho2i8rduAZuUf1hf4XZsAyaXjPL4CtW4RybsTXHLn9YCAf3Q8EQAcb2H0QY9jLL0JgiY3/hnTEyOefBnGppfBEAEgDvHM/MIMWG/4yUgZt1vYyZFwGH9NsMZLYnz3BADQSyoRKvlx8xndEcIjxprGAGzqfnw8jcTXMohsZzK5id2oJ/WO688Sfmcg/sQNhxzn+IifAeQArHXmo3lcUDM+6vGmzHyX/IVVnPAi+ENlYw6AIJjoSwFjV7DkkeRLy1PCG25YCrKHwBKBTi9eslCOYW9Qcbqi9jYPjPdbgnwxMYd+wXupsm8pOAAnALfT4yLCg/Xr3gfgMlg/aLx6n4tacCcgQiBAqZdxnL/IUmixawQef0dC4XGbHzD217QnJU150bllhe8ju3uv0++85jkRZ3XeAEht9agwBAIytLgdkCMvRGyFs2fYwIuC25tyvjFTfEkeoe3hlymAeYWmsgqYAEH4HE4QSTJHdRtH1l8AfkKkexhNyv4TMbM4ABIEHsqJBkZCUBsy4cRNnJSkc7fDIGIF8ORz9hHCAJXEMo+WvjLJdOdvj0ySm4I/7o+cA5alB687C/GKSQbUU1wVIjKDKDRI4LfmVib8wdsSlK/0YYRZZ39NUE/vPT5XhMxfWCNLq4mvZHziFgCT5o3hR9FKmwOd5IY9OeBC5OFBt23StIecJ3yOAwtEmuM77e+AWsD27Ooj+Rg4LsFmeD+cElHyeOvkRimWUYhdLGJVQ0XbhE7yTyJ+QfmvrDY14SNGFWMMifGmJHCeRZ1ALA1rRGdOZhR839ZqWJ+th6YUio9dLdRik64nuuUTh8QWwYkKcAHowDZkKTMaxvwa+flj4zZh0PDE+M+tkK2vpRl8La3xMQMfB1Qnkx3hf7QMjQQrziiT3IgN8l5RE2Z01zoLJfwfhfV5vgleQiBu8ETemYiSXwMj3AICkCCBO/nNb4EpDytkVioyflgisImHv5b3iUMrf486rJ0VEoArq9kxgUwFwSCXQMlIjAA32UgjKgjx9YqBn+Q+AqzRL8D7lL8YSXGrHI/O8XDIdKLSe5zxTII2YrZhiiRArkaoX85tMm99S44rEQEUQqFwZVPCgf07+i8UuXaFcCVmhDosniic5RAnfJ2PL+srlpA2b8IjHPMBwqN6RiBX8aiiSIAykFvfwPMYUPTPyZ13iPkS3EECyuBnUjUzMFlqTiil7ZhkDeUYD/qGLreQLAkFrjms67Ovcag4DBMwQ3JGieawj55qmfFzmuBDH5C033hAHgSBMHpc55W2eOvg4I9+JTC4vHz5nilDBTwWJcW5s+ZGsUgCzZnYsxeGhzrguPEjFZ3fQ5vZU4KQaHzthClgEBcfuTsN6z/f5/neE3ekpcwuc4+d/jrvCBHmJJ7JAmcmgYgRC9zPLwxNcfQmeGAIiDRGvMqJz64C7PRUZBiKMUORRIFYhDYXIjclWcmGY8T0mBhC12x1tBCCcHN8GWpPW8Dp+St76l5fK52Ps8Qb2mT16y5kNEUCYrbGXufJ/EWsgKd9X8GcVinRY67kveSD0lXG2yfWD21+h6YedCNjRdSP8Mkvqo042L/WCzYMf9kzgs9yfGvjEOGjSaHhR+8cmQEunZ5HOcBhHQAonl5LVjlcE+hWBsuhFs9jgnOf7Y3flkgVNwSa/bOR6UKtoFDJi3JkdE8QBRHuSFrcVjHBmWVxy7F4OIiP87GsImBPVLjQGPaPZPD8ws2CWOv7b/DHRDP/AFqKP1ghD8Ou4KLw8ifgoXFAYLIXQ1rXA8TiFc+GJd3rvF+ae7JGwc6kAqfoNIhn3ho7ZAHHy2cJlH8EjWsJIVAcQHza34zYemep/UYAI3cVfRO/jPvrr2RhnpESaPo50Ptxx05rBH8POG72HRcUQnlDlweOJcA+cFr33wOliXmSPVcIjNi16TO9MHEIRU2N9DATzRL9P51hCDGgY54fr3l9RCOokRGP65K/XOc9c8EEpDLYBSLKuZ6wyHJDEXXCecwwAEv0ReFkxKJE/GEARM+5SHJGSFCAXob3zh+4EhBeDf5zpXo9a2NZrcCFqqP5xvgnnRK+gxnkJhPwAjogFYJFCo4OqM8YeU96JHB+cD90dFc0CKxlE9xPYAmlOfD2UJDuR1hgBkhEExf3l9zNQA7ElzgFNmP9WOwC506K4EnGaSW9BsBA6wAGBrRvt23jRPUzqhf/AHCY73NeVhO6W9GRxzgCbhEnsgjkZC6O/Mdz+8DEPi5+Duc2JnY67mcHyGUbaBHeDxx31B4WBmGe7YRYklTjjh2fMeiD8YubiZ1NwFk8nmv98Xg4GnBPPYdA/eTT2H0Dp/vFQZ2Kljg6f4wAeW5qAR8l4glJ8A8rxYwRyrOzOyPWFWDxN0vv+cUwFKI0SJEorI5W4PtgES3iFHaPE/ycUafkKmnjJ2hAiXKJB1nBGv4h7eKswhz9cLLtJUFqQTgdlOgef0R94dClRswD+nnWo7LNHkLxi2X1QXUrT9YEk4ZBOj/RxyIMBK1TqY/eRQggP1dtXlnktywBx+MlzOxQk6lThHJfkGgiBFz8589cljZ31xmgOhDE/wDMg2Ioc+DoHJ5JPjoK0lkaJLNBfPmLxaP1sAV8e4xUCmihKSUU8hjkiCLpNufjF8ko8JdEo4U3yxRnRBM7xdQGWIHwbfxnISdn772cEN0iQ/JC1hPEfz/PV4BMQgdpP3GJDZdEDtjfJxgryIJAJNfBYyHIFeBAHmcPGwLJYY/YwoQEIm4i6i7wiY/kQIJnYWbHrXRk8XvKPaFntnWOOBQPxdnIiK5TOzd4irMvQKO9rrDxbufyU0D4w0CNGftiUsgghxRP91nAHMUUQ5tlDKLlvcAaPwN4dnUxGgmxOO5soQG53NrJ5RMnXBHNfeSw1FwOw+Xlj80f8d4hzQ0EgDJHbxTp+eSWucQGpMFE+73gA1dGa1HhZ5pQAptS+MVMlWGfFwN1nrgRobXKIwc3waCjgQlgNh/HuQB+MNcmDRivFPGoW0CYBtT1j3LkNDfI5Bzg3qf12N5Mv4eq3QyoB+eBC6wGkbIJpKljPL4MDkPgmcVCWIB8efnFyxwj6ArE9VTPsfnKGwNUTz3A95wvlIZC+Jwz0WCTKgfSxBWUAaqf4yh+FBDzkALljk1xo4AOOV4/5iZ3YI4jxngDW/R0eMiFbRcv2HWMciRHD7+MqCiWbAYPGHkhhXQbc8fGJVahMIWpafeEDiyl0B86yNaA45d6eVDYJkLh0BWISA41yx8yIy+oLAm7gcHCq2AA+tFUQTicfZvHw7JJ+RzKOVb1fLtSsPyGXtIVRTwGB9XsiIKwjrqOPkN/7jP4ENW+oznRA9bUTrAq6rnYlSMtv1RJEnkqcDkkSFv9i0MjU2OWjPkrOkivYHk28TgxLi5u+7wKQgn0BF95vuPvyCkng2i531fX1k1rqDPlDeMLh92tmgybxxEV6AETLrNwYKFRRQDBvHMP7PB5SxHfsdnbAE5r8TPZZIa/GcEOlA91F5QZJa3B74nBQVL6mkAW8qdOtJEDgYK2wLHdCBgVTaIVwwyv94xyajZXnh+M6NkiiZW+Y/OW2l+FycG1DN0yp7jAp4NmZjl/zgkfY/M+8vgQQQtV0QMHHFQRI7wIlfq41KJGJo/jf8ZChnZeFMSBihkyGaCHJjIYqdrqJ0cTUrYU7hcxnfcij50TlczJ4HxGee78Spj7wT5HzNTYOaZA9hgSlyCTk+6kxo66wnlCF8NSji6/erneElssAKOX7QwTCXhCKo8zh1yNK+QHecNuA9EgwGucKBo/Km70J5w2fRCtQjRo4b2AnwHxqfOOON8KbSw/gMTr3X3nn0A9jrPlPHMswyRm/DX/ACjnuBZEL1LfWJnnz65DwL98UF1g++IPzEYdRSnx8Nka7CfynePgl8foE7GLkczou/ZymdfVQgAZwFIH/XEsnIGrMntOAHnyi9Aia9Y4GyLEmX7MZ1zsvbrgrxggcC5iyU6ybPPQ64nHqXtPkTyRGOrL5+HwMCQ/dAxoAVkut3Pkweckgrf7knYv/ucKBywvyd4QVy7h15JBP6x78aU9M4XLi5QVjvawyyqtv8aYxPvgi3IHUPBu+3B+RGOnHYa9LXnF9mjXgBh4Fosed/M5KpXAGnRZ3kch8Dk+4OdskmuvXaxuB/pD9jAE6JcNPkPl5Oj5frsJDPQDChI981iP3oPi77xgsXxab5Gsnks+U+o4rCnIA/rdgJHATEAcjScnC4MQMfxgVyADHXkhsYgpEgNh82zuMZRao2SxyDuRjmgwYYRPPycSiaI+ZeAAH5PcahwH9YuGOCMIxIvCHxoHQJ3N4QZO6h1pRZwXsC9AIdaxXrs3RMmr4w/mkH2F6GETDblyJEA4JHuNCBXj+8DCJlQAAX5RU5xopIe1PrG0PIL6B+c8iI6GnB1P1gtQdi4D52tZ2WOiuP2es55Pj4uisVDhFcwnxrNnZhOKEl1kzAcA8Fj/AHrDZoDZQfQglvLUXZERoeDm7b1vZg7GQwNij5f3GHY5NddaCydlxREualVlOBTkeWzucYm4JuR5+sKgtcUhHB5yndkBQvFDWFm6BjRPjkjWbQtCT1XbnBJfaLuBEanCEBQXIot+g8+BqGN/zi5ekwyIv6rBBRZP8uhS5xSCE/8Ag0dZCUBgGzrumM9qbJ3RRU+MHcag8hAHbGWIcfI2pg69Zy9eUTy5DyeSNkMMdA94kjCd7AFWdYvKl2Y+iPznGx2q3gTaUpQXR6s5wJ73PBP+eSJHhVAaL2Aw61PhKAQDrrvEOPY8BEcViKgnyZ3bG1nAn3xSL5E4dBtofN40XIVc7BB3GI9+jPcpLKNGk4mmzzgB+GEZZufBOQExwybFm94YLSlz4RAVnEE5S+WJN7xRMoxAC860yTtuDAEPKMYvhQBIMsRs5NSJZPqY6+MJHAkH22A9l4ipJ/vomQSPvEgaNeIP6zuSuTa4mZWagypO75KHOBlzLRPX/WRJTLjQHBZQk4WUJB2qDG/1jcVQiP8ANR1i6OzwsRH1kEwCy0S/njxnUEVJPr28AmOiOj+DOX0Xx0bMgxiUh3XzErl55obN8h0V1nTEcqQiJe8AvVJSFKPziDSPqHfokHAYmVdTXmsUdcgiqk5NiGjfx4BxU0waGxqGJyg4UqH6Jrr3gDkyP0FrZKnLgiEwhr9ViHd6f1luHUp8hqMqNAB9t8xOWtBVPsHWqwbK2QBApb5yyR9hgxXi8Bnzxz2DNC8iiw5mzPGz85OzSkXJ4UYpiSCLjVNE5Mo74qPs+8/h6ggsnjefHfmHEExi4HuwjOrIWDY4LU+Qyd5y/oT7bwjXPtVXWLlw+vuAI1g+IizHkGhyc04Kqbn3OBxfMBLof7vFAXIMz7wSSR98in/zN15NoiQnFnBwvINf8+serFFEMH+8Xdl+R2OsXCooxzJpQ8VzMEPthgDH1DPzwdSMQu77B50Azn810T9jA0kv8+f2cBL3x/pj7xng2DPkRqsAMjsn2u3OcCJDgWBr/PPG6Ei3PeQSdWRMAjpJ/OF76EFSW/jWFobbpqv9y83/AIVQscd4xfY4L9BT95BfyJMviWQ84QLYH+AGefc8RHAnrJuWSB45JUHGXbIPI4/mKyfngzHAqN4x4Aff8nFLT4HfBT/OQSdSjyTo0v5zfEqP8rAvvRJdT2chR+IIbUNfnD2irEUPJ7wcmNSdPesT++JgSlzhlA01Qmx6rKs9fwtiMMGPEFdgUr1eX74jQ+c41ZIMx24u94vfULVDV5xIPUDxdLALmST6lxpx/lh0UJYuJHV1lpwdAzcmFPGI+BsgI0P9WeZphhgWzWDmOWUhrucPU76PjDqENzxTabxsPn5jrfjJ5B1ofI3OCPTuTXGgjrOB5GyPwBCrJ1Wh65dHNafVXjY8zO3xMVhEAOQWr96J9Zxryy/kxOdwp+eWkMEVvrsL85c9W/2ApOB7izRXwhPnLcy9f45UvtTTtGRmm6kpE7IMvAzK7agxHdeVhqqA/kSJgZ29P+eYwP5JmH42NY/AO30YcA4YBv8AFQwdZOguFwuF/jnCiePAHQes9C5Ne5U535Wos2Z+MmfkbtJeMY5MkWwP8cp2r/lonJ4/k+cHxUo6ZLiAVrJA0eCZgEJ/OSKvciekpvL7qejyuTHWV8WaYhnzirXOzL2HQrGrund8bTjANfQSB5ds6z0QF1HCnAHKPPA4eC8g2Z0j5rAO/KoeCZB5ziZCHA5UbXHGXQqCrhJHZGWfx4fB8fOFEIgAxAB7aT1nVTXNOejGLYO1FJinAXxhHX6CZvTL9XkIlQezvnjN6QlcQsgoIJ9eStrFyR2BVyeXN6zg8oTIiiFyMRLoAmSLgxgTUoSILE54O1os/JkjDHcbW/fNnHzO44DR4/wxUexGg/ofeI8Bweh0Oys0bARJltmVrWEMWY3okz+cFvbTHNBg7zoG6qJAmf7wBkkKz8oYRF1Z3A2bxSQYf55Hq89yNE7k/XOJaMBA2R6FicCjoeULC/eSCGvgoPjzzgG1z4TbR283ZfBbOwSux8YjuNoAhnzsj85sg5fyGJ0sCiOih/PYfOQBIZBHGzk2hPEngF7g4vkozVsDmMIIkGe6aWsIVJHVC/B3h6IA5HzC4G8pmqk7Z3ldhq5SLBPAxL2x6UQ8QDvVm5f6OImyZ4HOnaOKz5hxb2IYx0F/3kA6Ay3uetghCYWU3y5DiYZPvF5qjYBgk9rEC4k6IkeH394vrcAga3pZCqCBELZ+nnfJgmI0v9OEHnjm44qsIHuATX+67xcMPRH4azVkdkypv2cLKCYYL0QX+MFBFPk2F6CwgPXYJCA55BOLglxJ/GLYJW5R8jQeQmCvMCkMQR0NsyDr4zzKsjuD4QvED4Q5IceMtCWN7HUOxj15EIJ5OjinsB+y+LOI6F2FHlGGsgoRuEpEkNsScDp9EquPIxOHCCeffWI2EL5fiG0vjBbN/A8IycPiJaSgJHBIbiblBiNIIZ8gmW5bDAzU2ePBTuvzgA2XtuzTGv4OCHCMCdu+mVgCktl3d061g3Dt8Ajq8l1OybCo7WCCVLMkCivt/WKOvTBuPxl+kno7Ic4uTm/6vKE8xAkxVsnPJ3Pm1tAYUijDr9XAJ3j+YHt1SjDxZlx8XQBzrZDO7t9Faw2OTajCkf6c/EumJF6rFEz4tjbYWIO/qnU0Lzux6nqZ9ZGjuiwjw9ZrimEVx8RlC4vVNuFvH4WyYP4AawQoHzTKixvAoPwrQg6n+8t9QypeihIzUs0S+LqS/rAdAGEuV5DYyyWYmD0Q/jH9MgQNIeu8+n+hsXnq+AvBhlYr7fCcOL13honrwT70MNSLaUh51ObBPcTI9gNcYAeRyrlv0GMY8vQAnRTvPlvuwa4D1lE/DCvYkk3rD9quI3s3ht8+wVt61iqSSd63vn5zyaoGprZYHOPw3T33HWOVSkuW/wCOcn+eFCc2vORpJ/fgpLJc+RNmYBjFKPrzshAp53FyQbAo3xibL1BcDwNYg55TEU3pBrIiCh9HxUDKkc1/BgCMk/oHxdsYmVQfcp8R/ObRAUDr2CdnIBcBvy3SEHJdmVEirtI4f9KHZgvOBoymJ3eHbiYOFgg+uJ/ZIwxc6qALr1hYpzO33VveeQeCX+Zk5qgo01yw9HHJZ6IcVLFBLDI7ccAj4c+c/wAOiAJCsLrLaHcUVtiXkMhcWCWHu2sg/IuPXJOID+/uEtZwyiehZHKOf4QU5sWMYpQClH4oDOdg80ABS0iMOvxb8AWRkpNnXmxeFrsHQv8AxGXOlOxP1Gf1BQneryuI1aYNzDwoaN2z87mM73H7GwNdZNmBztfp4FHhAcSz2CMFPo3APZusheeIrvDPLHEHXNXghKXoHjYMYfiPy7LAnAR/0foCH1jdEPydGPrAF4fUHeyAP1kU4F+6DJwfCgEgNIvrA/EOymR26H4zV0vbtg3jAmY0/TKzz22iRvwkMr+CbOvZOCgaGjwN3t4ItO0CfPkzj3E/jmsL2YZpiLfnFExN0DBFQid56Fv9HnIFGE3ZdbfOc+RCEGG+ZYWPMVUtvpDBoBi9sS15zTrZIh/rvvLe20mkvKODbPgXsl9mMUQhPm1BN3edCh9Fd2Py8AhMiFIT2UDOWNH7D/gYAIbJ3z72uMnWgkpERJ2MAUcENeJZOoyTB9gJMTZ5xCQAmEjR2Des/nwKpTAXnkprwaZHfeTtzHmIWgS8enSOqFiN5YkS1QZp7WsOkjbNlPtZXMABeN8MHFHLmyR50MUJm6c9AUpWISZgFhyCbQqcPAPybMryzeH4uVAUtd5a06KRY+pnEQdqN735B3n/AGpBUE60cXICNwbmerxUnzaun2azpgdcbD7CwKwPUX4doYD03ApDSvECfJKAcq57Zyyjvcs7g0usqJHAKUNknjeJlKNcME38RiO/RPwB3U5b7VSitGgcOlWiOfxQw2IlSPvuCcAHCQkSdAoZEI0DzWzUmM5iJ0fAxIsPk9t8NrjFYm2PP8DCn5ltGZLeGnXZ0WwmhvJbK16nToEZ7YT7XB6Iwhb0pBrhjE3IMqR7C/1Zu4mudvWCOV96kD895KJIHd6qLv6xkRRB/tfPxiNsVsreq384pTgxptWTbxVK6Gh5RnvCHzcKgAQng50WEPzEAvOXvpozBWuPOGYqQQtHYjJ69cl1rAaeudQNuC80nYu1w/ORG3GigAPULAINsgsyto95MAIdBiN6KnB0PYfiPA+cJ74SJi0Y6OJQAOZgGEUBnGntTr4r1kQ03J1VTbGH7BDF2Ax4OdHiBHNM8i8RiSKrkcnsnBzWvIGWKzkwdM9WD5xQoXJqwXELIAEOeZ5fZKxUASAdLmVSf4y+fLAIBNCZZx8gRMSiSIxBBAT64/lYg5NbMk8E63i5gskoSexjEBc0kfQJ5wgr2FwlZYB4K6Or+2HhEFkggP37wBhvwbPzDrEgUd7Rc5JbJ01x0LGJOT5JrkgxQwIIaHVlWFOf9VzaI3UZDqgHDA6AqfeL961zeU+DVgyuA395tholdcPxh0exqjf785tieZs/c4diB59cvn6wBR96knT/ALye1XYhvc4Ge+wfw2d5K8GmJjoLAGF8j3tyzl3R4MQ34GAxAAZQsjyBrOZNPmD0OM6KgV17vLEMebyLr42p3aySDTfYmKM6yLugjb5PkZ+I/wAjZwJdueWb2SDmzA1exBkcgYPiSSLnzo4nSH7INlZ0VwqLMqecYB+WfDGuhitUa47kNP1i/XrghAZLivjcoecJgs8iodOnkBIx5kyr4AywOxMaMmtnOjEitlxzeU2jJVORD0GMtuoAijSVgvBv2wDZa5JGf1YTGu2MJ5n2OmB531gPvguPagHN6gBbfajXGDc2gzsjYmXmwJFwmF65WU/ckaML5nPYfEW8EzzQWuNRi+FY6qBqcre/b5gPOdfUKJOicQhCkbsqLAGfi5h29fw80/TgAK1DTx/VDr7mMMQH+wOf8Mju9FsUGysqWJM7PQEkPBoVwyGSXO7ecM2UujKNTjR6cEoKP1xh8l6njR8nAWt80nAKnQw2Q0z2D5iNf8yNcKoPgEgRhJ8c/kjzjB4+ny90/nCqnYsEozUt/ODSY+gXA2WcKSHYEw1T7y42CCYbMVMVg7PtiCmeDLziiV/EuOMg1MCP+przhF/wVrvPK6Mpjut5FXXj7Mn5rPf05I146yV2jI8RBc5VyR0f7+cBako/rVS8p79Hl97OcpQCxczGGPFsaiD4wAxodxsIJ9fecckcQB5G8qubP7qSfnK6USCV/WAVYA4LBfecdXPBl7/vLM0ySCia4AOHryqLmeQYwMQA92I2r/nPmt2OZgYHYhlqHxHZyZiHw/qziEtFG3MuDofjI7EnyJYrcvxjJJHiOO2tZ5ZS30ubJOFhgTTkADoeeMXsPSCIHQYxvk7utMQys8khvai4k1g6OiVQnatYvf1/GeT8OLnovfWNwS06gGIZw2AOIDg0vrAbZAA1sIhengSjk+Af5YOQiQdgxyBvIrinCW2OjltNrx75jCHImNelu8iCChxyAWVlA7/LaNdVnLVUc6fBv1ikhRzoDYvrI8rfYrxGGR9QYWmtH959cLVF+RzfypiZreOEByuRosWwDnTc7Kn1M6zyQwkCSrtmznGy26evkZJJGnBnQf5xEKYB+u/GBH8MfIXAC95eiAy6nkIEtnBcK5uDKPFZ1Y38z4vASajSXqeCLWUb6AAqPnWJEwb6SVITgPNw7Sv1Gc1E0b2T4y++eUmlRM5IcjiBvknnOndHnnpYNnVnSmiZGWdd7c0H2cQP9GU5Y85ps8s+Cjw5yzAEi9gGa5ecmukeFPnOoDbhdRyf1k8n0J0+q/GfIdktxU1GRt07jU29YES7PLIhqvGJFQpiTDv6xG4MQfssNScCY6viiI+M7JYsvXCWW+PfbxA9Y0DzDcXTUDHuCvh6A4I+8GoEsQCPXU5A1PyQ6FusJLCo+Z2/jDNXBrUkesQSuOjfDNDKgQf+gMdYYDL80e1tkjEeSdzzw9B4Ok0T7dSXeLo+wSjcKSziEz3XSXo9YfLIFaqiO8Tn46Iv1ibZHgQBFmWiBhfii0zNxzkAVFRpq2lh2iWQJG6lfxgAviwK0Qp1klA8uK7DDeAGmKjrQIxk4CIO736w3qFKnm8HnSbmpPWAQFwoBD4I4M3nNT5RZU95qIFobPZDiMUxYZTYuiNcjNGXZ6Fz84gwZ+yJGjkaDli1JTiaEc/sobeIkwSBpjguOsm2J5YvQ3g0Kknc+XLwPbLE0i+J4GUeOoZS74yw/RDjwSd94JDEceoLLm8lCp5pydHZOHm7J2H/AAqwmNRBddHtHzhuH6Ev2hVYW5JWi0rPtDHqkj5FlaWSdADJK3iC2LM/byMIEQSZkGWGyqvHt9SD4bYxyL/z+s4EC3XsJucgMNAeLidn5w6V9EVft5VwCYHSqNvLCsHw4IFGM8Dq2ApxZcf1s0C9Zbhg0oYoCUSVnG78eyfvIoX2zGlErnCieSeyqdw/4wVMEmRXUSMo6Z6Al9Enf1gLRUf4ZLFcVL4z7hz5kl2RlwUpiiOCsHM1yFHiMNVvj+jrPY5pFmGv6wgeCRK+TgZc8ACYI87z3Ag1cZfvQLiwSikVho/vE9k9981rIkPuV/R3HjD6kM3ooEGdYih+zvR5+8PqWR+5CSwA9g0TC+GKwwW1z2v6wIuPMnfEOshkuWVZ1LX6zRrzPmb2feMta0ABI8krOhHAXTmjOCA+dzAMwxn4NvJwn1kdwXPHImsnwKpk+elmiTBY1URUvP38yAIDMxvNrQHDl+yMjkgxxCL3JxygfPWhpXnp835jv7wqmlMygKIiX5z8lA+Va/WGtOCWp+bGeaSDD+jN/OdWlFLsG8RSvR3xy9aw/tpC9mW11ln83NET7yRxewu03+MjhQYMfVKcPlMtgqxMG5wOQfCsyO3ij8gtHm5E4RW0yzPkUBn3JKexEROSKEkCT+97yfXy0qDGbKIJDK4JVVGG658ABf8A3H/wcGz84YleePipJ7wmPMD+BH8jCii431aPLeBWAQw44uH2c2r0ghHfMHxgAPrb+JCj4w/scGw0p3zGDdh/0NhZymzteK1OQ5XBBUVsp/eHuLMm6KIaWAtcIFVsL39HC1rgeWhtPDMeidnSBUnGUPKBN/K3h67+j6OF/wACJ4CiPeVbvVag1k751XM9sI8C1uTcbbw/hBmlda94EHEMSm3UjvLUHtUzY+cbAIH9fRw1OjfEHj9LBKJAkH8qLUZJmOkoWL94fY05FTBmMP0QqcnuCYGQPqTer7xRfg7/AG0+sGwDwDxagEkxl/NKeZHr3mhLHgX+PkZP19/GFdb83T08DmlTxp7rJ7c+mu7yafpVNwsGj4EmnCr9ZublcLTXvB9dU2Wsl7tflLzbw/4zR5n6FZDltw6vAvyHmpW8H5flK/3OaN0Wl394NO4V/Lt4en3ykedvGRXB/X6eD8DVPXtXktPDy9uP6yUHyK4/7edH1+r0smOfltN/54WwthzwE3kswW38u80HbCfKn9rBceHwX2nlEtxVR+sO0k37a94Evt9cRSwbXMcJz8OcFH4fq+3hctqNl/TnNe6U1r3gaLTU12nqsiH17I11mz0Hs4+sLtsF50tt4KFuy52+sNl1C8L9M2fJ9kWvfrNFuirrT7w7XJq7P6yfT1y3Oucllc8KUveFqWlHLm/yyZ+CT262sHXL9e7eBuXQ4Wn7eUC6fLW3nlLh+/LC9JufKjJpcdmo5LDylKbfr+8LerD8P7PByvfwlRgW+O/h7+sNw/03/wBeC57tN/l4LpsH03m4phtty09r3k7fJ8KndZuahPwS3kLaXaUfrOLbEq7+8+UrcL+X7w65nylK7wNTwfZyusCi7MnxrpZ9j3Z/3jDq4Bed9ecFh2h/mms/Sb2/OKS6NJVFZoQb+3CzZui7uF7WccRVUX6zVFN+NP3gvtrp79ZHhKvrPL5P67byOXbfpuc0dOfk/VVk/wBL4Pt4Xuo9o/WU+fNW7yeuuJU1WSk59uHg/IN2p9Yh7T29o+sjb8uHOB7dhcbaUY/RwofGRvrs0eP1hv8ANvaS95OuTDjb1+3jf7nb94yh3KtbXeSi+3wmK6xs+PvvywcW3r6vu8sfMq1K6r3n+/z/AAz/xABAEQABAgMDBwgIBAYDAAAAAAABAAIDBBESIVMFFTEyUZGhEzRBVGBhc9EQICJxcoGCshQjQqIkQFKw4fAwwfH/2gAIAQIBAT8A/t2wcG3dJVGuNelAWhRjKlWIuBxViLgcVYi4HFcnFwOKsRcDirEXA4qxF6vd71Yi9X4qxF6vxViLgcVYi9X4rk4uBxViLgcVYi4HFOhxTQWLO4pgjM0Ou+SdDi2uVebvl09k6Fzm00qO8w2i1tUXKTmxXNhOo4e4/JZ0msVu4LOk1iN3BZ0mcRu4LOk1iN3BZ0msRu4LOk1iN3BZ0msVu4LOk1iN3BZ0msRu4LOk1iN3BZ0meiK3cFnSaxW7gs6TWK3cFnSaxG7gjlSYJaHG0O6gUfKMajaNIPyUnHjxWNbFb7NK9k+9T/Mpo9IYf9CcBbaaX2QqDYqDYqDYqDYqDYqDYqDYqDYqDYqDYqKg2Kg2Kg2LRoTte/8ApWRSTLzJJJ/MA/bo93ZM6FP8ym/DKdrN+EfyD9f6VkTm014g+3smVP8AMpvwynazfhHqfJWjhjeuVGGrbVbCDDS0HVB6ETS9Ag3j1Xa/0rInNprxR9vZMqe5lN+GU7Wb8I9StL018ZwuhHguSjO9owyvwWUdP4Z24L8FlGl0u7cE6VmmkhzCHe5CG5oBiI0rdo9V+v8ASsin+GmvFH29kzoU/fJTfhlO1m/CPQa0NNKgy8WK4V1fmoeTIALXG1d3/wCF+Gg9DKbkwNZoY0+8AqzfWp3qwNp3p8JrwAVGkIDiLQcPn/hRpBzC7kAeTG2/3p8OMytW8CvaMNxpRwKgut62lCpcR0J2v9KyJzaa8Ufb2Un+ZTe3kynazfhHocSGkjSsmwg5lpzbgBd/2nObUsDQD6t4IKdZiDRei1nJlpaKp8k15qTdXuUxIUcBZAadijQTLkno4qhpaJuT9f6VkXm014o+3smdCn+YzfhlO1m/CPQ1pe5rQLyVItBg0Is0p3oUhlwAtV+VO9G7RemguoCKeqbQNzUzabijYEMvd7R3LKMs2JD5XlKO2U0phJaBS4Ep2v8ASsic2mvFH29kzoU/zKb8Mp2s34R6IUUQYjYhGhQsptZc0gAlScRkZjrbhbpcqsgA1ItKZyg2Gb7ys5Qz+sLOcPEas5Q/62rOUPEapefY6FUPBNVybIkMPtip96m5lks1rLQIdfuUxOQ3wKgaO/vQdahtdW6pTtf6VkTm014g+3smdCn+ZTXhlO1m/CPRQdOhPYCQWcVLTLoNLd9D0f8AulRZ5ryCA4f7709xfcdXirAVgKwFyYUF5hONT7HFZwY1tlrX71MRXTAAJvGhNFIJh/qQDRDY0VtdOxP1/pWRebTXiD7eyZU/zGb8Mp2s34R/IO1/pWRObTXiD7eybrgSVPXycwB+ppA96tBzhQ6BT/nGm7SiQ5xLdAasic2mO+IDwp2TLC5jiBoU6WtlBU9KtQnBwDamu1UZhHeqQ8I71RmEd6pDwjvVGYR3qjME71ZZhHeqMwjvVGYR3qjMI71ZZhHeqMwjvVGYR3qjMI70wOtflMI29KhtjAxQWm8HoWSGxBLvtC6vHsm6I5jHBra1UxCbGk7Nfb2LNJewiE6y+ul1aU7qBZlmusQuPksyzXWIXHyWZZrrEL93ksyzXWIXHyWZZrrELj5LMs11iFx8lmWa6xC4+SzLNdYhcfJZlmusQv3eSzLNdYhcfJZlmusQuPksyzXWIXHyWZZrrEL93ksyzXWIXHyQyNHDgYkdhHcTxuTclRvzPzRWh6T5LJsnEloER0SKK2tF9ffQ/wBm7//EAE8RAAECAgQGDAoGBgsAAAAAAAEAAgMRBAUSIQYxQVFhcQcQFhciVGBidIGR0RMjMjWTobGzwdIUIDZSU6NCQ1WSsPAVJCUmMzREY3Jzg//aAAgBAwEBPwD+GxdakRjHJO1CaQYgvyY0IrYvDbFuN0pZkWMMojYYa7FPHpkpc5S56ld5SlzlLnqXPUh9/wBSlzlLnqXPUuf6lLnKXOUucpPPBY/GvBZTABI0ouixXW3khrbpXHknCcfDwoQbMvmOwKqqPFp1OoFCjPaGvjyxZ9Sg7HWD0OFbjwoj4pOSJEHXKcluCwY4lGn/ANz1uCwZ4lH9M/vW4LBjiUf0z1uCwZ4lG9M/vW4HBniUf0z1uCwZ4lG9M/vW4LBjiUb0z+9bgsGOJRvTP71uCwY4lG9M/vW4LBjiUb0z+9bgsGOJR/TP71uCwZ4lG9M/vW4LBjiUf0z+9bgsGOJR/TPW4PBlrXu+gRzIfjPu9aibH+C4bB8HQ47YjiBfGeceiawvqKFg/WUGiwIk4T4doC8m4yxnkmbrxjGXKsGADhLUIOI0lnxQJkb7prIDtX59qZkfqY9av2uva602UwMmVZHzyArZMJNaVQSb/orveHkmcSwY+01Q3f6lnxQyyz7WQX7UlkuKuWfazobY2m+U3WhifPHIrZM851P0V3vDyTdiKwY+01Q9JZ8UMutadu/EMasvAm9svWgy15JmrX+360XumLMEEa1J1xF5OTNomg54udAAGtHQLtrPtN8putZImorZL851P0V3vDyTdiWDH2mqGfGWfFCV+tZtrIji0qGyK5tqwW6SJql1rVVFd/Wq3gw3DIZ/AFOwnwcBI/piB+8e5NwlwddjrmBLWe5Qawq2PJ9Ep0NxN4IJPqkrccgzeCzPJAjqV6yq5M8oZprI/UVsmec6n6K73h5JuxFYMfaaoeks+KGI611p5LWEgXquqyotTUd1JjxWyAubMWnHQCRNUvZErKI17qE2CIRcWi0yZlLQ/GqXX9bUyYi02IAfuue32OTYsVpJdFe4n7zi72lEuONx7UHOH6R7SoEalwXl8CkODsflO9gKq3DOuKA8MixGPh84E+1yqzDSgU8QoUeMyHSDjJstZ1cI351CMONDDoUQPuxgzb2hSc0kvkWaERwbbb2aLymte1zXOIsHEMoOnQvxNRWyX5zqjorveHkm7EVgwJYT1D0lnxQy611prbbg2eNYYU+n0+uo0GNHcIcKQsgmQHNBxk5QE4QywBrbLw7EMUs55xy/VayJDnEtXHSpCI7hFWTDIeHAszacpljCoWEtb1ePF1lH8GP0bRs6pBVZsi0iJGZBrGjMbCccbbZJH3nAmU9CoVOhUmCyPQiHwiMvcJprH22xHOudiGbqX4morZM851P0V3vDyTdiKwY+01Q9JZ8UMutexRHmHDfEBvAWEFKbS63pMeHdJ1zsoOorFDFoWopMycsvZjQIJsg8JWYlqVn17fDn5d2ZTFmVm/OhDLZPhQwYmefYpPZJzXERE+y5zGx/0hrv6lgBXjKNT2VbHeWsfc2QJmZE3yGrKm23PEVwkDkx9aH6zUVsmec6o6K73h5JuxFYMfaaoZ8ZZ8UMutdaittQ3MyFRtjEPiRojKYC114Fl0zO+XlKsavi1XTI1CpnBjwzlu/43X4/WnRm8EEeOdk68yqPAKLWNEbT40Wy12K53fJb3EL9oMlqd3re4gy84s7H963uYP7Rb2O71vcwf2g3sf3rCrBaLUMJkeG/wkN1zXAEC1lBmTNRIhhwWGNFHhzoldmksGKgOENK8EJthsYS915FrJiIlPMqpwIg1fW9FpsWNasEkXOEzZOlfr7ecASX4morZM851P0V3vDyTOIrBg/3mqGfGWfFNy61kxo3iSc2zEhxITnSGck/yNCrvByra8Ph6SxwpcpAtIaJXm/gkk351Vux/VdHpLo9Nc97RiAdi1zaoINHswYQaKKMQlf3Lwj8zexeEfmb2IxH5m9iER/3W9iptEh1lAfRaZDa6jOuxC0NIJBkdKOx3Vv0glkV/wBFnORdN2oGzLUqqq2i1TBfR6LCAhSN91onS4ATTW2YUENM4rMpvHehLw1sYzIIYomorZL851P0V3vDyTdiKwYuwmqDpLPihl1qVyvV8tC0LHtZLgr57XVchm2pZlLOEwcIa19/UVsmec6n6K73h5JkEtccgWCvDwlqBzbwaUwDXegDZc6V1qXWsgOX6nV9aWXbHqTTJzAc6susxHS4MitkvhVjU7hi+iu94eSZItsacs1gx4vCOoHOPAbSmn2oCDaIgOBebzfO5eM0oiIvGZlKIgIilE0rxilFRESeJSiZl4z+QvG/yFKJmPYpRMyPhBDivMSyGtneFKGQGOjtLnfFbKEIQq1qYM/w/ojr9PhDyTtta102kuySVApDqHGolMJm5kS1LLcoeyZVxhshx6uj25CZYIYv125rfJqbiFL7YfzrfIqbiFL7YfzrfJqfiFL/AC/nW+TU8v8AIUv8v51vk1Nkq+l9sP51vk1NxCl/l/Ot8mpuIUuf/n863yKn4hS+1nzobJNTZavpfbD+db5NT8QpfbD+db5NT3zoFL7YfzrfIqfiFL/L+db5FT5KBS/y/nW+TU9/9n0v8v507ZGqd8OKBQqUABlMO/QOGt8+qDaa2q6QHCHcS2HKf76wjryJX9Mh0pzbLGNsgG4yJnkJH8G7/9k=";var Pr=e=>e!=null,v=(e,t=0,r=3,o=" ",i=".")=>{if(e==null)return null;let a=`\\d(?=(\\d{${r||3}})+${t>0?"\\D":"$"})`,l=e.toFixed(Math.max(0,~~t));return(i?l.replace(".",i):l).replace(new RegExp(a,"g"),`$&${o||","}`)},hs=e=>{switch(e){case po:return"Tillverkare";case mo:return"Modell";case uo:return"Drivmedel";case Ao:return"V\xE4xell\xE5da";case yo:return"Segment";case bo:return"Drivhjul";case ho:return"Milj\xF6klass";case fo:return"F\xE4rg";case Yt:return"Pris";case go:return"Anl\xE4ggning";case Wt:return"Miltal";case Ut:return"Modell\xE5r";case ko:return"Privatleasing";default:return e}},vr={YearMonth:1,DayMonth:2,format:(e,t)=>{let r=new Date(e);switch(t){case vr.YearMonth:return pi(r,"MMMM yyyy",{locale:mi});case vr.DayMonth:return pi(r,"d MMMM yyyy",{locale:mi});default:return pi(r,"yyyy-MM-dd HH:mm",{locale:mi})}}};import{useContext as zu}from"react";import{createContext as Fu}from"react";var wo=Fu({loading:!1,error:!1,response:void 0,documents:void 0,initialFacets:void 0,queryFilter:{searchParams:new URLSearchParams},onFilterUpdate:e=>{},onLoadMore:()=>{},onInitialize:e=>{}});var Gu=()=>zu(wo),ie=Gu;import Cr from"react";import vo from"styled-components";var ys="0.875rem",bs=vo.div`
286
- position: relative;
287
- `,ks=vo.select.attrs(()=>({className:"wayke__theme wayke__font--regular"}))`
288
- position: relative;
289
- -webkit-appearance: none;
290
- -moz-appearance: none;
291
- appearance: none;
292
- -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
293
- text-indent: 0.01px;
294
- border: 0;
295
- padding: 0;
296
- padding-right: calc(${ys} + ${n(1)});
297
- background-color: transparent;
298
- color: ${e=>e.theme.color.textDark};
299
- border-radius: 0;
300
- font-size: 16px;
301
- cursor: pointer;
302
- z-index: 1;
303
-
304
- :focus {
305
- outline: none;
306
- text-decoration: underline;
307
- }
308
-
309
- ::-ms-expand {
310
- display: none;
311
- }
312
-
313
- ::-moz-focus-inner {
314
- border: 0;
315
- }
316
- `,xs=vo.option`
317
- color: ${e=>e.theme.color.textDark};
318
- `,ws=vo.div`
319
- position: absolute;
320
- top: 50%;
321
- right: 0;
322
- transform: translateY(-50%);
323
- font-size: ${ys};
324
- `;import*as J from"react";import ju,{css as Ju}from"styled-components";var Ye=ju.svg.attrs(()=>({xmlns:"http://www.w3.org/2000/svg"}))`
325
- display: inline-block;
326
- vertical-align: middle;
327
- width: 1em;
328
- height: 1em;
329
- fill: currentColor;
330
-
331
- ${({block:e})=>e&&Ju`
332
- display: block;
333
- `}
334
- `,dt=({block:e})=>J.createElement(Ye,{viewBox:"0 0 24 24",block:e},J.createElement("path",{d:"M12 0C5.371 0 0 5.371 0 12s5.371 12 12 12 12-5.371 12-12S18.629 0 12 0zm0 2c5.5234 0 10 4.4766 10 10s-4.4766 10-10 10S2 17.5234 2 12 6.4766 2 12 2zm0 3.8125c-.1836 0-.336-.004-.5.0313-.164.0351-.3164.125-.4375.2187-.121.0938-.211.2227-.2813.375s-.0937.332-.0937.5625c0 .2266.0234.4063.0938.5625.0703.1563.1601.2813.2812.375.121.0938.2734.1484.4375.1875.164.039.3164.0625.5.0625.1797 0 .371-.0234.5313-.0625.1601-.039.2851-.0938.4062-.1875.121-.0938.211-.2188.2813-.375.0703-.1523.125-.336.125-.5625 0-.2305-.0547-.4102-.125-.5625-.0704-.1523-.1602-.2813-.2813-.375-.121-.0938-.246-.1836-.4063-.2188-.1601-.0351-.3515-.0312-.5312-.0312zm-1.2188 3.3438v8.9687h2.4375V9.1562z"})),We=({block:e})=>J.createElement(Ye,{viewBox:"0 0 16 16",block:e},J.createElement("path",{d:"M15.7 14.3c.4.4.4 1 0 1.4-.2.2-.5.3-.7.3s-.5-.1-.7-.3L8 9.4l-6.3 6.3c-.2.2-.4.3-.7.3s-.5-.1-.7-.3c-.4-.4-.4-1 0-1.4L6.6 8 .3 1.7C-.1 1.3-.1.7.3.3c.4-.4 1-.4 1.4 0L8 6.6 14.3.3c.4-.4 1-.4 1.4 0 .4.4.4 1 0 1.4L9.4 8l6.3 6.3z"})),Rt=({block:e})=>J.createElement(Ye,{viewBox:"0 0 18 18",block:e},J.createElement("path",{d:"M17.7 5L9 13.7.3 5l.7-.7 8 8 8-8 .7.7z"})),Po=({block:e})=>J.createElement(Ye,{viewBox:"0 0 18 18",block:e},J.createElement("path",{d:"M13 17.7L4.3 9 13 .3l.7.7-8 8 8 8-.7.7z"})),vs=({block:e})=>J.createElement(Ye,{viewBox:"0 0 18 18",block:e},J.createElement("path",{d:"M5 .3L13.7 9 5 17.7l-.7-.7 8-8-8-8L5 .3z"})),ut=({block:e})=>J.createElement(Ye,{viewBox:"0 0 16 16",block:e},J.createElement("path",{d:"M15.6 4.3l-9.3 9.4c-.5.5-1.4.5-1.9 0l-4-4c-.5-.5-.5-1.4 0-1.9s1.3-.5 1.9 0l3.1 3.1 8.4-8.5c.5-.5 1.4-.5 1.9 0s.4 1.3-.1 1.9z"})),Ps=({block:e})=>J.createElement(Ye,{viewBox:"0 0 16 16",block:e},J.createElement("path",{d:"M13 8c0 2.8-2.2 5-5 5s-5-2.2-5-5 2.2-5 5-5 5 2.2 5 5zm3 0c0 4.4-3.6 8-8 8s-8-3.6-8-8 3.6-8 8-8 8 3.6 8 8zm-1 0c0-3.9-3.1-7-7-7S1 4.1 1 8s3.1 7 7 7 7-3.1 7-7z"})),Cs=({block:e})=>J.createElement(Ye,{viewBox:"0 0 16 16",block:e},J.createElement("path",{d:"M15.5 15.3L11 10.8c1.2-1.1 2-2.7 2-4.5C13 2.9 10.2.1 6.8.1S.5 2.8.5 6.2s2.8 6.2 6.2 6.2c1.3 0 2.5-.4 3.5-1.1l4.6 4.6.7-.6zM1.4 6.2C1.4 3.3 3.8 1 6.7 1S12 3.3 12 6.2c0 1.5-.7 2.9-1.7 3.9l-.7.5c-.8.5-1.8.8-2.8.8-3 .1-5.4-2.3-5.4-5.2z"})),Is=({block:e})=>J.createElement(Ye,{viewBox:"0 0 32 32",block:e},J.createElement("path",{d:"M14.482 21.893c0-0.857 0.694-1.551 1.551-1.551s1.551 0.694 1.551 1.551c0 0.857-0.694 1.551-1.551 1.551s-1.551-0.694-1.551-1.551zM16.033 2.838c-7.271 0-13.187 5.916-13.187 13.187s5.916 13.187 13.187 13.187 13.187-5.916 13.187-13.187c0-7.271-5.916-13.187-13.187-13.187zM16.033 27.203c-6.163 0-11.178-5.015-11.178-11.178s5.015-11.178 11.178-11.178c6.164 0 11.178 5.015 11.178 11.178s-5.014 11.178-11.178 11.178zM16.033 8.308c-0.555 0-1.004 0.45-1.004 1.004v8.227c0 0.555 0.45 1.004 1.004 1.004s1.004-0.45 1.004-1.004v-8.227c0-0.555-0.45-1.004-1.004-1.004z"})),Ss=({block:e})=>J.createElement(Ye,{viewBox:"0 0 32 32",block:e},J.createElement("path",{d:"M15.951 19.663c-0.457 0-0.828-0.37-0.828-0.828v-4.357c0-0.457 0.37-0.828 0.828-0.828s0.828 0.37 0.828 0.828v4.357c0 0.457-0.371 0.828-0.828 0.828zM15.952 22.906c-0.305 0-0.606-0.126-0.821-0.341s-0.338-0.514-0.338-0.818 0.122-0.606 0.338-0.821c0.431-0.43 1.209-0.43 1.639 0 0.215 0.215 0.341 0.516 0.341 0.821s-0.126 0.603-0.341 0.818c-0.215 0.215-0.513 0.341-0.818 0.341zM27.049 27.070h-22.196c-0.352 0-0.677-0.186-0.855-0.489s-0.184-0.677-0.014-0.985l11.098-20.105c0.175-0.317 0.508-0.513 0.87-0.513s0.695 0.197 0.87 0.513l11.098 20.105c0.17 0.308 0.165 0.683-0.014 0.985s-0.504 0.489-0.856 0.489zM6.536 25.083h18.83l-9.415-17.056-9.415 17.056z"}));var Qu=({value:e,options:t,onChange:r,unit:o})=>Cr.createElement(bs,null,Cr.createElement(ks,{value:e,onChange:r,title:"Sortering","aria-label":"Sortering"},t.map(i=>Cr.createElement(xs,{key:i.value,value:i.value},i.displayName||i.value,o?` ${o}`:""))),Cr.createElement(ws,null,Cr.createElement(Rt,{block:!0}))),Es=Qu;var Vt={PublishedAsc:"published-asc",PublishedDesc:"published-desc",PriceAsc:"price-asc",Pricedesc:"price-desc",ModelAsc:"model-asc",Modeldesc:"model-desc"},Ms=e=>{switch(e){case Vt.PublishedAsc:return"Publicerad \xE4ldst";case Vt.PublishedDesc:return"Publicerad senast";case Vt.PriceAsc:return"Pris l\xE4gst";case Vt.Pricedesc:return"Pris h\xF6gst";case Vt.ModelAsc:return"\xC5rsmodell \xE4ldst";case Vt.Modeldesc:return"\xC5rsmodell nyast";default:return e}};var Wu=({children:e})=>{let{loading:t,response:r,documents:o,queryFilter:i,onLoadMore:a,onFilterUpdate:l}=ie(),s=Yu(m=>l(m.currentTarget.value),[]),c=o?.length||0,p=r?.documentList.numberOfHits||0,A=!!i?.concatResult,h=r?.documentList.sortOptions.find(m=>m.selected)?.query,b=r?.documentList.sortOptions.filter(m=>m.displayName!=="relevance").map(m=>({value:m.query,displayName:Ms(m.displayName)}));return t&&!A?ae.createElement(Qe,null):ae.createElement(Ka,null,ae.createElement(Xa,null,ae.createElement(qa,null,ae.createElement(os,null,`${v(p)} ${p===1?"bil":"bilar"}`)),b&&h&&ae.createElement($a,null,ae.createElement(Es,{value:h,options:b,onChange:s}))),ae.createElement(_a,null,e),ae.createElement(es,null,ae.createElement(ts,null,ae.createElement(ls,{unit:"bilar",valueCurrent:c,valueMax:p})),c!==p&&ae.createElement(rs,null,ae.createElement(be,{disabled:t,onClick:a,title:"Visa fler","aria-label":"Visa fler"},ae.createElement(I,null,"Visa fler")))))},Bs=Wu;import et,{useState as NA,useCallback as Il}from"react";import Zt from"styled-components";var Ds=Zt.ul`
335
- display: flex;
336
- align-items: center;
337
- flex-wrap: wrap;
338
- list-style: none;
339
- padding: 0;
340
- margin: ${n(-.5)};
341
- `,Ts=Zt.li`
342
- padding: ${n(.5)};
343
- `,Ls=Zt(C)`
344
- position: relative;
345
- display: flex;
346
- align-items: center;
347
- padding: ${n(1.5)} ${n(3)};
348
- background-color: ${e=>e.theme.color.accentDark};
349
- border-radius: 3px;
350
- font-size: 0.875rem;
351
- line-height: 1;
352
- transform-origin: 50% 50%;
353
- transition: transform 150ms ease;
354
-
355
- :before {
356
- content: '';
357
- position: absolute;
358
- top: 0;
359
- left: 0;
360
- width: 100%;
361
- height: 100%;
362
- background-color: ${e=>e.theme.color.hoverOverlay};
363
- border-radius: 3px;
364
- opacity: 0;
365
- transition: opacity 150ms ease;
366
- }
367
-
368
- :hover {
369
- :before {
370
- opacity: 1;
371
- }
372
- }
373
-
374
- :active {
375
- transform: scale(0.95);
376
- }
377
- `,Os=Zt.div`
378
- z-index: 1;
379
- `,Hs=Zt.div`
380
- flex-shrink: 0;
381
- display: flex;
382
- align-items: center;
383
- justify-content: center;
384
- padding: 0 ${n(.375)};
385
- margin-left: ${n(.5)};
386
- background-color: currentColor;
387
- min-width: 1em;
388
- height: 1em;
389
- border-radius: 999px;
390
- z-index: 1;
391
- `,Ns=Zt.div`
392
- font-family: sans-serif; // Default font to guarantee visibility
393
- font-size: 0.75rem;
394
- font-weight: bold;
395
- color: white;
396
- mix-blend-mode: difference;
397
- `;import se,{useCallback as OA}from"react";import*as ke from"react";import Te from"styled-components";import Kt,{css as Uu}from"styled-components";var Co=Kt.div.attrs(()=>({className:"wayke__theme wayke__font--bold"}))`
398
- margin-top: 0;
399
- margin-bottom: ${n(2)};
400
- font-weight: normal;
401
- line-height: 1.2;
402
-
403
- ${({noMargin:e})=>e&&Uu`
404
- margin-bottom: 0;
405
- `}
406
- `,Ie=Kt(Co).attrs(e=>({as:e.as||"h1"}))`
407
- font-size: 1.875rem;
408
- `,_=Kt(Co).attrs(e=>({as:e.as||"h2"}))`
409
- font-size: 1.5rem;
410
- `,di=Kt(Co).attrs(e=>({as:e.as||"h4"}))`
411
- font-size: 1rem;
412
- `,Fs=Kt(Co).attrs(e=>({as:e.as||"h5"}))`
413
- font-size: 0.875rem;
414
- `,At=Kt.div.attrs(()=>({className:"wayke__theme wayke__font--bold"}))`
415
- font-size: 1em;
416
- `;var zs=Te.div.attrs(()=>({role:"dialog"}))`
417
- position: relative;
418
- z-index: 80;
419
- `,Gs=Te.div.attrs(()=>({"aria-hidden":"true",role:"button"}))`
420
- position: fixed;
421
- top: 0;
422
- bottom: 0;
423
- left: 0;
424
- right: 0;
425
- background-color: rgba(0, 0, 0, 0.35);
426
- animation: ${Qt} 200ms ease;
427
- `,js=Te.article.attrs(()=>({className:"wayke__theme wayke__font--regular"}))`
428
- display: flex;
429
- flex-direction: column;
430
- position: fixed;
431
- top: 0;
432
- bottom: 0;
433
- right: 0;
434
- width: 100%;
435
- background-color: ${e=>e.theme.color.accent};
436
- box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05);
437
- z-index: 1;
438
- animation: ${xr} 200ms ease forwards;
439
-
440
- ${e=>e.theme.breakpoint.Sm} {
441
- max-width: 450px;
442
- transform: translateX(100%);
443
- }
444
-
445
- ${e=>e.theme.breakpoint.LtSm} {
446
- top: auto;
447
- max-height: 100%;
448
- transform: translateY(100%);
449
- }
450
- `,Js=Te.header`
451
- position: relative;
452
- display: flex;
453
- flex-shrink: 0;
454
- align-items: center;
455
- min-height: 45px;
456
- padding: ${n(3)};
457
- padding-bottom: 0;
458
-
459
- :after {
460
- content: '';
461
- position: absolute;
462
- top: 100%;
463
- left: 0;
464
- right: 0;
465
- height: ${n(3)};
466
- background-image: linear-gradient(
467
- ${e=>e.theme.color.accent},
468
- ${e=>e.theme.color.accentTransparent}
469
- );
470
- z-index: 1;
471
- }
472
- `,Qs=Te.div`
473
- flex: 1 1 auto;
474
-
475
- ${Ie} {
476
- font-size: 1.5rem;
477
- }
478
- `,Ys=Te.div`
479
- flex-shrink: 0;
480
- margin: ${n(-2)};
481
- padding-left: ${n(3)};
482
- `,Ws=Te(C)`
483
- position: relative;
484
- display: block;
485
- padding: ${n(2)};
486
- transform-origin: 50% 50%;
487
- transition: transform 200ms ease;
488
- z-index: 2;
489
-
490
- :before {
491
- content: '';
492
- position: absolute;
493
- top: 0;
494
- left: 0;
495
- width: 100%;
496
- height: 100%;
497
- border-radius: 50%;
498
- background-color: ${e=>e.theme.color.accent};
499
- opacity: 0;
500
- transition: opacity 200ms ease;
501
- z-index: -1;
502
- }
503
-
504
- :active {
505
- transform: scale(0.9);
506
- }
507
-
508
- :hover {
509
- :before {
510
- opacity: 1;
511
- }
512
- }
513
- `,Us=Te.div`
514
- flex: 1 1 auto;
515
- overflow: auto;
516
- -webkit-overflow-scrolling: touch;
517
- padding: ${n(3)};
518
- `,Rs=Te.footer`
519
- position: relative;
520
- flex-shrink: 0;
521
- padding: ${n(3)};
522
- border-top: 1px solid ${e=>e.theme.color.border};
523
- `,Vs=Te.div.attrs(()=>({role:"group"}))`
524
- display: flex;
525
- align-items: center;
526
- margin: ${n(-.5)};
527
- `,ui=Te.div`
528
- flex: 1 1 50%;
529
- padding: ${n(.5)};
530
-
531
- ${C} {
532
- padding: ${n(1.75)} ${n(2)};
533
- }
534
- `;var Ue={};Va(Ue,{DefaultPortal:()=>Ru});var Ru="DEFAULT_PORTAL";import*as Zs from"react";var Vu=({id:e})=>Zs.createElement("div",{id:e}),Ir=Vu;import Io from"react";import Zu from"react-dom";var Ku=({id:e,children:t})=>{let r=Io.useRef(document.getElementById(e)||document.createElement("div"));if(!r.current)return null;let{current:o}=r,[i]=Io.useState(!o.parentElement);return Io.useEffect(()=>(i&&(o.id=e,document.body&&document.body.appendChild(o)),()=>{i&&o.parentElement&&o.parentElement.removeChild(o)}),[e]),Zu.createPortal(t,o)},Sr=Io.memo(Ku);var Xu=({id:e,title:t,footer:r,onClose:o,children:i})=>ke.createElement(Sr,{id:e||Ue.DefaultPortal},ke.createElement(zs,null,ke.createElement(Gs,{title:"St\xE4ng panel",onClick:o}),ke.createElement(js,null,ke.createElement(Js,null,ke.createElement(Qs,null,ke.createElement(Ie,{noMargin:!0},t)),ke.createElement(Ys,null,ke.createElement(Ws,{title:"St\xE4ng panel","aria-label":"St\xE4ng panel",onClick:o},ke.createElement(We,{block:!0})))),ke.createElement(Us,null,i),r&&ke.createElement(Rs,null,r)))),Ks=Xu;import Re,{useState as $u,useCallback as _u}from"react";import _e,{css as qu}from"styled-components";var Xs=_e.ul`
535
- list-style: none;
536
- padding: 0;
537
- margin: ${n(-1)} 0;
538
- font-size: 1rem;
539
- `,Ai=_e(C)`
540
- display: flex;
541
- align-items: center;
542
- width: 100%;
543
- padding: ${n(3)} 0;
544
- text-align: left;
545
- font: inherit;
546
- `,qs=_e.div`
547
- display: flex;
548
- align-items: center;
549
- flex: 1 1 auto;
550
- `,$s=_e.div`
551
- line-height: 1;
552
- `,_s=_e.div.attrs(()=>({className:"wayke__theme wayke__color--primary-bg"}))`
553
- flex-shrink: 0;
554
- display: flex;
555
- align-items: center;
556
- justify-content: center;
557
- padding: 0 ${n(.375)};
558
- margin-left: ${n(.5)};
559
- min-width: 1em;
560
- height: 1em;
561
- border-radius: 999px;
562
- z-index: 1;
563
- `,el=_e.div`
564
- font-family: sans-serif; // Default font to guarantee visibility
565
- font-size: 0.75rem;
566
- font-weight: bold;
567
- `,gi=_e.div`
568
- position: relative;
569
- flex-shrink: 0;
570
- padding-left: ${n(1)};
571
- transition: color 150ms ease;
572
-
573
- :before {
574
- content: '';
575
- position: absolute;
576
- top: ${n(-1)};
577
- bottom: ${n(-1)};
578
- left: 0;
579
- right: ${n(-1)};
580
- border-radius: 50%;
581
- background-color: ${e=>e.theme.color.accent};
582
- z-index: -1;
583
- opacity: 0;
584
- transition: opacity 200ms ease;
585
- }
586
-
587
- ${Ai}:hover & {
588
- :before {
589
- opacity: 1;
590
- }
591
- }
592
- `,fi=_e.div`
593
- display: none;
594
- padding-bottom: ${n(3)};
595
- `,tl=_e.li`
596
- & + & {
597
- border-top: 1px solid ${e=>e.theme.color.border};
598
- }
599
-
600
- ${({isOpen:e})=>e&&qu`
601
- ${fi} {
602
- display: block;
603
- }
604
-
605
- ${gi} {
606
- svg {
607
- transform: rotate(180deg);
608
- }
609
- }
610
- `}
611
- `;var rl=({heading:e,children:t,activeCount:r,isActive:o})=>{let[i,a]=$u(o||!1),l=_u(()=>a(!i),[i]);return Re.createElement(tl,{isOpen:i},Re.createElement(Ai,{onClick:l,title:"Visa mer"},Re.createElement(qs,null,Re.createElement($s,{className:r&&r>0?"wayke__theme wayke__font--bold":""},e),r&&r>0&&Re.createElement(_s,null,Re.createElement(el,null,r))),Re.createElement(gi,null,Re.createElement(Rt,{block:!0}))),Re.createElement(fi,null,t))},eA=({children:e})=>Re.createElement(Xs,null,e),ol=eA;import hi from"styled-components";var u=hi.div`
612
- & + & {
613
- margin-top: ${n(3)};
614
- }
615
- `,H=hi.div`
616
- & + & {
617
- margin-top: ${n(1)};
618
- }
619
- `,X=hi.div`
620
- & + & {
621
- margin-top: ${n(2)};
622
- }
623
- `;import $t from"react";import pl,{useState as aA,useEffect as sA,useCallback as lA}from"react";import gt from"react";import Er from"styled-components";var yi=Er.ul.attrs(()=>({className:"wayke__theme wayke__font--regular"}))`
624
- list-style: none;
625
- padding: 0;
626
- margin: ${n(-1)} 0;
627
- font-size: 0.875rem;
628
- overflow: hidden;
629
- `,nl=Er.li`
630
- ${yi} {
631
- padding-left: ${n(5)};
632
- margin: 0;
633
- }
634
- `,bi=Er(C)`
635
- position: relative;
636
- display: block;
637
- width: 100%;
638
- text-align: left;
639
- font: inherit;
640
- padding: ${n(1)} 0;
641
-
642
- :before {
643
- content: '';
644
- position: absolute;
645
- left: 0;
646
- width: ${n(2)};
647
- height: ${n(2)};
648
- border-radius: 3px;
649
- background-color: ${e=>e.theme.color.accentDark};
650
- margin-top: 2px; // Magic number
651
- }
652
- `,il=Er.div.attrs(()=>({className:"wayke__theme wayke__color--primary-text"}))`
653
- position: absolute;
654
- top: ${n(1)};
655
- left: 0;
656
- display: flex;
657
- align-items: center;
658
- justify-content: center;
659
- width: ${n(2)};
660
- height: ${n(2)};
661
- margin-top: 2px; // Magic number
662
- font-size: ${n(1.5)};
663
- `,al=Er.div`
664
- padding-left: ${n(3)};
665
- transition: transform 150ms ease;
666
-
667
- ${bi}:hover & {
668
- transform: translateX(${n(.5)});
669
- }
670
- `;var tA=({label:e,onClick:t,active:r,radio:o})=>gt.createElement(nl,null,gt.createElement(bi,{onClick:t},r&&gt.createElement(il,null,o?gt.createElement(Ps,{block:!0}):gt.createElement(ut,{block:!0})),gt.createElement(al,{className:r?"wayke__theme wayke__font--bold wayke__color--primary-text":""},e))),rA=({items:e,radio:t})=>e?.length?gt.createElement(yi,null,e.map(r=>gt.createElement(tA,{key:r.label,label:r.label,onClick:r.onClick,active:r.active,radio:t}))):null,sl=rA;import nA from"react";import oA from"styled-components";var ll=oA.div`
671
- max-height: 400px;
672
- overflow: auto;
673
- -webkit-overflow-scrolling: touch;
674
- `;var iA=({children:e})=>nA.createElement(ll,null,e),cl=iA;var cA=({facet:e})=>{let{loading:t,error:r,onFilterUpdate:o}=ie(),[i,a]=aA();sA(()=>{a(void 0)},[e,r]);let l=lA(s=>{t||(a({...i,[s.displayName]:!s.selected}),o(s.query))},[t]);return pl.createElement(cl,null,pl.createElement(sl,{items:e.filters.sort((s,c)=>s.displayName.localeCompare(c.displayName)).map(s=>({label:s.displayName,onClick:()=>l(s),active:i?.[s.displayName]!==void 0?i[s.displayName]:s.selected}))}))},ml=cA;import dA,{useState as uA,useEffect as AA,useCallback as gA}from"react";import Xt from"react";import Mr,{css as dl}from"styled-components";var ul=Mr.ul`
675
- display: flex;
676
- flex-wrap: wrap;
677
- list-style: none;
678
- padding: 0;
679
- margin: ${n(-1.5)};
680
- `,Al=Mr.li`
681
- flex: 1 1 auto;
682
- width: 33.333%;
683
- max-width: 33.333%;
684
- padding: ${n(1.5)};
685
- `,ki=Mr(C)`
686
- display: flex;
687
- flex-direction: column;
688
- align-items: center;
689
- width: 100%;
690
- font: inherit;
691
-
692
- &[disabled] {
693
- opacity: 0.4;
694
- cursor: default;
695
- }
696
- `,gl=Mr.div`
697
- position: relative;
698
- width: ${n(3.75)};
699
- height: ${n(3.75)};
700
- border-radius: 50%;
701
- color: ${e=>e.theme.color.border};
702
-
703
- :before {
704
- content: '';
705
- position: absolute;
706
- top: -5px;
707
- bottom: -5px;
708
- left: -5px;
709
- right: -5px;
710
- border: 2px solid;
711
- border-radius: 50%;
712
- display: none;
713
- }
714
-
715
- ${ki}:not([disabled]):hover & {
716
- :before {
717
- display: block;
718
- }
719
- }
720
-
721
- ${({active:e})=>e&&dl`
722
- :before {
723
- display: block;
724
- }
725
- `}
726
-
727
- ${({boxShadow:e})=>e&&dl`
728
- box-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
729
- `}
730
- `,fl=Mr.div`
731
- margin-top: ${n(1.25)};
732
- font-size: 0.875rem;
733
- `;var pA=({label:e,hex:t,onClick:r,active:o,disabled:i,boxShadow:a})=>Xt.createElement(Al,null,Xt.createElement(ki,{onClick:r,disabled:i,title:e,"aria-label":e},Xt.createElement(gl,{style:{backgroundColor:t.length===1?t[0]:"",backgroundImage:t.length>1?`linear-gradient(${t.join()})`:""},active:o,boxShadow:a,className:o?"wayke__theme wayke__color--primary-text":""}),Xt.createElement(fl,{className:o?"wayke__theme wayke__color--primary-text wayke__font--bold":""},e))),mA=({items:e})=>e?Xt.createElement(ul,null,e.map(t=>Xt.createElement(pA,{key:t.label,label:t.label,hex:t.hex,onClick:t.onClick,active:t.active,disabled:t.disabled,boxShadow:t.boxShadow}))):null,hl=mA;var yl=e=>{switch(e){case $n.displayName:return $n.hex;case _n.displayName:return _n.hex;case ei.displayName:return ei.hex;case ti.displayName:return ti.hex;case ri.displayName:return ri.hex;case oi.displayName:return oi.hex;case ni.displayName:return ni.hex;case ii.displayName:return ii.hex;case ai.displayName:return ai.hex;case si.displayName:return si.hex;case li.displayName:return li.hex;case ci.displayName:return ci.hex;default:return"#fff"}};var fA=({facet:e})=>{let{loading:t,error:r,onFilterUpdate:o}=ie(),[i,a]=uA();AA(()=>{a(void 0)},[e,r]);let l=gA(s=>{t||(a({...i,[s.displayName]:!s.selected}),o(s.query))},[t]);return dA.createElement(hl,{items:e.filters.sort((s,c)=>s.displayName.localeCompare(c.displayName)).map(s=>({label:s.displayName,onClick:()=>l(s),active:i?.[s.displayName]!==void 0?i[s.displayName]:s.selected,hex:[yl(s.displayName)]}))})},bl=fA;import wi,{useCallback as EA,useState as MA,useEffect as wl}from"react";import Y,{useState as bA,useCallback as kA,useEffect as xA}from"react";import{Slider as wA,Rail as vA,Handles as PA,Tracks as CA}from"react-compound-slider";import qt from"styled-components";var kl=qt.div`
734
- display: flex;
735
- align-items: center;
736
- margin-top: ${n(1)};
737
- user-select: none;
738
- `,xi=qt.div`
739
- font-size: 0.875rem;
740
- color: ${e=>e.theme.color.textDarkLighten};
741
-
742
- :first-child {
743
- flex: 1 1 auto;
744
- }
745
-
746
- :last-child {
747
- flex-shrink: 0;
748
- }
749
- `,Br=qt.div`
750
- padding: 10px 12px;
751
- `,Dr=qt.div`
752
- position: relative;
753
- height: 4px;
754
-
755
- :before {
756
- content: '';
757
- position: absolute;
758
- top: 0;
759
- bottom: 0;
760
- left: -12px;
761
- right: -12px;
762
- background-color: ${e=>e.theme.color.accentDark};
763
- }
764
- `,So=qt.div.attrs(()=>({className:"wayke__theme wayke__color--primary-bg"}))`
765
- position: absolute;
766
- top: 0;
767
- height: 4px;
768
- margin-left: -12px;
769
- margin-right: -12px;
770
- `,Tr=qt.div.attrs(()=>({role:"slider",className:"wayke__theme wayke__color--primary-bg"}))`
771
- position: absolute;
772
- top: 50%;
773
- transform-origin: 50% 50%;
774
- display: block;
775
- width: 24px;
776
- height: 24px;
777
- margin-top: -12px;
778
- margin-left: -12px;
779
- border-radius: 50%;
780
- cursor: move;
781
- cursor: ew-resize;
782
- cursor: -webkit-grab;
783
- cursor: grab;
784
- transition: transform 150ms ease;
785
-
786
- :before {
787
- content: '';
788
- position: absolute;
789
- top: 0;
790
- bottom: 0;
791
- left: 0;
792
- right: 0;
793
- border-radius: 50%;
794
- box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
795
- opacity: 0;
796
- transition: opacity 150ms ease;
797
- }
798
-
799
- :active {
800
- transform: scale(1.3);
801
-
802
- :before {
803
- opacity: 1;
804
- }
805
- }
806
- `;import hA from"react";var Eo=({domain:[e,t],handle:{id:r,value:o,percent:i},getHandleProps:a})=>hA.createElement(Tr,{role:"slider","aria-valuemin":e,"aria-valuemax":t,"aria-valuenow":o,style:{left:`${i}%`},...a(r)});import yA from"react";var Mo=({source:e,target:t,getTrackProps:r})=>yA.createElement(So,{style:{left:`${e.percent}%`,width:`${t.percent-e.percent}%`},...r()});var IA=e=>{let t=Number.MAX_SAFE_INTEGER;return e.forEach((r,o)=>{if(o!==0){let i=r-e[o-1];i<t&&(t=i)}}),t},SA=({loading:e,values:t,domain:r,steps:o,unit:i,formatValues:a,maxPrefix:l,onChange:s})=>{let[c,p]=bA(t),A=kA(g=>{!isNaN(g[0])&&!isNaN(g[1])&&p(g.slice())},[t]),h=IA(o),b=a?v(c[0]):c[0],m=a?v(c[1]):c[1],k=r[0]===r[1],d=l&&r[1]===c[1]?l:void 0;return xA(()=>{(t[0]!==c[0]||t[1]!==c[1])&&p(t)},[t]),Y.createElement(Y.Fragment,null,k?Y.createElement(Br,null,Y.createElement(Dr,null,Y.createElement(So,{style:{left:"0",width:"100%"}}),Y.createElement(Tr,{role:"slider","aria-disabled":!0,style:{left:"0"}}),Y.createElement(Tr,{role:"slider","aria-disabled":!0,style:{left:"100%"}}))):Y.createElement(Br,null,Y.createElement(wA,{disabled:e,mode:1,step:h,domain:r,onChange:s,onUpdate:A,values:t,rootStyle:{position:"relative"}},Y.createElement(vA,null,({getRailProps:g})=>Y.createElement(Dr,{...g()})),Y.createElement(PA,null,({handles:g,getHandleProps:x})=>Y.createElement("div",{className:"slider-handles"},g.map(L=>Y.createElement(Eo,{key:L.id,handle:L,domain:r,getHandleProps:x})))),Y.createElement(CA,{left:!1,right:!1},({tracks:g,getTrackProps:x})=>Y.createElement("div",{className:"slider-tracks"},g.map(({id:L,source:te,target:re})=>Y.createElement(Mo,{key:L,source:te,target:re,getTrackProps:x})))))),Y.createElement(kl,null,Y.createElement(xi,null,`${b}${i?` ${i}`:""}`),Y.createElement(xi,null,`${m}${d||""}${i?` ${i}`:""}`)))},xl=SA;var vl=(e,t,r)=>{let o=e[0],i=r?.get(`${t.id}.min`)||null,a=e[e.length-1],l=r?.get(`${t.id}.max`)||null,s=parseInt(i===null?`${o}`:i,10),c=o>s?o:s,p=parseInt(l===null?`${a}`:l,10),A=p>a?o:p;return c||A?[c||e[0],A||e[1]]:e},BA=([e,...t])=>e===void 0?NaN:t.reduce(([r,o],i)=>[r+(i-o),i],[0,e])[0]/t.length,DA=e=>{let t=BA(e),r=Math.floor(e[e.length-1]*1e3)/1e3;return t>1e3?new Array(r/1e3+1).fill("").map((o,i)=>i*1e3):t<=1e3&&t>=500?new Array(r/500+1).fill("").map((o,i)=>i*500):e},TA=({facet:e,unit:t,formatValues:r})=>{let{loading:o,queryFilter:i,initialFacets:a,onFilterUpdate:l}=ie(),s=a?.find(b=>b.id===e.id),c=s?.filters[s?.filters.length-1]?.displayName?.includes("+"),[p,A]=MA(void 0);wl(()=>{let b=s?.filters.map(d=>parseInt(d.displayName.replace(/[\<\>+-]+/g,""),10))||[1,2],m=DA(b),k=[m[0],m[m.length-1]];A({id:s?.id,steps:m,domain:[m[0],m[m.length-1]],values:s?.filters.length?vl(k,s,i.searchParams):[0,0]})},[s?.id]),wl(()=>{if(p?.id){let b=s?.filters.length?vl(p.domain,s,i.searchParams):[0,0],m=i.searchParams?.get(`${e.id}.min`),k=i.searchParams?.get(`${e.id}.max`),d=m?parseFloat(m):b[0],g=k?parseFloat(k):b[1];(d!==p.values[0]||g!==p.values[1])&&h([d,g])}},[i.searchParams?.toString()]);let h=EA(b=>{if(p?.id&&(p.values[0]!==b[0]||p.values[1]!==b[1])){A({...p,values:b.slice()});let m=new URLSearchParams(i.searchParams);m.set("hits","30"),m.delete(`${e.id}.min`),m.delete(`${e.id}.max`),b[0]!==p.domain[0]&&m.set(`${e.id}.min`,`${b[0]}`),b[1]!==p.domain[1]&&m.set(`${e.id}.max`,`${b[1]}`),m.sort(),l(m.toString())}},[i.searchParams,p]);return wi.createElement(wi.Fragment,null,p&&wi.createElement(xl,{loading:o,domain:p.domain,values:p.values,maxPrefix:c?"+":void 0,steps:p.steps,unit:t,onChange:h,formatValues:r}))},Lr=TA;var LA=({facet:e})=>{switch(e.id){case po:case mo:case uo:case Ao:case go:case ho:case yo:case bo:return $t.createElement(ml,{facet:e});case fo:return $t.createElement(bl,{facet:e});case Yt:return $t.createElement(Lr,{facet:e,unit:"kr",formatValues:!0});case ko:return $t.createElement(Lr,{facet:e,unit:"kr/m\xE5n",formatValues:!0});case Wt:return $t.createElement(Lr,{facet:e,unit:"mil",formatValues:!0});case Ut:return $t.createElement(Lr,{facet:e,unit:"\xE5r"});default:return null}},Pl=LA;var HA=({facet:e,filteredFacets:t,numberOfHits:r,loading:o,onFilterUpdate:i,onClose:a})=>{let l=OA(()=>i(""),[]);return se.createElement(Ks,{title:"Filtrera",onClose:a,footer:se.createElement(se.Fragment,null,se.createElement(Vs,null,se.createElement(ui,null,se.createElement(be,{fullWidth:!0,disabled:o,onClick:l},se.createElement(I,null,"Rensa alla"))),se.createElement(ui,null,se.createElement(Je,{fullWidth:!0,disabled:o,onClick:a},se.createElement(I,null,`Visa ${r} ${r===1?"bil":"bilar"}`)))))},se.createElement(ol,null,t.filter(s=>s.filters.length).map(s=>se.createElement(rl,{key:s.displayName,heading:s.displayName,isActive:s.id===e?.id},se.createElement(u,null,se.createElement(Pl,{facet:s}))))))},Cl=HA;var FA=(e,t)=>{switch(e.id){case Yt:case Wt:case Ut:return t.has(`${e.id}.min`)||t.has(`${e.id}.max`)?1:0;default:return e.filters.filter(r=>r.selected).length}},zA=({filterList:e})=>{let{queryFilter:t,initialFacets:r,loading:o,response:i,onFilterUpdate:a}=ie(),l=i?.facets,[s,c]=NA(),p=Il(m=>c(m),[]),A=Il(()=>c(void 0),[]);if(!l)return null;let h=e?e.map(m=>m.filterName):void 0,b=l?.filter(m=>m.id!=="segment")?.filter(m=>h?h.includes(m.id):!0).sort((m,k)=>h?h.indexOf(m.id)-h.indexOf(k.id):0).map(m=>{let k=e?.find(d=>d.filterName===m.id);return k?.displayName?{...m,displayName:k.displayName}:{...m,displayName:hs(m.id)}});return et.createElement(et.Fragment,null,r&&s&&et.createElement(Cl,{filterList:e,facet:s,loading:o,filteredFacets:b,numberOfHits:i?.documentList.numberOfHits||0,onFilterUpdate:a,onClose:A}),et.createElement(Ds,null,b.filter(m=>m.filters.length).map(m=>{let k=FA(m,t.searchParams);return et.createElement(Ts,{key:m.id},et.createElement(Ls,{onClick:()=>p(m),title:m.displayName,"aria-label":m.displayName,className:k>0?"wayke__theme wayke__color--primary-bg wayke__font--bold":"wayke__theme wayke__font--regular"},et.createElement(Os,null,m.displayName),k>0&&et.createElement(Hs,null,et.createElement(Ns,null,k))))})))},Sl=zA;import Lo from"react";import vi from"styled-components";var El=vi.div``,Ml=vi.ul`
807
- display: flex;
808
- flex-wrap: wrap;
809
- list-style: none;
810
- padding: 0;
811
- margin: ${n(-2)} ${n(-1)};
812
- `,Bl=vi.li`
813
- flex: 1 1 auto;
814
- width: 100%;
815
- max-width: 100%;
816
- padding: ${n(2)} ${n(1)};
817
-
818
- ${e=>e.theme.breakpoint.Sm} {
819
- width: 50%;
820
- max-width: 50%;
821
- }
822
-
823
- ${e=>e.theme.breakpoint.Md} {
824
- width: 33.333%;
825
- max-width: 33.333%;
826
- }
827
- `;import F,{useCallback as UA,useMemo as RA}from"react";import VA from"react-lazyload";import q from"styled-components";var Pi=q.article`
828
- position: relative;
829
- height: 100%;
830
- display: flex;
831
- flex-direction: column;
832
- transform-origin: 50% 50%;
833
- transition: transform 150ms ease;
834
-
835
- :active {
836
- transform: scale(0.98);
837
- }
838
- `,Dl=q.div`
839
- flex-shrink: 0;
840
- position: relative;
841
- height: 0;
842
- padding-bottom: 66.666%;
843
- background-color: ${e=>e.theme.color.accentDark};
844
- border-radius: 3px;
845
-
846
- :before {
847
- content: '';
848
- position: absolute;
849
- top: 0;
850
- left: 0;
851
- width: 100%;
852
- height: 100%;
853
- box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
854
- border-radius: 3px;
855
- opacity: 0;
856
- transition: opacity 200ms ease;
857
- }
858
-
859
- ${Pi}:hover & {
860
- :before {
861
- opacity: 1;
862
- }
863
- }
864
- `,Ci=q.picture``,Tl=q.source``,Ii=q.img`
865
- position: absolute;
866
- width: 100%;
867
- height: 100%;
868
- object-fit: cover;
869
- top: auto;
870
- left: auto;
871
- border-radius: 3px;
872
- `,Ll=q.div`
873
- flex: 1 1 auto;
874
- display: flex;
875
- flex-direction: column;
876
- margin-top: ${n(2)};
877
- `,Ol=q.div``,Hl=q.div`
878
- margin-top: auto;
879
- padding-top: ${n(1)};
880
- `,Nl=q.h1.attrs(()=>({className:"wayke__theme wayke__font--bold"}))`
881
- display: -webkit-box;
882
- -webkit-line-clamp: 2;
883
- -webkit-box-orient: vertical;
884
- overflow: hidden;
885
- font-weight: 400;
886
- margin: 0;
887
- font-size: 1rem;
888
- `,Fl=q.a`
889
- display: block;
890
- color: inherit;
891
- text-decoration: none;
892
- -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
893
-
894
- :before {
895
- content: '';
896
- position: absolute;
897
- top: 0;
898
- left: 0;
899
- width: 100%;
900
- height: 100%;
901
- }
902
-
903
- :focus {
904
- text-decoration: underline;
905
- }
906
- `,zl=q.div`
907
- font-size: 0.875rem;
908
- display: -webkit-box;
909
- -webkit-line-clamp: 3;
910
- -webkit-box-orient: vertical;
911
- overflow: hidden;
912
- margin-top: ${n(.25)};
913
- `,Gl=q.div`
914
- margin-top: ${n(1)};
915
- `,jl=q.div`
916
- display: flex;
917
- align-items: center;
918
- flex-wrap: wrap;
919
- width: 100%;
920
- `,Si=q.div.attrs(()=>({className:"wayke__theme wayke__color--primary-text wayke__font--bold"}))`
921
- font-size: 1rem;
922
- margin-right: ${n(1)};
923
- `,Ei=q.div`
924
- flex: 1 1 auto;
925
- padding-right: ${n(1)};
926
- `,Jl=q.div`
927
- text-decoration: line-through;
928
- color: ${e=>e.theme.color.textDarkLighten};
929
- font-size: 0.875rem;
930
- `,Mi=q.label`
931
- color: ${e=>e.theme.color.disabledText};
932
- font-size: 0.875rem;
933
- `;import ft from"react";import Or,{css as GA}from"styled-components";var Bi=Or.li`
934
- padding: ${n(.5)};
935
- `,Di=Or.div`
936
- display: flex;
937
- align-items: center;
938
- background-color: ${e=>e.theme.color.accentDark};
939
- padding: ${n(1)} ${n(1.5)};
940
- border-radius: 3px;
941
- font-size: 0.875rem;
942
- overflow-wrap: break-word;
943
- hyphens: auto;
944
- `,Bo=Or.div`
945
- & + & {
946
- margin-left: ${n(1)};
947
- }
948
- `,Ql=Or(C).attrs(()=>({className:"wayke__theme wayke__color--primary-text"}))`
949
- position: relative;
950
- display: block;
951
- transform-origin: 50% 50%;
952
- transition: transform 300ms cubic-bezier(0.47, 1.64, 0.41, 0.8);
953
-
954
- :before {
955
- content: '';
956
- position: absolute;
957
- top: ${n(-.5)};
958
- bottom: ${n(-.5)};
959
- left: ${n(-.5)};
960
- right: ${n(-.5)};
961
- background-color: ${e=>e.theme.color.accent};
962
- border-radius: 50%;
963
- opacity: 0;
964
- transition: opacity 200ms ease;
965
- }
966
-
967
- > * {
968
- position: relative;
969
- z-index: 1;
970
- }
971
-
972
- :hover {
973
- :before {
974
- opacity: 1;
975
- }
976
- }
977
-
978
- :active {
979
- transform: scale(0.95);
980
- }
981
- `,Yl=Or.ul`
982
- display: flex;
983
- align-items: center;
984
- flex-wrap: wrap;
985
- list-style: none;
986
- padding: 0;
987
- margin: ${n(-.5)};
988
-
989
- ${({isSmall:e})=>e&&GA`
990
- margin: ${n(-.25)};
991
-
992
- ${Bi} {
993
- padding: ${n(.25)};
994
- }
995
-
996
- ${Di} {
997
- padding: ${n(.5)} ${n(1)};
998
- font-size: 0.75rem;
999
- }
1000
-
1001
- ${Bo} {
1002
- & + & {
1003
- margin-left: ${n(.5)};
1004
- }
1005
- }
1006
- `}
1007
- `;var jA=({title:e,onClick:t})=>ft.createElement(Bi,null,ft.createElement(Di,null,ft.createElement(Bo,null,e),t&&ft.createElement(Bo,null,ft.createElement(Ql,{onClick:t},ft.createElement(dt,{block:!0}))))),JA=({items:e,small:t})=>e?ft.createElement(Yl,{isSmall:t},e.map((r,o)=>ft.createElement(jA,{key:`${r.title}-${o}`,title:r.title,onClick:r.onClick}))):null,Hr=JA;import{useContext as YA}from"react";import{createContext as QA}from"react";var Do=QA(void 0);var WA=()=>{let e=YA(Do);if(!e)throw new Error("usePath must be used within a PathProvider");return e},_t=WA;var ZA=({id:e,title:t,href:r,image:o,pathRoute:i,placeholderImage:a,description:l,uspList:s,price:c,oldPrice:p,leasingPrice:A,onClick:h})=>{let{pushState:b}=_t(),m=RA(()=>h?()=>h(e):void 0,[e]),k=UA(d=>{!!i&&r&&(d.preventDefault(),b(r))},[e,i,r]);return F.createElement(Pi,{onClick:m},F.createElement(Dl,null,F.createElement(VA,null,o?F.createElement(F.Fragment,null,F.createElement(Ci,null,F.createElement(Tl,{type:"image/webp",srcSet:`${o}?spec=822x548&format=webp 822w, ${o}?spec=750x500&format=webp 750w, ${o}?spec=411x274&format=webp 411w`,sizes:"(min-width: 600px) calc(((100vw - 48px) / 2) - 8px), (min-width: 900px) calc(((100vw - 48px) / 3) - 10.666px), (min-width: 1312px) 410px, calc(100vw - 32px)"}),F.createElement(Ii,{srcSet:`${o}?spec=822x548 822w, ${o}?spec=750x500 750w, ${o}?spec=411x274 411w`,sizes:"(min-width: 600px) calc(((100vw - 48px) / 2) - 8px), (min-width: 900px) calc(((100vw - 48px) / 3) - 10.666px), (min-width: 1312px) 410px, calc(100vw - 32px)",src:`${o}?spec=411x274`,alt:t}))):F.createElement(Ci,null,F.createElement(Ii,{src:a||xo})))),F.createElement(Ll,null,F.createElement(Ol,null,F.createElement(Nl,null,r?F.createElement(Fl,{onClick:k,href:r,title:t,"aria-label":t},t):t),l&&F.createElement(zl,null,l),s&&F.createElement(Gl,null,F.createElement(Hr,{small:!0,items:s}))),F.createElement(Hl,null,F.createElement(jl,null,F.createElement(Ei,null,p?F.createElement(Jl,null,p):F.createElement(Mi,null,"Pris"),F.createElement(Si,null,c)),A&&F.createElement(Ei,null,F.createElement(Mi,null,"Leasingpris"),F.createElement(Si,null,A))))))},To=ZA;var KA=e=>{let t=e.featuredImage?.files?.[0]?.url;if(t)return`${t}?w=567&q=72`},XA=({documents:e,placeholderImage:t,hashRoute:r,pathRoute:o,onClickItem:i})=>e?Lo.createElement(El,null,Lo.createElement(Ml,null,e.map(a=>{let l=o?.replace(/^\/|\/$/g,""),s=l?`/${l}/`:"/",c=window.location.pathname==="/"?`${s}${a._id}`:`${window.location.pathname}${s}${a._id}`;return Lo.createElement(Bl,{key:a._id},Lo.createElement(To,{id:a._id,onClick:i,title:a.title,pathRoute:o,href:o?c:r?`#${a._id}`:void 0,image:KA(a),placeholderImage:t,description:a.shortDescription,uspList:[{title:a.modelYear},{title:`${v(a.mileage)} mil`},{title:a.gearboxType},{title:a.fuelType}],price:`${v(a.price)} kr`,leasingPrice:a.leasingPrice!==void 0?`${v(a.leasingPrice)} kr`:void 0,oldPrice:a.oldPrice!==void 0&&a.price<a.oldPrice?`${v(a.oldPrice)} kr`:void 0}))}))):null,Wl=XA;import Oo from"react";import Ti from"styled-components";var Ul=Ti.div`
1008
- display: flex;
1009
- align-items: center;
1010
- `,Rl=Ti.div.attrs(()=>({className:"wayke__theme wayke__font--bold"}))`
1011
- font-size: 2.25rem;
1012
- min-width: 0;
1013
- overflow-wrap: break-word;
1014
- hyphens: auto;
1015
-
1016
- :before,
1017
- :after {
1018
- content: '"';
1019
- }
1020
- `,Vl=Ti(C)`
1021
- position: relative;
1022
- display: flex;
1023
- align-items: center;
1024
- justify-content: center;
1025
- width: ${n(2)};
1026
- height: ${n(2)};
1027
- border-radius: 50%;
1028
- background-color: ${e=>e.theme.color.accentDark};
1029
- margin-left: ${n(1)};
1030
- font-size: ${n(1)};
1031
- transform-origin: 50% 50%;
1032
- transition: transform 150ms ease;
1033
-
1034
- :before {
1035
- content: '';
1036
- position: absolute;
1037
- top: ${n(-1)};
1038
- bottom: ${n(-1)};
1039
- left: ${n(-1)};
1040
- right: ${n(-1)};
1041
- border-radius: 50%;
1042
- }
1043
-
1044
- :after {
1045
- content: '';
1046
- position: absolute;
1047
- top: 0;
1048
- left: 0;
1049
- width: 100%;
1050
- height: 100%;
1051
- background-color: ${e=>e.theme.color.hoverOverlay};
1052
- border-radius: 50%;
1053
- opacity: 0;
1054
- transition: opacity 150ms ease;
1055
- }
1056
-
1057
- :hover {
1058
- :after {
1059
- opacity: 1;
1060
- }
1061
- }
1062
-
1063
- :active {
1064
- transform: scale(0.95);
1065
- }
1066
- `;var qA=({children:e,onClear:t,clearTitle:r})=>Oo.createElement(Ul,null,Oo.createElement(Rl,null,e),t&&Oo.createElement(Vl,{onClick:t,title:r||"Rensa fritext"},Oo.createElement(We,{block:!0}))),Zl=qA;import og,{useCallback as ng,useState as ig}from"react";import eg,{useCallback as Li,useRef as tg}from"react";import ht from"react";import er from"styled-components";var Kl=er.div.attrs(()=>({role:"search"}))`
1067
- display: flex;
1068
- align-items: stretch;
1069
- border-radius: 3px;
1070
- `,Xl=er.label`
1071
- position: absolute;
1072
- width: 1px;
1073
- height: 1px;
1074
- padding: 0;
1075
- margin: -1px;
1076
- overflow: hidden;
1077
- clip: rect(0, 0, 0, 0);
1078
- white-space: nowrap;
1079
- border: 0;
1080
- `,ql=er.div`
1081
- flex: 1 1 auto;
1082
- position: relative;
1083
- display: flex;
1084
- align-items: stretch;
1085
- background-color: ${e=>e.theme.color.accentDark};
1086
- border-top-left-radius: 3px;
1087
- border-bottom-left-radius: 3px;
1088
- `,$l=er.div`
1089
- flex-shrink: 0;
1090
- `,_l=er(C).attrs(()=>({className:"wayke__theme wayke__color--primary-bg"}))`
1091
- display: flex;
1092
- align-items: center;
1093
- justify-content: center;
1094
- width: ${e=>e.theme.distances.inputHeight};
1095
- height: ${e=>e.theme.distances.inputHeight};
1096
- border-top-right-radius: 3px;
1097
- border-bottom-right-radius: 3px;
1098
- font-size: 1rem;
1099
- `,ec=er.input.attrs(()=>({type:"search",className:"wayke__theme wayke__font--regular"}))`
1100
- flex: 1 1 auto;
1101
- display: block;
1102
- width: 100%;
1103
- height: ${e=>e.theme.distances.inputHeight};
1104
- padding: 0 ${n(2)};
1105
- background-color: transparent;
1106
- font-size: 16px;
1107
- border: none;
1108
- border-radius: 0;
1109
- box-shadow: none;
1110
- -moz-appearance: none;
1111
- -webkit-appearance: none;
1112
-
1113
- :focus {
1114
- outline: none;
1115
- }
1116
-
1117
- &::-webkit-input-placeholder {
1118
- font-family: inherit;
1119
- color: ${e=>e.theme.color.textDarkLighten};
1120
- font-size: 1em;
1121
- }
1122
-
1123
- &:-moz-placeholder {
1124
- font-family: inherit;
1125
- color: ${e=>e.theme.color.textDarkLighten};
1126
- font-size: 1em;
1127
- }
1128
-
1129
- &::-moz-placeholder {
1130
- font-family: inherit;
1131
- color: ${e=>e.theme.color.textDarkLighten};
1132
- font-size: 1em;
1133
- }
1134
-
1135
- &:-ms-input-placeholder {
1136
- font-family: inherit;
1137
- color: ${e=>e.theme.color.textDarkLighten};
1138
- font-size: 1em;
1139
- }
1140
- `;var tc=ht.forwardRef(({placeholder:e,label:t,value:r,id:o,onSearch:i,onChange:a,onKeyDown:l},s)=>ht.createElement(Kl,{ref:s},ht.createElement(Xl,{htmlFor:o},t),ht.createElement(ql,null,ht.createElement(ec,{placeholder:e,name:"search",value:r,id:o,onChange:a,onKeyDown:l})),ht.createElement($l,null,ht.createElement(_l,{onClick:i,title:`Genomf\xF6r ${t}`,"aria-label":`Genomf\xF6r ${t}`},ht.createElement(Cs,{block:!0})))));tc.displayName="InputSearch";var rc=tc;import{useEffect as $A}from"react";var _A=(e,t)=>{let r=o=>{e.current&&o.target&&!e.current.contains(o.target)&&t()};$A(()=>(document.addEventListener("click",r),()=>{document.removeEventListener("click",r)}))},oc=_A;var rg=({value:e,setValue:t,onSearch:r})=>{let o=tg(null),i=Li(s=>t(s.currentTarget.value),[]);oc(o,()=>t(""));let a=Li(()=>{r(e)},[e]),l=Li(s=>{s.keyCode===13&&a()},[e,a]);return eg.createElement(rc,{ref:o,value:e,onChange:i,onKeyDown:l,onSearch:a,placeholder:"S\xF6k",label:"S\xF6k",id:"main-search"})},Oi=rg;var ag=()=>{let[e,t]=ig(""),{queryFilter:r,onFilterUpdate:o}=ie(),i=ng(a=>{let l=new URLSearchParams(r.searchParams);a!==l.get("query")&&(a?l.set("query",a):l.delete("qquery"),o(l.toString()),t(""))},[r]);return og.createElement(Oi,{value:e,setValue:t,onSearch:i})},nc=ag;import tt from"react";import Nr from"styled-components";var sg=e=>{let t=ne.color.accent;return e==="error"?t=ne.color.ui.negativeLight:e==="warning"?t=ne.color.ui.neutralLight:e==="info"?t=ne.color.ui.infoLight:e==="success"&&(t=ne.color.ui.positiveLight),t},ic=Nr.div.attrs(()=>({role:"alert"}))`
1141
- display: flex;
1142
- align-items: center;
1143
- padding: ${n(1.5)} ${n(2)};
1144
- background-color: ${e=>sg(e.severity)};
1145
- color: ${e=>e.theme.color.textDark};
1146
- border-radius: 3px;
1147
- `,ac=Nr.div`
1148
- flex-shrink: 0;
1149
- padding-right: ${n(2)};
1150
- font-size: ${n(3)};
1151
-
1152
- > svg {
1153
- display: block;
1154
- }
1155
- `,sc=Nr.div`
1156
- flex: 1 1 auto;
1157
- font-size: 1rem;
1158
- `,lc=Nr.div`
1159
- font-weight: 700;
1160
- `,cc=Nr.div`
1161
- > * {
1162
- &:first-child {
1163
- margin-top: 0;
1164
- }
1165
-
1166
- &:last-child {
1167
- margin-bottom: 0;
1168
- }
1169
- }
1170
- `;var lg=({severity:e,icon:t,heading:r,children:o})=>{let i=tt.createElement(dt,{block:!0});return e==="error"?i=tt.createElement(Is,{block:!0}):e==="warning"?i=tt.createElement(Ss,{block:!0}):e==="success"&&(i=tt.createElement(ut,{block:!0})),tt.createElement(ic,{severity:e},t&&tt.createElement(ac,null,i),tt.createElement(sc,null,r&&tt.createElement(lc,null,r),tt.createElement(cc,null,o)))},Fr=lg;var W=class{},Le=W;Le.events={HashRouteChange:[],ItemClicked:[],EcomOnUserEvent:[],ImagesClick:[],OptionsClick:[],PhonenumberVisible:[],PhonenumberCall:[],MailVisible:[],InsuranceInterest:[],FinanceInterest:[],All:[]},Le.actions={onFilterUpdate:[],All:[]},Le.subscribeAction=t=>W.actions[t.actionName].push(t),Le.unsubscribeAction=t=>{if(W.actions[t.actionName]){for(let r=0;r<W.actions[t.actionName].length;r++)if(W.actions[t.actionName][r]===t){W.actions[t.actionName].splice(r,1);break}}},Le.publishAction=(t,...r)=>{W.actions.All&&W.events.All.forEach(o=>o.callback(t,r)),W.actions[t]&&W.actions[t].forEach(o=>{switch(t){case"onFilterUpdate":o.callback(r[0]);break;default:break}})},Le.subscribe=t=>W.events[t.eventName].push(t),Le.unsubscribe=t=>{if(W.events[t.eventName]){for(let r=0;r<W.events[t.eventName].length;r++)if(W.events[t.eventName][r]===t){W.events[t.eventName].splice(r,1);break}}},Le.publish=(t,...r)=>{W.events.All&&W.events.All.forEach(o=>o.callback(t,r)),W.events[t]&&W.events[t].forEach(o=>{switch(t){case"HashRouteChange":o.callback(r[0]);break;case"ItemClicked":o.callback(r[0]);break;case"EcomOnUserEvent":o.callback(r[0],r[1]);break;case"ImagesClick":case"OptionsClick":case"PhonenumberVisible":case"PhonenumberCall":case"MailVisible":case"InsuranceInterest":case"FinanceInterest":o.callback();break;default:break}})};var N=Le;var mg=({filterList:e,initialQueryParams:t,hashRoute:r,pathRoute:o,removeSearchBar:i,placeholderImage:a,removeFilterOptions:l,modifyDocumentTitleSearch:s,onClickSearchItem:c})=>{let{error:p,documents:A,queryFilter:h,onFilterUpdate:b,onInitialize:m}=ie();cg(()=>{s&&(document.title=s),m(typeof t=="string"?new URLSearchParams(t):t)},[]);let k=pc(x=>{N.publish("ItemClicked",x),c&&c(x)},[]),d=pc(()=>{let x=new URLSearchParams(h.searchParams);x.delete("query"),b(x.toString())},[h.searchParams]),g=pg(()=>h.searchParams.get("query"),[A]);return Q.createElement(Q.Fragment,null,Q.createElement(pt,null,!i&&Q.createElement(ye,null,Q.createElement(he,null,Q.createElement(nc,null))),g&&Q.createElement(ye,null,Q.createElement(he,null,Q.createElement(Zl,{onClear:d},g))),!l&&Q.createElement(ye,null,Q.createElement(he,null,Q.createElement(Sl,{filterList:e}))),Q.createElement(ye,{accent:!0,fillSpace:!0,className:"wayke__theme wayke__color--accent-bg"},Q.createElement(he,null,Q.createElement(Bs,null,Q.createElement(Q.Fragment,null,p&&Q.createElement(Fr,{severity:"error",icon:!0,heading:"Ett fel har intr\xE4ffat"},"V\xE4nligen f\xF6rs\xF6k igen."),!p&&A&&A.length>0&&Q.createElement(Wl,{hashRoute:r,pathRoute:o,onClickItem:k,documents:A,placeholderImage:a}),!p&&A&&A.length===0&&Q.createElement(Fr,{severity:"warning",icon:!0,heading:"Inga resultat"},"Det finns inga resultat som matchar din s\xF6kning.")))))),Q.createElement(Ir,{id:Ue.DefaultPortal}))},Hi=mg;import f,{useMemo as fb,useRef as hb,useCallback as yb,useEffect as ba}from"react";import bb from"@wayke-se/ecom-web";import Ve from"react";import Ho from"styled-components";var mc=Ho.ul`
1171
- list-style: none;
1172
- padding: 0;
1173
- margin: 0;
1174
- `,Ni=Ho.li`
1175
- display: flex;
1176
- align-items: flex-end;
1177
- line-height: 1;
1178
-
1179
- & + & {
1180
- margin-top: ${n(.5)};
1181
- }
1182
- `,Fi=Ho.div`
1183
- flex: 1 1 auto;
1184
- `,zi=Ho.div`
1185
- flex-shrink: 0;
1186
- `;import dc from"styled-components";var uc=dc.div.attrs(()=>({className:"wayke__theme wayke__color--primary-text wayke__font--bold"}))`
1187
- font-size: 1.375rem;
1188
- `,Ac=dc.div`
1189
- color: ${e=>e.theme.color.textDarkLighten};
1190
- text-decoration: line-through;
1191
- `;var dg=({price:e,oldPrice:t})=>Ve.createElement(mc,null,Ve.createElement(Ni,null,Ve.createElement(Fi,null,Ve.createElement(At,null,"Pris")),Ve.createElement(zi,null,Ve.createElement(uc,null,v(e)," kr"))),t!==void 0&&Ve.createElement(Ni,null,Ve.createElement(Fi,null),Ve.createElement(zi,null,Ve.createElement(Ac,null,v(t)," kr")))),gc=dg;import*as hc from"react";import ug,{css as Ag}from"styled-components";var fc=ug.img`
1192
- display: block;
1193
- max-width: ${n(9.5)};
1194
- max-height: ${n(6)};
1195
-
1196
- ${({wide:e})=>e&&Ag`
1197
- max-width: ${n(20)};
1198
- `}
1199
- `;var gg=({logo:e,logo2x:t,alt:r,wide:o})=>{let i=e;return t&&(i=`${t} 2x`),hc.createElement(fc,{src:e,srcSet:i,alt:r,wide:o})},le=gg;import yg from"react";import fg,{css as hg}from"styled-components";var yc=fg.div`
1200
- font-size: 1rem;
1201
- line-height: 1.5;
1202
-
1203
- h1,
1204
- h2,
1205
- h3,
1206
- h4,
1207
- h5,
1208
- h6 {
1209
- margin-top: ${n(4)};
1210
- margin-bottom: ${n(1)};
1211
-
1212
- :first-child {
1213
- margin-top: 0;
1214
- }
1215
-
1216
- :last-child {
1217
- margin-bottom: 0;
1218
- }
1219
-
1220
- & + p,
1221
- & + table {
1222
- margin-top: ${n(1)};
1223
- }
1224
- }
1225
-
1226
- p {
1227
- margin: ${n(2)} 0;
1228
-
1229
- :first-child {
1230
- margin-top: 0;
1231
- }
1232
-
1233
- :last-child {
1234
- margin-bottom: 0;
1235
- }
1236
- }
1237
-
1238
- img {
1239
- display: block;
1240
- width: 100%;
1241
- }
1242
-
1243
- ${({small:e})=>e&&hg`
1244
- font-size: 0.875rem;
1245
- `}
1246
- `;var bg=({children:e,small:t,dangerouslySetInnerHTML:r})=>yg.createElement(yc,{small:t,dangerouslySetInnerHTML:r},e),M=bg;import yt from"react";import Ct from"styled-components";var bc=Ct.blockquote`
1247
- display: flex;
1248
- flex-direction: column;
1249
- max-width: 600px;
1250
- margin: 0 auto;
1251
-
1252
- ${e=>e.theme.breakpoint.Sm} {
1253
- align-items: center;
1254
- }
1255
- `,kc=Ct.div`
1256
- > * {
1257
- :first-child {
1258
- margin-top: 0;
1259
- }
1260
-
1261
- :last-child {
1262
- margin-bottom: 0;
1263
- }
1264
- }
1265
- `,xc=Ct.footer`
1266
- display: inline-flex;
1267
- align-items: center;
1268
- margin-top: ${n(3)};
1269
-
1270
- ${e=>e.theme.breakpoint.Md} {
1271
- margin-top: ${n(4)};
1272
- }
1273
- `,wc=Ct.div`
1274
- flex-shrink: 0;
1275
- padding-right: ${n(1.5)};
1276
- `,vc=Ct.div`
1277
- flex: 1 1 auto;
1278
- font-size: 0.875rem;
1279
- `,Pc=Ct.div.attrs(()=>({className:"wayke__theme wayke__font--bold"}))``,Cc=Ct.div``;import xg from"react";import kg from"styled-components";var Ic=kg.div.attrs(()=>({role:"image"}))`
1280
- display: block;
1281
- width: ${n(5)};
1282
- height: ${n(5)};
1283
- border-radius: 50%;
1284
- background-image: ${e=>`url(${e.image})`};
1285
- background-size: cover;
1286
- background-position: center;
1287
- background-repeat: no-repeat;
1288
- background-color: ${e=>e.theme.color.accent};
1289
- `;var wg=({image:e,alt:t})=>xg.createElement(Ic,{image:e,"aria-label":t}),Sc=wg;var vg=({children:e,author:t,avatar:r,date:o})=>yt.createElement(bc,null,yt.createElement(kc,null,e),t&&yt.createElement(xc,null,r&&yt.createElement(wc,null,yt.createElement(Sc,{image:r,alt:`${t} avatar`})),yt.createElement(vc,null,yt.createElement(Pc,null,t),o&&yt.createElement(Cc,null,o)))),Ec=vg;import zr,{useState as Cg,useCallback as Ig}from"react";import Gi,{css as Pg}from"styled-components";var Mc=Gi.div``,Bc=Gi.div`
1290
- position: relative;
1291
- max-height: 175px;
1292
- overflow: hidden;
1293
-
1294
- :after {
1295
- content: '';
1296
- position: absolute;
1297
- bottom: 0;
1298
- left: 0;
1299
- right: 0;
1300
- height: ${n(6)};
1301
- background-image: linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 1));
1302
- }
1303
-
1304
- ${({extended:e})=>e&&Pg`
1305
- max-height: none;
1306
-
1307
- :after {
1308
- content: none;
1309
- }
1310
- `}
1311
- `,Dc=Gi.div`
1312
- display: flex;
1313
- justify-content: flex-end;
1314
- margin-top: ${n(2)};
1315
- `;var Sg=({children:e,actionTitle:t,onClick:r})=>{let[o,i]=Cg(!1),a=Ig(()=>{i(!0),r&&r()},[]);return zr.createElement(Mc,{ref:s=>{(s?.clientHeight||0)<207&&i(!0)}},zr.createElement(Bc,{extended:o},e),!o&&zr.createElement(Dc,null,zr.createElement(mt,{onClick:a,title:t},zr.createElement(I,null,t))))},Tc=Sg;import S,{useState as Ki,useCallback as Mt,useRef as Xi,useMemo as If}from"react";import Sf from"react-slick";import Ef from"scroll-into-view-if-needed";import $,{css as Eg}from"styled-components";var Lc=83,Oc=$.div`
1316
- ${e=>e.theme.breakpoint.LtMd} {
1317
- ${Ce} & {
1318
- margin-left: ${n(-3)};
1319
- margin-right: ${n(-3)};
1320
- }
1321
- }
1322
-
1323
- ${e=>e.theme.breakpoint.LtSm} {
1324
- ${Ce} & {
1325
- margin-left: ${n(-2)};
1326
- margin-right: ${n(-2)};
1327
- }
1328
- }
1329
-
1330
- ${e=>e.theme.breakpoint.Md} {
1331
- position: relative;
1332
- padding-right: ${Lc}px;
1333
- }
1334
- `,Hc=$.div`
1335
- position: relative;
1336
- height: 0;
1337
- padding-bottom: 66.66666667%;
1338
-
1339
- ${e=>e.theme.breakpoint.Md} {
1340
- //background-color: ${e=>e.theme.color.accent};
1341
- }
1342
-
1343
- .slick-slider,
1344
- .slick-list,
1345
- .slick-track,
1346
- .slick-slide,
1347
- .slick-slide > * {
1348
- height: 100%;
1349
- }
1350
-
1351
- .slick-slide > * {
1352
- font-size: 0;
1353
-
1354
- > * {
1355
- font-size: 1rem;
1356
- }
1357
- }
1358
- `,Nc=$.div`
1359
- position: absolute;
1360
- top: 0;
1361
- bottom: 0;
1362
- right: 0;
1363
- width: ${Lc}px;
1364
- padding-left: ${n(1)};
1365
-
1366
- ${e=>e.theme.breakpoint.LtMd} {
1367
- display: none;
1368
- }
1369
-
1370
- :after {
1371
- content: '';
1372
- position: absolute;
1373
- bottom: 0;
1374
- left: 0;
1375
- right: 0;
1376
- height: ${n(2.5)};
1377
- background-image: linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 1));
1378
- pointer-events: none;
1379
- }
1380
- `,No=$.div`
1381
- position: relative;
1382
- width: 100%;
1383
- height: 100%;
1384
- overflow: hidden;
1385
-
1386
- :focus {
1387
- outline: none;
1388
- }
1389
-
1390
- ${e=>e.theme.breakpoint.LtMd} {
1391
- //background-color: ${e=>e.theme.color.textDark};
1392
- transition: border-radius 150ms ease;
1393
- }
1394
- `,Fc=$.div`
1395
- position: absolute;
1396
- top: 0;
1397
- bottom: 0;
1398
- left: 0;
1399
- right: 0;
1400
-
1401
- .slick-slider {
1402
- position: absolute;
1403
- top: 0;
1404
- bottom: 0;
1405
- left: 0;
1406
- right: 0;
1407
- user-select: none;
1408
- touch-action: pan-y;
1409
- -webkit-tap-highlight-color: transparent;
1410
-
1411
- .slick-list,
1412
- .slick-track {
1413
- transform: translate3d(0, 0, 0);
1414
- }
1415
- }
1416
-
1417
- .slick-list {
1418
- position: relative;
1419
- display: block;
1420
- margin: 0;
1421
- padding: 0;
1422
- overflow: hidden;
1423
-
1424
- &:focus {
1425
- outline: none;
1426
- }
1427
-
1428
- &.dragging {
1429
- cursor: pointer;
1430
- cursor: hand;
1431
- }
1432
- }
1433
-
1434
- .slick-track {
1435
- position: relative;
1436
- top: 0;
1437
- left: 0;
1438
- display: block;
1439
- margin-left: auto;
1440
- margin-right: auto;
1441
-
1442
- &::before,
1443
- &::after {
1444
- content: '';
1445
- display: table;
1446
- }
1447
-
1448
- &::after {
1449
- clear: both;
1450
- }
1451
- }
1452
-
1453
- .slick-slide {
1454
- display: none;
1455
- float: left;
1456
- min-height: 1px;
1457
- }
1458
-
1459
- .slick-loading {
1460
- .slick-track {
1461
- visibility: hidden;
1462
- }
1463
-
1464
- img {
1465
- display: none;
1466
- }
1467
- }
1468
-
1469
- .slick-initialized {
1470
- .slick-slide {
1471
- display: block;
1472
- }
1473
- }
1474
-
1475
- .slick-slide.dragging img {
1476
- pointer-events: none;
1477
- }
1478
-
1479
- ${e=>e.theme.breakpoint.LtMd} {
1480
- overflow: hidden;
1481
-
1482
- .slick-list {
1483
- overflow: visible;
1484
- width: 95%;
1485
- }
1486
-
1487
- .slick-slide {
1488
- border-right: ${n(1)} solid ${e=>e.theme.color.bg};
1489
- //transform: scale(0.95);
1490
- transform-origin: 0 50%;
1491
- transition: transform 150ms ease;
1492
- }
1493
-
1494
- .slick-slide.slick-active {
1495
- transform: none;
1496
-
1497
- ${No} {
1498
- border-top-left-radius: 0;
1499
- border-bottom-left-radius: 0;
1500
- }
1501
- }
1502
- }
1503
- `,tr=$.img`
1504
- display: block;
1505
- position: absolute;
1506
- left: 0;
1507
- top: 0;
1508
- right: 0;
1509
- bottom: 0;
1510
- margin: auto;
1511
- max-width: 100%;
1512
- max-height: 100%;
1513
- object-fit: cover;
1514
- cursor: pointer;
1515
- `,Fo=$.img`
1516
- display: block;
1517
- position: absolute;
1518
- top: 0;
1519
- left: 0;
1520
- width: 100%;
1521
- height: 100%;
1522
- object-fit: cover;
1523
- `,zc=$(C)`
1524
- position: absolute;
1525
- top: 50%;
1526
- transform: translateY(-50%);
1527
- display: flex;
1528
- align-items: center;
1529
- justify-content: center;
1530
- width: ${n(4)};
1531
- height: ${n(4)};
1532
- border-radius: 50%;
1533
- font-size: 1rem;
1534
- line-height: 1;
1535
- background-color: rgba(255, 255, 255, 0.4);
1536
- backdrop-filter: blur(5px);
1537
- box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
1538
- color: ${e=>e.theme.color.textDark};
1539
- transform-origin: 50% 50%;
1540
- transition: transform 200ms ease;
1541
-
1542
- :before {
1543
- content: '';
1544
- position: absolute;
1545
- top: 0;
1546
- bottom: 0;
1547
- left: 0;
1548
- right: 0;
1549
- border-radius: 50%;
1550
- box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
1551
- opacity: 0;
1552
- transition: opacity 200ms ease;
1553
- }
1554
-
1555
- :hover {
1556
- :before {
1557
- opacity: 1;
1558
- }
1559
- }
1560
-
1561
- :active {
1562
- transform: translateY(-50%) scale(0.95);
1563
- }
1564
-
1565
- ${e=>e.theme.breakpoint.LtSm} {
1566
- display: none;
1567
- }
1568
- `,Gc=$(zc)`
1569
- left: ${n(2)};
1570
- `,jc=$(zc)`
1571
- right: ${n(2)};
1572
- `,Jc=$.ul`
1573
- position: relative;
1574
- max-height: 100%;
1575
- list-style: none;
1576
- padding: 0;
1577
- margin: 0;
1578
- overflow: auto;
1579
- -webkit-overflow-scrolling: touch;
1580
- `,ji=$.li.attrs(()=>({className:"wayke__theme wayke__color--primary-text"}))`
1581
- position: relative;
1582
-
1583
- & + & {
1584
- margin-top: ${n(1)};
1585
- }
1586
-
1587
- ${({active:e})=>e&&Eg`
1588
- :before {
1589
- content: '';
1590
- position: absolute;
1591
- top: 0;
1592
- left: 0;
1593
- width: 100%;
1594
- height: 100%;
1595
- border: 3px solid currentColor;
1596
- z-index: 2;
1597
- }
1598
- `}
1599
- `,Ji=$(C)`
1600
- position: relative;
1601
- display: block;
1602
- width: 100%;
1603
- height: 0;
1604
- padding-bottom: 66.66666667%; // 3:2
1605
- transform-origin: 50% 50%;
1606
- transition: transform 300ms cubic-bezier(0.47, 1.64, 0.41, 0.8);
1607
-
1608
- :before {
1609
- content: '';
1610
- position: absolute;
1611
- top: 0;
1612
- left: 0;
1613
- width: 100%;
1614
- height: 100%;
1615
- background-color: rgba(0, 0, 0, 0.15);
1616
- opacity: 0;
1617
- z-index: 1;
1618
- transition: opacity 150ms ease;
1619
- }
1620
-
1621
- :hover {
1622
- :before {
1623
- opacity: 1;
1624
- }
1625
- }
1626
-
1627
- :active {
1628
- transform: scale(0.95);
1629
- }
1630
- `,It=$.img`
1631
- display: block;
1632
- position: absolute;
1633
- top: 0;
1634
- left: 0;
1635
- width: 100%;
1636
- height: 100%;
1637
- object-fit: cover;
1638
- `,Qc=$.div`
1639
- position: absolute;
1640
- bottom: ${n(2)};
1641
- left: 50%;
1642
- transform: translateX(-50%);
1643
- z-index: 1;
1644
- `,Yc=$.div`
1645
- position: absolute;
1646
- bottom: ${n(2)};
1647
- left: 50%;
1648
- transform: translateX(-50%);
1649
- z-index: 1;
1650
- `;import ot from"react";import Gr from"styled-components";var Wc=Gr.div`
1651
- position: fixed;
1652
- top: 0;
1653
- bottom: 0;
1654
- left: 0;
1655
- right: 0;
1656
- padding: ${n(3)};
1657
- z-index: 90;
1658
- overflow: auto;
1659
-
1660
- ${e=>e.theme.breakpoint.LtSm} {
1661
- padding: ${n(2)};
1662
- }
1663
- `,Uc=Gr.div.attrs(()=>({role:"button"}))`
1664
- position: fixed;
1665
- top: 0;
1666
- bottom: 0;
1667
- left: 0;
1668
- right: 0;
1669
- background-color: rgba(0, 0, 0, 0.3);
1670
- z-index: -1;
1671
- `,zo=Gr.div`
1672
- position: relative;
1673
-
1674
- & + & {
1675
- margin-top: ${n(1)};
1676
- }
1677
- `,jr=Gr.img`
1678
- position: relative;
1679
- display: block;
1680
- max-width: 100%;
1681
- max-height: calc(100vh - ${n(6)});
1682
- margin: 0 auto;
1683
- z-index: 1;
1684
-
1685
- ${e=>e.theme.breakpoint.LtSm} {
1686
- max-height: calc(100vh - ${n(4)});
1687
- }
1688
- `,Rc=Gr(C)`
1689
- display: flex;
1690
- align-items: center;
1691
- justify-content: center;
1692
- position: fixed;
1693
- top: ${n(2)};
1694
- right: ${n(2)};
1695
- width: ${n(5)};
1696
- height: ${n(5)};
1697
- border-radius: 50%;
1698
- background-color: ${e=>e.theme.color.bg};
1699
- box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
1700
- transform-origin: 50% 50%;
1701
- transition: 200ms ease, transform 300ms cubic-bezier(0.47, 1.64, 0.41, 0.8);
1702
- z-index: 1;
1703
-
1704
- :before {
1705
- content: '';
1706
- position: absolute;
1707
- top: 0;
1708
- left: 0;
1709
- width: 100%;
1710
- height: 100%;
1711
- background-color: ${e=>e.theme.color.hoverOverlay};
1712
- border-radius: 50%;
1713
- opacity: 0;
1714
- transition: opacity 150ms ease;
1715
- }
1716
-
1717
- :hover {
1718
- :before {
1719
- opacity: 1;
1720
- }
1721
- }
1722
-
1723
- :active {
1724
- transform: scale(0.97);
1725
- }
1726
-
1727
- ${e=>e.theme.breakpoint.LtSm} {
1728
- top: ${n(1)};
1729
- right: ${n(1)};
1730
- }
1731
- `;import Wi from"react";import Kc from"react";var Go=e=>{let t=/\/(\d+)/,r=e.match(t);return r&&r[1].length>3?r[1]:""},Yi=e=>{let t=/^.*((youtu.be\/)|(v\/)|(\/u\/\w\/)|(embed\/)|(watch\?))\??v?=?([^#\&\?]*).*/,r=e.match(t);return r&&r[7].length===11?r[7]:""},Qi="https://img.youtube.com/vi/",Vc=e=>{let t=Yi(e);if(!!t)return{maxresdefault:`${Qi}${t}/maxresdefault.jpg`,hqdefault:`${Qi}${t}/hqdefault.jpg`,mqdefault:`${Qi}${t}/mqdefault.jpg`}},jo=(e,t)=>{t?.length===2&&e.currentTarget.src===t[0]&&e.currentTarget.naturalWidth===120&&e.currentTarget.naturalHeight===90&&(e.currentTarget.src=t[1])},Jo=(e,t)=>{t?.length===2&&(e.currentTarget.src=t[1])};import Zc from"styled-components";var rr=Zc.div`
1732
- position: relative;
1733
- width: 100%;
1734
- height: ${e=>e.isPreview?"100%":0};
1735
- padding-bottom: ${e=>e.ratio?e.ratio:"56.25%"};
1736
- `,Qo=Zc.iframe.attrs(()=>({width:"100%",height:"100%",allowFullScreen:!0,frameBorder:"0"}))`
1737
- position: absolute;
1738
- top: 0;
1739
- left: 0;
1740
- width: 100%;
1741
- height: 100%;
1742
- `;var Mg=({url:e,autoplay:t})=>Kc.createElement(rr,null,Kc.createElement(Qo,{src:`https://www.youtube.com/embed/${Yi(e)}?&enablejsapi=1&?rel=0${t?"&autoplay=1":""}`})),Xc=Mg;import qc from"react";var Bg=({url:e,autoplay:t})=>qc.createElement(rr,null,qc.createElement(Qo,{src:`https://player.vimeo.com/video/${Go(e)}?${t?"&autoplay=1":""}&loop=0&autopause=0`})),$c=Bg;import ep from"react";import Dg from"styled-components";var Tg=Dg.video`
1743
- position: absolute;
1744
- top: 0;
1745
- left: 0;
1746
- object-fit: ${({modal:e})=>e?"contain":"cover"};
1747
- `,_c=Tg;var Lg=({url:e,controls:t,modal:r,ratio:o="56.25%",isPreview:i})=>ep.createElement(rr,{ratio:o,isPreview:i},ep.createElement(_c,{key:e,modal:r,preload:"metadata",controls:t,width:"100%",height:"100%",src:e})),or=Lg;var Og=["youtube.com","youtu.be"],Hg=e=>Og.some(t=>e.indexOf(t)>=0),Ng=["vimeo.com"],Fg=e=>Ng.some(t=>e.indexOf(t)>=0),zg=({url:e,autoplay:t=!1,controls:r=!0})=>e?Hg(e)?Wi.createElement(Xc,{url:e,autoplay:t}):Fg(e)?Wi.createElement($c,{url:e,autoplay:t}):Wi.createElement(or,{ratio:"56.25%",controls:r,url:e}):null,Jr=zg;import Ug from"react";import Qr,{lazy as jg,useState as Jg,useEffect as Qg}from"react";import Gg from"styled-components";var tp=n(4),nr=n(4),rp=Gg.div`
1748
- position: relative;
1749
- width: 100%;
1750
- height: 0 !important;
1751
- padding-bottom: 66.666% !important; // 3:2
1752
-
1753
- .pnlm-container {
1754
- position: absolute;
1755
- height: 100% !important;
1756
- background-image: none;
1757
- background-color: ${e=>e.theme.color.accentDark};
1758
- }
1759
-
1760
- // Compass
1761
-
1762
- .pnlm-compass {
1763
- width: ${tp};
1764
- height: ${tp};
1765
- border-radius: 50%;
1766
- bottom: ${n(2)};
1767
- left: ${n(2)};
1768
- right: auto;
1769
- margin-top: 0;
1770
- border: 5px solid transparent;
1771
- border-top-color: ${e=>e.theme.color.textLight};
1772
- background-color: rgba(255, 255, 255, 0.4);
1773
- background-image: none;
1774
- backdrop-filter: blur(5px);
1775
- box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
1776
- box-sizing: border-box;
1777
-
1778
- &:hover {
1779
- background-color: red;
1780
- }
1781
- }
1782
-
1783
- // Controls (zoom & fullscreen button)
1784
-
1785
- .pnlm-grab,
1786
- .pnlm-grabbing {
1787
- .pnlm-controls-container {
1788
- display: block;
1789
- }
1790
- }
1791
-
1792
- .pnlm-controls-container {
1793
- display: none;
1794
- top: ${n(2)};
1795
- left: ${n(2)};
1796
- }
1797
-
1798
- .pnlm-controls {
1799
- margin-top: 0;
1800
-
1801
- & + .pnlm-controls {
1802
- margin-top: ${n(1)};
1803
- }
1804
- }
1805
-
1806
- // Fullscreen button
1807
-
1808
- .pnlm-fullscreen-toggle-button {
1809
- display: none;
1810
- position: relative;
1811
- width: ${nr};
1812
- height: ${nr};
1813
- background-image: none;
1814
- background-color: rgba(255, 255, 255, 0.4);
1815
- backdrop-filter: blur(5px);
1816
- box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
1817
- color: ${e=>e.theme.color.textDark};
1818
- border: 0;
1819
- border-radius: 50%;
1820
-
1821
- &:hover {
1822
- background-color: rgba(255, 255, 255, 0.6);
1823
- }
1824
-
1825
- &:before {
1826
- position: absolute;
1827
- top: 50%;
1828
- left: 50%;
1829
- transform: translate(-50%, -50%);
1830
- font-size: 0.875rem;
1831
- }
1832
- }
1833
-
1834
- .pnlm-fullscreen-toggle-button-inactive {
1835
- &:before {
1836
- content: '⤢';
1837
- }
1838
-
1839
- &.pnlm-fullscreen-toggle-button-active {
1840
- &:before {
1841
- content: '⤢';
1842
- }
1843
- }
1844
- }
1845
-
1846
- // Gyroscope (Orientation)
1847
-
1848
- .pnlm-orientation-button {
1849
- background-image: none;
1850
- width: ${nr};
1851
- height: ${nr};
1852
- background-color: ${e=>e.theme.color.accentDark};
1853
- color: ${e=>e.theme.color.textDark};
1854
- border: 0;
1855
- border-radius: 999px;
1856
-
1857
- &:hover {
1858
- background-color: red;
1859
- }
1860
-
1861
- &:before {
1862
- content: 'A';
1863
- position: absolute;
1864
- top: 50%;
1865
- left: 50%;
1866
- transform: translate(-50%, -50%);
1867
- font-size: 0.875rem;
1868
- }
1869
-
1870
- &.pnlm-orientation-button-active {
1871
- background-color: green;
1872
-
1873
- &:hover {
1874
- background-color: pink;
1875
- }
1876
- }
1877
- }
1878
-
1879
- // Zoom controls
1880
-
1881
- .pnlm-zoom-controls {
1882
- display: none;
1883
- height: auto;
1884
- width: auto;
1885
- background-color: transparent;
1886
- box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
1887
- border: 0;
1888
- border-radius: 999px;
1889
-
1890
- > * {
1891
- &:first-child {
1892
- border-top-left-radius: 999px;
1893
- border-top-right-radius: 999px;
1894
- }
1895
-
1896
- &:last-child {
1897
- border-bottom-left-radius: 999px;
1898
- border-bottom-right-radius: 999px;
1899
- }
1900
- }
1901
- }
1902
-
1903
- .pnlm-zoom-in,
1904
- .pnlm-zoom-out {
1905
- position: relative;
1906
- display: block;
1907
- width: ${nr};
1908
- height: ${nr};
1909
- background-image: none;
1910
- background-color: rgba(255, 255, 255, 0.4);
1911
- backdrop-filter: blur(5px);
1912
- color: ${e=>e.theme.color.textDark};
1913
- border-radius: 0;
1914
-
1915
- &:before {
1916
- position: absolute;
1917
- top: 50%;
1918
- left: 50%;
1919
- transform: translate(-50%, -50%);
1920
- }
1921
-
1922
- &:hover {
1923
- background-color: rgba(255, 255, 255, 0.6);
1924
- }
1925
- }
1926
-
1927
- .pnlm-zoom-in {
1928
- top: auto;
1929
-
1930
- &:before {
1931
- content: '+';
1932
- }
1933
- }
1934
-
1935
- .pnlm-zoom-out {
1936
- bottom: auto;
1937
- border-top: 1px solid ${e=>e.theme.color.textDark};
1938
-
1939
- &:before {
1940
- content: '-';
1941
- }
1942
- }
1943
-
1944
- // Load Button
1945
-
1946
- .pnlm-load-button {
1947
- top: auto;
1948
- bottom: ${n(2)};
1949
- transform: translateX(-50%);
1950
- width: auto;
1951
- height: auto;
1952
- padding: ${n(1.75)} ${n(2)};
1953
- border-radius: 3px;
1954
- margin: 0;
1955
- background-color: ${e=>e.theme.color.accentDark};
1956
- color: ${e=>e.theme.color.textDark};
1957
- line-height: 1.1;
1958
- user-select: none;
1959
-
1960
- &:hover {
1961
- background-color: ${e=>e.theme.color.accentDark};
1962
- }
1963
-
1964
- p {
1965
- margin: 0;
1966
- font-size: 0.875rem;
1967
- }
1968
- }
1969
-
1970
- // Load box
1971
-
1972
- .pnlm-load-box {
1973
- background-color: transparent;
1974
- height: auto;
1975
- margin: 0;
1976
- width: 150px;
1977
- transform: translate(-50%, -50%);
1978
-
1979
- > p {
1980
- display: none;
1981
- }
1982
- }
1983
-
1984
- // Load bar
1985
-
1986
- .pnlm-lbar {
1987
- width: 100%;
1988
- background-color: rgba(255, 255, 255, 0.4);
1989
- border: 0;
1990
- }
1991
-
1992
- .pnlm-lbar-fill {
1993
- background-color: ${e=>e.theme.color.textLight};
1994
- }
1995
- `;var Yg=jg(()=>import("pannellum-react/es/elements/Pannellum")),Wg=({id:e,src:t,preview:r,autoLoad:o,onStart:i})=>{let[a]=Jg(Math.floor(1e8+Math.random()*9e8));return Qg(()=>{setTimeout(()=>{if(i){let l=document.querySelector(".pnlm-load-button");l&&l.addEventListener("click",i)}},100)},[]),Qr.createElement(rp,null,Qr.createElement(Qr.Suspense,{fallback:Qr.createElement(Qe,null)},Qr.createElement(Yg,{id:`a-${e}-${a}`,image:t,hfov:120,autoLoad:o,compass:!0,width:"100%",preview:r})))},Yo=Wg;var Rg=({url:e})=>Ug.createElement(Yo,{id:e,src:e,preview:e,autoLoad:!0}),op=Rg;import Yr,{useState as _g,useCallback as ef}from"react";import Ui from"react";var Vg=({text:e,onClick:t})=>Ui.createElement(Qc,null,Ui.createElement(be,{onClick:t,title:e},Ui.createElement(I,null,e))),rt=Vg;import Zg,{useState as Kg,useEffect as Xg,useRef as Ri,cloneElement as qg,Children as Vi}from"react";var np=(e,t,r)=>{let o=(e+t)%r;return o<0?o+r:o},$g=({children:e})=>{let t=Ri(0),r=Ri(),o=Ri(0),[i,a]=Kg({current:0,outsideMouseMove:!1});Xg(()=>(document.addEventListener("mouseup",A),()=>{window.document.removeEventListener("mouseup",A),window.document.body.removeEventListener("mousemove",s),window.document.body.removeEventListener("mouseup",c)}),[]);let l=d=>{let g=typeof r.current!="number";if(d.preventDefault(),g)return;let x=Vi.count(e),{offsetWidth:L}=d.currentTarget,te=k(d),re=L,Ae=te-(r.current||0),ve=Math.floor(Ae/re*x);m(np(t.current,ve,x))},s=d=>{let g=typeof r.current!="number";if(d.preventDefault(),g||!i.outsideMouseMove)return;let x=Vi.count(e),te=k(d)-(r.current||0),re=Math.floor(te/o.current*x);m(np(t.current,re,x))},c=()=>{window.document.body.removeEventListener("mousemove",s),window.document.body.removeEventListener("mouseup",c),r.current=void 0,t.current=0},p=d=>{d.preventDefault(),r.current=k(d),t.current=i.current;let{offsetWidth:g}=d.currentTarget;o.current=g,window.document.body.addEventListener("mousemove",s),window.document.body.addEventListener("mouseup",c)},A=d=>{d.preventDefault(),r.current=void 0,t.current=0},h=()=>{i.outsideMouseMove&&a({...i,outsideMouseMove:!1})},b=()=>{i.outsideMouseMove||a({...i,outsideMouseMove:!0})},m=d=>{d!==i.current&&a({...i,current:d})},k=d=>{let{clientX:g}=d.type.indexOf("touch")===0?d.changedTouches[0]:d,{offsetLeft:x}=d.currentTarget;return g-x};return Zg.createElement("div",{onTouchStart:p,onTouchMove:l,onTouchEnd:A,onMouseDown:p,onMouseMove:l,onMouseEnter:h,onMouseLeave:b},Vi.map(e,(d,g)=>qg(d,{style:{width:"100%",display:i.current===g?"block":"none"}})))},Wo=$g;var tf=({urls:e})=>{let[t,r]=_g(!1),o=ef(()=>r(!0),[]);return t?Yr.createElement(Wo,null,e.map((i,a)=>Yr.createElement(jr,{key:i,src:i,alt:`Bild ${a+1}`}))):Yr.createElement(zo,null,Yr.createElement(jr,{src:e[0],alt:"alt"}),Yr.createElement(rt,{text:"Starta 360\xB0 exteri\xF6rt",onClick:o}))},ip=tf;var rf=({index:e,media:t,onClose:r})=>{let o=a=>{a&&setTimeout(()=>{a.scrollIntoView()},300)};return ot.createElement(Wc,{ref:a=>a?.focus(),onKeyDown:a=>{a.keyCode===27&&r()},tabIndex:0},ot.createElement(Uc,{onClick:r,"aria-hidden":!0}),t.map((a,l)=>ot.createElement(zo,{key:l,ref:e===l?o:void 0},a.type==="image"&&ot.createElement(jr,{id:`lightbox-image-${l}`,src:a.files[0].url,alt:`Bild ${l+1}`}),a.type==="threesixty"&&ot.createElement(ip,{urls:a.files.map(s=>s.url)}),a.type==="sphere"&&ot.createElement(op,{url:a.files[0].url}),a.type==="embedded"&&ot.createElement(Jr,{url:a.files[0].url}))),ot.createElement(Rc,{onClick:r,title:"St\xE4ng"},ot.createElement(We,{block:!0})))},ap=rf;import Ee,{useState as bf,useCallback as bp}from"react";import{useEffect as gf,useState as ff}from"react";import{useEffect as df,useState as uf}from"react";import{useEffect as of,useState as Zi,useCallback as nf}from"react";var sp={},af=e=>sp?.[e]||void 0,sf=(e,t)=>{sp[e]=t},Wr={},lf=e=>!!Wr[e],cf=(e,t)=>{Wr={...Wr,[e]:t}},pf=e=>{delete Wr[e]},mf=(e,t,r,o)=>{let[i,a]=Zi(),[l,s]=Zi(!1),[c,p]=Zi(!1),A=nf(async()=>{let h=e.toString(),b=af(h);if(p(!1),b){a(b);return}s(!0);try{let k=o&&lf(h)?Wr[h]:fetch(e,t);o&&cf(h,k);let d=await k;if(d.ok){let g=await d.clone().json();sf(h,g),a(g)}}catch{p(!0)}finally{s(!1),pf(h)}},[e,t]);return of(()=>{r||A()},[e,r]),{loading:l,data:i,error:c}},St=mf;var Af=(e,t)=>{let[r,o]=uf(),{data:i}=St(`http://vimeo.com/api/v2/video/${e}.json`,{},!e||!!r,!0);return df(()=>{i?.[0]&&(t&&i[0].thumbnail_small?o(i[0].thumbnail_small):i[0].thumbnail_large&&o(i[0].thumbnail_large))},[i]),r},lp=Af;var hf=(e,t)=>{if(e?.toLowerCase().endsWith(".mp4"))return;let[r,o]=ff(),i=e?Go(e):void 0,a=lp(i,t);return gf(()=>{if(e){let l=Vc(e);l&&o(t?[l.mqdefault]:[l.maxresdefault,l.hqdefault])}},[e]),a?[a]:r},Uo=hf;import*as xe from"react";import Se from"styled-components";var cp=Se.div.attrs(()=>({role:"dialog"}))`
1996
- position: fixed;
1997
- top: 0;
1998
- bottom: 0;
1999
- left: 0;
2000
- right: 0;
2001
- width: 100%;
2002
- white-space: normal;
2003
- text-align: left;
2004
- z-index: 90;
2005
- display: flex;
2006
- align-items: center;
2007
- justify-content: center;
2008
-
2009
- ${e=>e.theme.breakpoint.Sm} {
2010
- padding: ${n(2)};
2011
- }
2012
- `,pp=Se.div.attrs(()=>({"aria-hidden":"true",role:"button"}))`
2013
- position: fixed;
2014
- top: 0;
2015
- bottom: 0;
2016
- left: 0;
2017
- right: 0;
2018
- background-color: rgba(0, 0, 0, 0.35);
2019
- z-index: -1;
2020
-
2021
- ${e=>e.theme.breakpoint.LtMd} {
2022
- animation: ${Qt} 300ms ease forwards;
2023
- }
2024
-
2025
- ${e=>e.theme.breakpoint.Md} {
2026
- animation: ${Qt} 400ms ease forwards;
2027
- }
2028
- `,mp=Se.article.attrs(()=>({className:"wayke__theme wayke__font--regular"}))`
2029
- display: flex;
2030
- flex-direction: column;
2031
- background-color: ${e=>e.theme.color.bg};
2032
- z-index: 1;
2033
- width: 100%;
2034
- max-width: 680px;
2035
- max-height: 100%;
2036
- box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05);
2037
- overflow: hidden;
2038
-
2039
- ${e=>e.theme.breakpoint.LtSm} {
2040
- align-self: flex-end;
2041
- transform: translateY(100%);
2042
- animation: ${xr} 300ms ease forwards;
2043
- }
2044
-
2045
- ${e=>e.theme.breakpoint.Sm} {
2046
- transform: translateY(${n(2)});
2047
- animation: ${Qt} 400ms ease, ${xr} 400ms ease forwards;
2048
- }
2049
- `,dp=Se.div`
2050
- flex: 1 1 auto;
2051
- overflow: auto;
2052
- -webkit-overflow-scrolling: touch;
2053
- `,up=Se.header`
2054
- display: flex;
2055
- align-items: center;
2056
- min-height: 60px;
2057
- padding: ${n(3)};
2058
- padding-bottom: 0;
2059
- `,Ap=Se.div`
2060
- flex: 1 1 auto;
2061
-
2062
- ${Ie} {
2063
- font-size: 1.5rem;
2064
- }
2065
- `,gp=Se.div`
2066
- flex-shrink: 0;
2067
- margin: ${n(-2)};
2068
- padding-left: ${n(3)};
2069
- `,fp=Se(C)`
2070
- display: block;
2071
- padding: ${n(2)};
2072
- `,hp=Se.div`
2073
- padding: ${n(3)};
2074
- `,yp=Se.img`
2075
- display: block;
2076
- width: calc(100% + ${n(6)});
2077
- margin-left: ${n(-3)};
2078
- margin-bottom: ${n(3)};
2079
- `,Ro=Se.div`
2080
- background-color: ${e=>e.theme.color.accent};
2081
- margin: ${n(-3)};
2082
- margin-top: ${n(3)};
2083
- padding: ${n(3)};
2084
- `,Vo=Se.div``;var yf=({id:e,title:t,onClose:r,children:o})=>xe.createElement(Sr,{id:e||Ue.DefaultPortal},xe.createElement(cp,{onClick:i=>i.stopPropagation()},xe.createElement(pp,{onClick:r,title:"St\xE4ng modal"}),xe.createElement(mp,null,xe.createElement(dp,null,xe.createElement(up,null,xe.createElement(Ap,null,xe.createElement(Ie,{noMargin:!0},t)),xe.createElement(gp,null,xe.createElement(fp,{onClick:r,title:"St\xE4ng modal"},xe.createElement(We,{block:!0})))),xe.createElement(hp,null,o))))),R=yf;var kf=({src:e,index:t})=>{let[r,o]=bf(),i=Uo(e),a=A=>{A.stopPropagation(),o(e)},l=A=>{A.stopPropagation(),o(void 0)},s=bp(A=>Jo(A,i),[i]),c=bp(A=>jo(A,i),[i]),p=e.toLowerCase().endsWith(".mp4");return i?.length&&!p?Ee.createElement(Ee.Fragment,null,Ee.createElement(Fo,{onLoad:c,src:i[0],onError:s,alt:`Bild ${t+1}`}),Ee.createElement(rt,{text:"Spela video",onClick:a}),r&&Ee.createElement(R,{title:"Video",onClose:l},Ee.createElement(Jr,{url:r}))):p?Ee.createElement(Ee.Fragment,null,Ee.createElement(or,{ratio:"66.66%",isPreview:!0,controls:!1,url:e}),Ee.createElement(rt,{text:"Spela video",onClick:a}),r&&Ee.createElement(R,{title:"Video",onClose:l},Ee.createElement(Jr,{url:r}))):null},kp=kf;import xp,{useCallback as wp}from"react";var xf=({src:e,index:t})=>{let r=Uo(e),o=wp(l=>Jo(l,r),[r]),i=wp(l=>jo(l,r),[r]),a=e?.toLowerCase().endsWith(".mp4");return r?.length&&!a?xp.createElement(It,{onLoad:i,src:r[0],onError:o,alt:`Bild ${t+1}`}):a?xp.createElement(or,{key:t,url:e,ratio:"66.66%"}):null},vp=xf;import Ur from"react";var wf=(e,t)=>{e.stopPropagation(),e.preventDefault(),t()},vf=({url:e,preview:t,visible:r,onDisableNavigation:o,navigationDisabled:i})=>!r||!i&&r?Ur.createElement(Ur.Fragment,null,Ur.createElement(Fo,{src:t,alt:"alt"}),Ur.createElement(rt,{text:"Starta 360\xB0 interi\xF6rt",onClick:a=>wf(a,o)})):i&&r?Ur.createElement(Yo,{id:e,preview:e,src:e,autoLoad:!0,onStart:o}):null,Pp=vf;import Et from"react";var Pf=(e,t)=>{e.stopPropagation(),e.preventDefault(),t()},Cf=({urls:e,visible:t,onDisableNavigation:r,navigationDisabled:o})=>!t||!o&&t?Et.createElement(Et.Fragment,null,Et.createElement(tr,{src:e[0],alt:"alt"}),Et.createElement(rt,{text:"Starta 360\xB0 exteri\xF6rt",onClick:i=>Pf(i,r)})):o&&t?Et.createElement("div",{onClick:i=>{i.stopPropagation(),i.preventDefault()}},Et.createElement(Wo,null,e.map((i,a)=>Et.createElement(tr,{key:i,src:i,alt:`Bild ${a+1}`})))):null,Cp=Cf;var Mf={dots:!1,arrows:!1,infinite:!0,speed:300,slidesToShow:1,slidesToScroll:1},Bf=({media:e,placeholderImage:t})=>{let r=Xi(null),o=Xi(null),i=Xi(!1),[a,l]=Ki(0),[s,c]=Ki(!1),[p,A]=Ki(!1),h=Mt((E,D)=>{let w=o.current?.querySelectorAll("li")?.[D];w&&Ef(w,{scrollMode:"if-needed",block:"nearest",inline:"nearest"}),l(D)},[]),b=Mt(()=>{i.current&&(i.current=!1)},[]),m=Mt(()=>{i.current||(i.current=!0)},[]),k=Mt(()=>{N.publish("ImagesClick"),!i.current&&!s&&!!e?.length&&c(!0)},[s,e]),d=Mt(()=>{!r||!r.current||r.current.slickNext()},[r]),g=Mt(()=>{!r||!r.current||r.current.slickPrev()},[r]),x=E=>{!r||!r.current||r.current&&(l(E),r.current.slickGoTo(E))},L=()=>{i.current||A(!0)},te=E=>{E.stopPropagation(),i.current=!1,A(!1)},re=Mt(()=>c(!s),[s]),Ae=e?.length||0,ve=If(()=>t||xo,[t]);return S.createElement(S.Fragment,null,S.createElement(Oc,null,S.createElement(Hc,null,S.createElement(Fc,{onMouseDown:b,onMouseMove:m,onClick:k},S.createElement(Sf,{...Mf,swipe:!p,touchMove:!p,swipeToSlide:!p,ref:r,beforeChange:h},e?.length?e.map((E,D)=>S.createElement(No,{key:E.files[0].url||D},E.type==="image"&&S.createElement(tr,{src:E.files[0].formats.filter(Pr).find(w=>w.format==="1170x")?.url,alt:`Bild ${D+1}`}),E.type==="threesixty"&&S.createElement(Cp,{urls:E.files.map(w=>w.url),visible:D===a,onDisableNavigation:L,navigationDisabled:p}),E.type==="embedded"&&S.createElement(kp,{src:E.files[0].url,index:D+1}),E.type==="sphere"&&S.createElement(Pp,{visible:D===a,url:E.files[0].url,preview:E.files[0].url,onDisableNavigation:L,navigationDisabled:p}))):S.createElement(No,{key:ve},S.createElement(tr,{src:ve,alt:"Bild 1"}))),p&&Ae>1&&S.createElement(Yc,null,S.createElement(be,{onClick:te,title:"St\xE4ng"},S.createElement(I,null,"St\xE4ng")))),!p&&Ae>1&&S.createElement(S.Fragment,null,S.createElement(Gc,{onClick:g,title:"F\xF6reg\xE5ende bild"},S.createElement(Po,{block:!0})),S.createElement(jc,{onClick:d,title:"N\xE4sta bild"},S.createElement(vs,{block:!0})))),S.createElement(Nc,null,S.createElement(Jc,{ref:o},e?.length?e.map((E,D)=>{let w=E.files[0].formats.filter(Pr).find(Z=>Z.format==="225x150")?.url||E.files[0].url;return S.createElement(ji,{key:w||D,active:a===D},S.createElement(Ji,{onClick:()=>x(D),title:`G\xE5 till bild ${D+1}`},E.type==="image"&&S.createElement(It,{src:w,alt:`Bild ${D+1}`}),E.type==="threesixty"&&S.createElement(It,{src:w,alt:`Bild ${D+1}`}),E.type==="embedded"&&S.createElement(vp,{src:w,index:D}),E.type==="sphere"&&S.createElement(It,{src:E.files[0].url,alt:`Bild ${D+1}`})))}):S.createElement(ji,{key:ve,active:!0},S.createElement(Ji,{onClick:()=>x(0),title:"G\xE5 till bild 0"},S.createElement(It,{src:ve,alt:"Bild 1"})))))),s&&!!e?.length&&S.createElement(ap,{media:e,index:a,onClose:re}))},Ip=Bf;import ir from"styled-components";var Sp=ir.div`
2085
- display: flex;
2086
- flex-direction: column;
2087
-
2088
- ${e=>e.theme.breakpoint.Md} {
2089
- flex-direction: row;
2090
- }
2091
- `,Ep=ir.div`
2092
- ${e=>e.theme.breakpoint.LtMd} {
2093
- display: contents;
2094
- }
2095
-
2096
- ${e=>e.theme.breakpoint.Md} {
2097
- flex-shrink: 0;
2098
- width: calc(375px + ${n(2)});
2099
- padding-right: ${n(2)};
2100
- }
2101
- `,Zo=ir.div`
2102
- ${e=>e.theme.breakpoint.LtMd} {
2103
- display: contents;
2104
- }
2105
-
2106
- ${e=>e.theme.breakpoint.Md} {
2107
- flex: 1 1 100%;
2108
- min-width: 0;
2109
- padding-left: ${n(2)};
2110
- }
2111
- `,ar=ir.div`
2112
- ${e=>e.theme.breakpoint.LtMd} {
2113
- order: ${e=>e.mobileOrder};
2114
-
2115
- & + & {
2116
- margin-top: ${n(2)};
2117
- }
2118
-
2119
- :last-child {
2120
- margin-bottom: ${n(4)};
2121
- }
2122
-
2123
- ${Zo} & {
2124
- margin-top: ${n(2)};
2125
- }
2126
- }
2127
-
2128
- ${e=>e.theme.breakpoint.Md} {
2129
- & + & {
2130
- margin-top: ${n(4)};
2131
- }
2132
-
2133
- ${Zo} & {
2134
- margin-bottom: ${n(8)};
2135
- }
2136
- }
2137
- `,Ze=ir.div`
2138
- ${e=>e.theme.breakpoint.LtMd} {
2139
- order: 99;
2140
- padding: ${n(4)} 0;
2141
- border-top: ${n(1)} solid ${e=>e.theme.color.accent};
2142
-
2143
- ${Ce} & {
2144
- margin-left: ${n(-2)};
2145
- margin-right: ${n(-2)};
2146
- padding-left: ${n(2)};
2147
- padding-right: ${n(2)};
2148
- }
2149
- }
2150
-
2151
- ${e=>e.theme.breakpoint.Md} {
2152
- & + & {
2153
- margin-top: ${n(8)};
2154
- padding-top: ${n(8)};
2155
- border-top: 1px solid ${e=>e.theme.color.border};
2156
- }
2157
- }
2158
- `,Mp=ir.div`
2159
- max-width: 420px;
2160
- `;import{useQuery as Of}from"@apollo/client";import{gql as qi}from"@apollo/client";var Df=qi`
2161
- fragment FinancialOptionDetail on FinancialOptionDetail {
2162
- current
2163
- default
2164
- max
2165
- min
2166
- step
2167
- }
2168
- `,Tf=qi`
2169
- fragment HoursOpen on HoursOpen {
2170
- from
2171
- until
2172
- }
2173
- `,Lf=qi`
2174
- query SearchItem($id: ID!) {
2175
- vehicle(id: $id) {
2176
- id
2177
- documents
2178
- contact {
2179
- name
2180
- email
2181
- phonenumber
2182
- avatar
2183
- }
2184
- manufacturer {
2185
- description
2186
- logotype
2187
- name
2188
- packageOption {
2189
- description
2190
- image
2191
- link {
2192
- title
2193
- url
2194
- }
2195
- title
2196
- }
2197
- }
2198
- packageOptions {
2199
- description
2200
- image
2201
- link {
2202
- title
2203
- url
2204
- }
2205
- title
2206
- }
2207
- publishedAt
2208
- branch {
2209
- connections {
2210
- id
2211
- name
2212
- location {
2213
- city
2214
- county
2215
- streetAddress
2216
- postalCode
2217
- position {
2218
- latitude
2219
- longitude
2220
- }
2221
- }
2222
- }
2223
- contact {
2224
- name
2225
- email
2226
- phonenumber
2227
- avatar
2228
- }
2229
- id
2230
- description
2231
- name
2232
- homepage
2233
- flags {
2234
- mrf
2235
- centralStorage
2236
- ecommerce
2237
- }
2238
- logotype
2239
- openingHours {
2240
- monday {
2241
- ...HoursOpen
2242
- }
2243
- tuesday {
2244
- ...HoursOpen
2245
- }
2246
- wednesday {
2247
- ...HoursOpen
2248
- }
2249
- thursday {
2250
- ...HoursOpen
2251
- }
2252
- friday {
2253
- ...HoursOpen
2254
- }
2255
- saturday {
2256
- ...HoursOpen
2257
- }
2258
- sunday {
2259
- ...HoursOpen
2260
- }
2261
- }
2262
- organization {
2263
- branches {
2264
- id
2265
- }
2266
- parent {
2267
- id
2268
- }
2269
- }
2270
- location {
2271
- position {
2272
- latitude
2273
- longitude
2274
- }
2275
- city
2276
- county
2277
- streetAddress
2278
- postalCode
2279
- }
2280
- promos {
2281
- description
2282
- image
2283
- title
2284
- }
2285
- services {
2286
- markdown
2287
- title
2288
- }
2289
- }
2290
- data {
2291
- enginePower
2292
- equipmentLevel
2293
- fuelType
2294
- gearbox
2295
- gearboxType
2296
- manufactureYear
2297
- manufacturer
2298
- mileage
2299
- modelName
2300
- modelSeries
2301
- modelYear
2302
- properties
2303
- propertySet
2304
- options
2305
- registrationNumber
2306
- salesName
2307
- vin
2308
- }
2309
- description
2310
- ecommerce {
2311
- enabled
2312
- reserved
2313
- withTradeIn
2314
- withHomeDelivery
2315
- }
2316
- insuranceOptions {
2317
- insuranceHeader
2318
- institute
2319
- identifier
2320
- logotype
2321
- name
2322
- description
2323
- longDescription
2324
- url
2325
- insuranceText
2326
- requiresPersonalNumber
2327
- requiresDistance
2328
- terms
2329
- }
2330
- financialOptions {
2331
- description
2332
- administrationFee
2333
- downPayment {
2334
- ...FinancialOptionDetail
2335
- }
2336
- duration {
2337
- ...FinancialOptionDetail
2338
- }
2339
- effectiveInterest
2340
- image
2341
- includes
2342
- includes
2343
- interest
2344
- link {
2345
- title
2346
- url
2347
- }
2348
- loanAmount
2349
- logotype
2350
- mileage {
2351
- ...FinancialOptionDetail
2352
- }
2353
- monthlyCost
2354
- name
2355
- residual {
2356
- ...FinancialOptionDetail
2357
- }
2358
- setupFee
2359
- terms
2360
- totalCreditCost
2361
- totalResidualValue
2362
- type
2363
- url
2364
- }
2365
- media {
2366
- type
2367
- files {
2368
- formats {
2369
- format
2370
- url
2371
- }
2372
- url
2373
- }
2374
- }
2375
- location {
2376
- city
2377
- county
2378
- streetAddress
2379
- postalCode
2380
- }
2381
- price
2382
- shortDescription
2383
- title
2384
- }
2385
- }
2386
- ${Tf}
2387
- ${Df}
2388
- `,Bp=Lf;var Hf=e=>Of(Bp,{variables:{id:e},skip:!e}),Dp=Hf;import Dt,{Fragment as sh}from"react";import U,{useState as zf,useCallback as Gf}from"react";import*as Rr from"react";import sr from"styled-components";var Tp=sr.div`
2389
- display: flex;
2390
- align-items: center;
2391
- padding: ${n(1)};
2392
- border: 1px solid ${e=>e.theme.color.border};
2393
- border-radius: 3px;
2394
-
2395
- & + & {
2396
- margin-top: ${n(1)};
2397
- }
2398
- `,Lp=sr.div`
2399
- position: relative;
2400
- flex-shrink: 0;
2401
- margin-right: ${n(1)};
2402
- width: ${n(9.5)};
2403
- height: ${n(6)};
2404
- `,Op=sr.img`
2405
- display: block;
2406
- position: absolute;
2407
- left: 0;
2408
- top: 0;
2409
- right: auto;
2410
- bottom: 0;
2411
- margin: auto;
2412
- max-width: 100%;
2413
- max-height: 100%;
2414
- `,Hp=sr.div`
2415
- flex: 1 1 auto;
2416
- text-align: right;
2417
- line-height: 1.4;
2418
- `,Bt=sr.div.attrs(()=>({className:"wayke__theme wayke__font--bold"}))`
2419
- font-size: 1rem;
2420
- `,nt=sr.div`
2421
- margin-top: ${n(.5)};
2422
- font-size: 0.875rem;
2423
-
2424
- p {
2425
- margin: 0;
2426
- }
2427
- `;var Nf=({logo:e,logo2x:t,logoAlt:r,children:o})=>Rr.createElement(Tp,null,e&&Rr.createElement(Lp,null,Rr.createElement(Op,{src:e,srcSet:t,alt:r})),Rr.createElement(Hp,null,o)),it=Nf;import Xo from"react";import Ko from"styled-components";var Np=Ko.ul`
2428
- list-style: none;
2429
- padding: 0;
2430
- margin: 0;
2431
- `,Fp=Ko.li`
2432
- display: flex;
2433
- align-items: flex-start;
2434
-
2435
- & + & {
2436
- margin-top: ${n(1)};
2437
- }
2438
- `,zp=Ko.div`
2439
- flex: 1 1 auto;
2440
- `,Gp=Ko.div.attrs(()=>({className:"wayke__theme wayke__font--bold"}))`
2441
- flex-shrink: 0;
2442
- padding-left: ${n(2)};
2443
- `;var Ff=({items:e})=>Xo.createElement(Np,null,e.map(t=>Xo.createElement(Fp,{key:t.label},Xo.createElement(zp,null,t.label),Xo.createElement(Gp,null,t.value)))),qo=Ff;var jf=({financialOption:e})=>{let[t,r]=zf(!1),o=Gf(()=>r(!t),[t]),{image:i,description:a,monthlyCost:l,duration:s,mileage:c}=e;return U.createElement(U.Fragment,null,t&&U.createElement(R,{title:"Privatleasing",onClose:o},i&&U.createElement(yp,{src:i,alt:"Privatleasing"}),a&&U.createElement(M,{dangerouslySetInnerHTML:{__html:a}}),U.createElement(Ro,null,U.createElement(Vo,null,U.createElement(qo,{items:[{label:"M\xE5nadskostnad",value:`${v(l||0)} kr/m\xE5n`},{label:"Bindningstid",value:`${s?.current} m\xE5nader`},{label:"\xC5rlig k\xF6rstr\xE4cka",value:`${v(c?.current||0)} mil/\xE5r`}]})))),U.createElement(it,null,U.createElement(U.Fragment,null,l!=null&&U.createElement(Bt,null,`ca ${v(l)} kr/m\xE5n`)),U.createElement(nt,null,U.createElement("p",null,"Privatleasing"," ",c?.current&&s?.current&&U.createElement(U.Fragment,null,U.createElement(Jt,null,v(c?.current)," mil/\xE5r")," ","i ",U.createElement(Jt,null,s?.current," m\xE5n"),"."," ")),U.createElement("p",null,U.createElement(O,{onClick:o},"L\xE4s mer")))))},jp=jf;import V,{useState as nh,useCallback as ih}from"react";import{useQuery as Yf}from"@apollo/client";import{gql as Jp}from"@apollo/client";var Jf=Jp`
2444
- fragment FinancialOptionDetail on FinancialOptionDetail {
2445
- current
2446
- default
2447
- max
2448
- min
2449
- step
2450
- }
2451
- `,Qf=Jp`
2452
- query LoanCalculation($id: ID!, $duration: Int!, $downPayment: Int!, $residual: Float!) {
2453
- loan(id: $id, duration: $duration, downPayment: $downPayment, residual: $residual) {
2454
- downPayment {
2455
- ...FinancialOptionDetail
2456
- }
2457
- effectiveInterest
2458
- duration {
2459
- ...FinancialOptionDetail
2460
- }
2461
- residual {
2462
- ...FinancialOptionDetail
2463
- }
2464
- mileage {
2465
- ...FinancialOptionDetail
2466
- }
2467
- interest
2468
- loanAmount
2469
- totalCreditCost
2470
- totalResidualValue
2471
- monthlyCost
2472
- }
2473
- }
2474
- ${Jf}
2475
- `,Qp=Qf;var Wf=(e,t,r,o)=>Yf(Qp,{variables:{id:e,duration:t,downPayment:r,residual:o||0},skip:t===void 0||r===void 0}),$o=Wf;import B,{useState as Zp,useCallback as ta,useEffect as rh}from"react";import $i from"styled-components";var _o=$i.div`
2476
- ${e=>e.theme.breakpoint.Sm} {
2477
- display: flex;
2478
- align-items: flex-start;
2479
- }
2480
- `,en=$i.div`
2481
- ${e=>e.theme.breakpoint.Sm} {
2482
- flex: 1 1 auto;
2483
- }
2484
- `,tn=$i.div`
2485
- ${e=>e.theme.breakpoint.LtSm} {
2486
- margin-top: ${n(2)};
2487
- }
2488
-
2489
- ${e=>e.theme.breakpoint.Sm} {
2490
- flex-shrink: 0;
2491
- padding-left: ${n(4)};
2492
- }
2493
- `;import lr,{useCallback as $f,useEffect as _f,useState as eh}from"react";import ea from"react";import _i,{css as Uf}from"styled-components";var Yp=_i.div`
2494
- display: flex;
2495
- align-items: flex-end;
2496
- `,Wp=_i.div.attrs(()=>({className:"wayke__theme wayke__font--bold"}))`
2497
- flex: 1 1 auto;
2498
- `,Up=_i.div.attrs(()=>({className:"wayke__theme wayke__font--bold wayke__color--primary-text"}))`
2499
- flex-shrink: 0;
2500
- padding-left: ${n(2)};
2501
- font-size: 1.125rem;
2502
-
2503
- ${({isHighlighted:e})=>e&&Uf`
2504
- font-size: 1.375rem;
2505
- color: ${t=>t.theme.color.textDark} !important;
2506
- `}
2507
- `;var Rf=({label:e,value:t,highlight:r})=>ea.createElement(Yp,null,ea.createElement(Wp,null,e),t&&ea.createElement(Up,{isHighlighted:r},t)),Rp=Rf;import Me from"react";import{Slider as Vf,Rail as Zf,Handles as Kf,Tracks as Xf}from"react-compound-slider";var qf=({loading:e,values:t,domain:r,steps:o,unit:i,formatValues:a,onChange:l,onUpdate:s})=>{let c=o[0],A=o[1]-c,h=a?v(r[0]):r[0],b=a?v(r[1]):r[1];return o.length<2?null:Me.createElement(Me.Fragment,null,Me.createElement(Br,null,Me.createElement(Vf,{disabled:e,mode:1,step:A,domain:r,onChange:l,onUpdate:s,values:t,rootStyle:{position:"relative"}},Me.createElement(Zf,null,({getRailProps:m})=>Me.createElement(Dr,{...m()})),Me.createElement(Kf,null,({handles:m,getHandleProps:k})=>Me.createElement("div",{className:"slider-handles"},m.map(d=>Me.createElement(Eo,{key:d.id,handle:d,domain:r,getHandleProps:k})))),Me.createElement(Xf,{right:!1},({tracks:m,getTrackProps:k})=>Me.createElement("div",{className:"slider-tracks"},m.map(({id:d,source:g,target:x})=>Me.createElement(Mo,{key:d,source:g,target:x,getTrackProps:k})))))),!1)},Vp=qf;var th=({label:e,values:t,domain:r,steps:o,loading:i,unit:a,formatValues:l,onChange:s})=>{let[c,p]=eh(o),A=$f(h=>{p([...h])},[]);return _f(()=>{i||p(void 0)},[i]),lr.createElement(lr.Fragment,null,lr.createElement(H,null,lr.createElement(Rp,{label:e,value:`${v(c?.[0]||t[0])}${a?` ${a}`:""}`})),lr.createElement(H,null,lr.createElement(Vp,{loading:i,values:t,domain:r,steps:o,onChange:s,onUpdate:A,unit:a,formatValues:l})))},rn=th;var on=(e,t,r=[],o)=>{if(e===0&&o===void 0||o!==void 0&&o>=t&&e!==0)return r;let i=o?e+o:e;return r.push(i),on(e,t,r,i)},oh=({id:e,financialOption:t,onClose:r})=>{let[o,i]=Zp(),[a,l]=B.useState(!1),s=B.useCallback(()=>{a||N.publish("FinanceInterest"),l(!a)},[a]),[c,p]=Zp({duration:t.duration?.current,downPayment:t.downPayment?.current,residual:t.residual?.current}),{duration:A,downPayment:h,residual:b}=c,{loading:m,data:k}=$o(e,A,h,b);rh(()=>{k&&(i(k),p({duration:k?.loan?.duration?.current||0,downPayment:k?.loan?.downPayment?.current||0,residual:k?.loan?.residual?.current||0}))},[k]);let d=k?.loan||o?.loan,g=d?.downPayment?.current||0,x=d?.downPayment?.min||0,L=d?.downPayment?.max||0,te=d?.downPayment?.step||0,re=on(te,L),Ae=ta(fe=>{N.publish("FinanceInterest"),p({...c,downPayment:fe[0]})},[c]),ve=d?.duration?.current||0,E=d?.duration?.min||0,D=d?.duration?.max||0,w=d?.duration?.step||0,Z=on(w,D),j=ta(fe=>{N.publish("FinanceInterest"),p({...c,duration:fe[0]})},[c]),oe=(d?.residual?.current||0)*100||0,ge=(d?.residual?.min||0)*100||0,Pe=(d?.residual?.max||0)*100||0,Rn=(d?.residual?.step||0)*100||0,oo=on(Rn,Pe),Vn=ta(fe=>{N.publish("FinanceInterest"),p({...c,residual:fe[0]/100})},[c]),no=((d?.interest||0)*100).toFixed(2),jt=((d?.effectiveInterest||0)*100).toFixed(2);return B.createElement(R,{title:"L\xE5nealternativ",onClose:r},B.createElement(u,null,B.createElement(_o,null,t?.description&&B.createElement(en,null,B.createElement(M,null,B.createElement("p",null,t.description))),t?.image&&B.createElement(tn,null,B.createElement(le,{logo:t.image,alt:t.name||"Logotyp",wide:!0})))),B.createElement(u,null,B.createElement(X,null,B.createElement(rn,{label:"Kontantinsatts",values:[g],domain:[x,L],steps:re,unit:"kr",formatValues:!0,loading:m,onChange:Ae})),B.createElement(X,null,B.createElement(rn,{label:"Avbetalning",values:[ve],domain:[E,D],steps:Z,unit:"m\xE5n",loading:m,onChange:j})),b!==void 0&&Pe!==0&&B.createElement(X,null,B.createElement(rn,{label:"Restskuld",values:[oe],domain:[ge,Pe],steps:oo,unit:"%",loading:m,onChange:Vn})),B.createElement(X,null,B.createElement(H,null,B.createElement(M,{small:!0},B.createElement("p",null,`*Ber\xE4knat p\xE5 ${no} % r\xE4nta (effektivt ${jt} %)${d?.mileage!==null?`och en \xE5rlig k\xF6rstr\xE4cka om ${d?.mileage} mil.`:""}`)))),B.createElement(X,null,B.createElement(mt,{onClick:s,title:a?"Visa mindre information":"Visa mer information"},B.createElement(I,null,a?"Mindre information":"Mer information"))),B.createElement(B.Fragment,null,a&&B.createElement(Ro,null,B.createElement(Vo,null,B.createElement(qo,{items:[{label:"R\xE4nta",value:`${no} %`},{label:"Effektiv r\xE4nta",value:`${jt} %`},{label:"Uppl\xE4ggningskostnad",value:`${v(t?.setupFee||0)} kr`},{label:"Administrativa avgifter",value:`${v(t?.administrationFee||0)} kr/m\xE5n`},{label:"Total kreditkostnad",value:`${v(d?.totalCreditCost||0)} kr`}]}))))))},Kp=oh;var ah=({id:e,financialOption:t})=>{let[r,o]=nh(!1),i=ih(()=>o(!r),[r]),{data:a}=$o(e,t.duration?.current,t.downPayment?.current,t.residual?.current),l=a?.loan?.interest,s=a?.loan?.duration?.current,c=a?.loan?.monthlyCost,p=t?.logotype||"https://placehold.it/67x10";return t.loanAmount===void 0||t.loanAmount===null||l===void 0||s===void 0||c===void 0||l===null||s===null||c===null?V.createElement(it,{logo:p,logoAlt:"Logotyp"},V.createElement(Bt,null,"Laddar..."),V.createElement(nt,null,V.createElement("p",null,"Laddar..."))):V.createElement(V.Fragment,null,r&&V.createElement(Kp,{id:e,financialOption:t,onClose:i}),V.createElement(it,{logo:p,logoAlt:"Logotyp"},V.createElement(V.Fragment,null,V.createElement(Bt,null,`${v(c)} kr/m\xE5n*`),V.createElement(nt,null,V.createElement("p",null,"Delbetala"," ",t.loanAmount&&s&&V.createElement(V.Fragment,null,V.createElement(Jt,null,v(t.loanAmount)," kr")," ","i ",V.createElement(Jt,null,s," m\xE5n"),".")),V.createElement("p",null,`*Ber\xE4knat p\xE5 ${(l*100).toFixed(2)}% r\xE4nta. `,V.createElement(O,{onClick:i},"L\xE4s mer"))))))},Xp=ah;var lh=({id:e,financialOptions:t})=>Dt.createElement(u,null,Dt.createElement(H,null,Dt.createElement(At,null,"Andra finansieringsalternativ")),Dt.createElement(H,null,t.map((r,o)=>Dt.createElement(sh,{key:o},r.type==="leasing"&&Dt.createElement(jp,{financialOption:r}),r.type==="loan"&&Dt.createElement(Xp,{id:e,financialOption:r}))))),qp=lh;import Lm from"react";import ce,{useState as Eh,useCallback as Mh}from"react";import y,{useState as Em,useCallback as pn}from"react";import Ke from"react";import cr from"styled-components";var $p=cr.article`
2508
- box-shadow: 2px 2px 8px rgba(0, 0, 0, 0.1);
2509
- border-radius: 3px;
2510
- overflow: hidden;
2511
- `,_p=cr.div`
2512
- padding: ${n(2.5)};
2513
- `,em=cr(_).attrs(()=>({as:"h1"}))`
2514
- margin-bottom: 0;
2515
- `,tm=cr.div`
2516
- margin-top: ${n(1)};
2517
- `,rm=cr.div`
2518
- margin-top: ${n(1)};
2519
- color: red;
2520
- `,om=cr.div`
2521
- background-color: ${e=>e.theme.color.accent};
2522
- padding: ${n(2.5)};
2523
- `;var ch=({heading:e,description:t,children:r})=>{let[o,i]=Ke.useState(!1),a=Ke.useCallback(()=>i(!o),[o]);return Ke.createElement($p,null,Ke.createElement(_p,null,Ke.createElement(em,null,e),t&&Ke.createElement(tm,null,t),Ke.createElement(rm,null,Ke.createElement(mt,{onClick:a},Ke.createElement(I,null,o?"Mindre information":"Mer information")))),o&&Ke.createElement(om,null,r))},nm=ch;import Tt,{useState as ph,useCallback as mh}from"react";import pr from"styled-components";var im=pr.div``,am=pr.div`
2524
- display: flex;
2525
- align-items: center;
2526
- `,sm=pr.div``,lm=pr.div`
2527
- margin-left: ${n(1)};
2528
- `,cm=pr(C).attrs(()=>({className:"wayke__theme wayke__color--primary-text"}))`
2529
- position: relative;
2530
- display: block;
2531
- font: inherit;
2532
- font-size: 1em;
2533
- transform-origin: 50% 50%;
2534
- transition: transform 300ms cubic-bezier(0.47, 1.64, 0.41, 0.8);
2535
-
2536
- :before {
2537
- content: '';
2538
- position: absolute;
2539
- top: ${n(-.5)};
2540
- bottom: ${n(-.5)};
2541
- left: ${n(-.5)};
2542
- right: ${n(-.5)};
2543
- background-color: ${e=>e.theme.color.accentDark};
2544
- border-radius: 50%;
2545
- opacity: 0;
2546
- transition: opacity 200ms ease;
2547
- }
2548
-
2549
- > * {
2550
- position: relative;
2551
- z-index: 1;
2552
- }
2553
-
2554
- :hover {
2555
- :before {
2556
- opacity: 1;
2557
- }
2558
- }
2559
-
2560
- :active {
2561
- transform: scale(0.95);
2562
- }
2563
- `,pm=pr.div`
2564
- padding-top: ${n(1)};
2565
- margin-top: ${n(1)};
2566
- border-top: 1px solid ${e=>e.theme.color.border};
2567
- font-size: 0.875em;
2568
- `;var dh=({title:e,children:t})=>{let[r,o]=ph(!1),i=mh(()=>o(!r),[r]);return Tt.createElement(im,null,Tt.createElement(am,null,Tt.createElement(sm,null,e),t&&Tt.createElement(lm,null,Tt.createElement(cm,{onClick:i,title:"Mer information"},Tt.createElement(dt,{block:!0})))),r&&Tt.createElement(pm,null,t))},ra=dh;import Ah from"react";import uh from"styled-components";var mm=uh.label.attrs(()=>({className:"wayke__theme wayke__font--bold"}))`
2569
- margin-bottom: ${n(.5)};
2570
- font-size: 0.875rem;
2571
- `;var gh=({children:e,htmlFor:t})=>Ah.createElement(mm,{htmlFor:t},e),Vr=gh;import gm from"react";import dm from"styled-components";var um=dm.div`
2572
- position: relative;
2573
- display: flex;
2574
- align-items: stretch;
2575
- background-color: ${e=>e.theme.color.accent};
2576
- border-radius: 3px;
2577
- `,Am=dm.input.attrs(()=>({type:"text",className:"wayke__theme wayke__font--regular"}))`
2578
- flex: 1 1 auto;
2579
- display: block;
2580
- width: 100%;
2581
- height: ${e=>e.theme.distances.inputHeight};
2582
- padding: 0 ${n(2)};
2583
- background-color: transparent;
2584
- font-size: 16px;
2585
- border: none;
2586
- border-radius: 0;
2587
- box-shadow: none;
2588
- -moz-appearance: none;
2589
- -webkit-appearance: none;
2590
-
2591
- :focus {
2592
- outline: none;
2593
- }
2594
-
2595
- &::-webkit-input-placeholder {
2596
- font-family: inherit;
2597
- color: ${e=>e.theme.color.textDarkLighten};
2598
- font-size: 1em;
2599
- }
2600
-
2601
- &:-moz-placeholder {
2602
- font-family: inherit;
2603
- color: ${e=>e.theme.color.textDarkLighten};
2604
- font-size: 1em;
2605
- }
2606
-
2607
- &::-moz-placeholder {
2608
- font-family: inherit;
2609
- color: ${e=>e.theme.color.textDarkLighten};
2610
- font-size: 1em;
2611
- }
2612
-
2613
- &:-ms-input-placeholder {
2614
- font-family: inherit;
2615
- color: ${e=>e.theme.color.textDarkLighten};
2616
- font-size: 1em;
2617
- }
2618
- `;var fh=({placeholder:e,label:t,value:r,id:o,onChange:i,onKeyDown:a})=>gm.createElement(um,null,gm.createElement(Am,{placeholder:e,value:r,id:o,"aria-label":t,onChange:i,onKeyDown:a})),fm=fh;import*as xh from"react";import*as oa from"react";import an,{css as hh}from"styled-components";var nn=an.label.attrs(()=>({className:"wayke__theme wayke__color--primary-text"}))`
2619
- position: relative;
2620
- display: flex;
2621
- align-items: flex-start;
2622
- font-size: 1rem;
2623
- line-height: 1.2;
2624
- cursor: pointer;
2625
-
2626
- :before {
2627
- content: '';
2628
- display: flex;
2629
- align-items: center;
2630
- justify-content: center;
2631
- flex-shrink: 0;
2632
- width: ${n(2.5)};
2633
- height: ${n(2.5)};
2634
- margin-right: ${n(1)};
2635
- background-color: ${e=>e.theme.color.accent};
2636
- color: currentColor;
2637
- border: none;
2638
- box-shadow: inset 1px 1px 2px rgba(0, 0, 0, 0.07);
2639
- text-align: center;
2640
- font-size: 15px;
2641
- cursor: pointer;
2642
- border-radius: 3px;
2643
- margin-top: -2px;
2644
- }
2645
- `,yh=an(e=>oa.createElement("div",{...e})).attrs(({type:e,checked:t})=>({role:e||"checkbox","aria-checked":t}))`
2646
- ${({error:e})=>e&&hh`
2647
- ${nn} {
2648
- color: ${t=>t.theme.color.ui.negative};
2649
-
2650
- :before {
2651
- background-color: ${t=>t.theme.color.ui.negativeLight};
2652
- }
2653
- }
2654
- `}
2655
- `,bh=an(e=>oa.createElement("input",{...e,className:`${e.checked?"checked":void 0} ${e.className}`})).attrs(({type:e,checked:t})=>({checked:t,type:e||"checkbox"}))`
2656
- position: fixed;
2657
- left: -9999px;
2658
- opacity: 0;
2659
-
2660
- &[disabled] {
2661
- & + ${nn} {
2662
- color: ${e=>e.theme.color.disabledText};
2663
-
2664
- &:before {
2665
- background-color: ${e=>e.theme.color.disabledBg};
2666
- cursor: not-allowed;
2667
- }
2668
- }
2669
- }
2670
-
2671
- &:checked,
2672
- &.checked {
2673
- & + ${nn} {
2674
- :before {
2675
- content: '✓';
2676
- }
2677
- }
2678
- }
2679
- `,kh=an.div`
2680
- color: ${e=>e.theme.color.textDark};
2681
- `;import Zr from"react";import sn from"styled-components";var hm="0.875rem",na=n(2),ym=sn.div`
2682
- position: relative;
2683
- background-color: ${e=>e.theme.color.accent};
2684
- border-radius: 3px;
2685
- `,bm=sn.select.attrs(()=>({className:"wayke__theme wayke__font--regular"}))`
2686
- position: relative;
2687
- display: block;
2688
- width: 100%;
2689
- height: ${e=>e.theme.distances.inputHeight};
2690
- -webkit-appearance: none;
2691
- -moz-appearance: none;
2692
- appearance: none;
2693
- -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
2694
- text-indent: 0.01px;
2695
- border: 0;
2696
- padding: 0 ${na};
2697
- padding-right: calc(${hm} + ${na});
2698
- background-color: transparent;
2699
- color: ${e=>e.theme.color.textDark};
2700
- border-radius: 0;
2701
- font-size: 16px;
2702
- cursor: pointer;
2703
- z-index: 1;
2704
-
2705
- :focus {
2706
- outline: none;
2707
- }
2708
-
2709
- ::-ms-expand {
2710
- display: none;
2711
- }
2712
-
2713
- ::-moz-focus-inner {
2714
- border: 0;
2715
- }
2716
- `,km=sn.option`
2717
- color: ${e=>e.theme.color.textDark};
2718
- `,xm=sn.div`
2719
- position: absolute;
2720
- top: 50%;
2721
- right: ${na};
2722
- transform: translateY(-50%);
2723
- font-size: ${hm};
2724
- `;var wh=({value:e,options:t,onChange:r,unit:o,title:i})=>Zr.createElement(ym,null,Zr.createElement(bm,{value:e,onChange:r,title:i,"aria-label":i},t?.map(a=>Zr.createElement(km,{key:a.value,value:a.value},a.displayName||a.value,o?` ${o}`:""))),Zr.createElement(xm,null,Zr.createElement(Rt,{block:!0}))),ln=wh;import wm from"styled-components";var vm=wm.div`
2725
- ${e=>e.theme.breakpoint.Sm} {
2726
- display: flex;
2727
- align-items: flex-start;
2728
- margin: ${n(-.5)};
2729
- }
2730
- `,ia=wm.div`
2731
- ${e=>e.theme.breakpoint.LtSm} {
2732
- & + & {
2733
- margin-top: ${n(1)};
2734
- }
2735
- }
2736
-
2737
- ${e=>e.theme.breakpoint.Sm} {
2738
- flex: 1 1 50%;
2739
- padding: ${n(.5)};
2740
- }
2741
- `;import Pm from"styled-components";var Cm=Pm.div`
2742
- display: flex;
2743
- align-items: flex-start;
2744
- `,aa=Pm.div`
2745
- flex: 1 1 auto;
2746
-
2747
- :last-child:not(:only-child) {
2748
- flex: 0 0 auto;
2749
- }
2750
-
2751
- & + & {
2752
- padding-left: ${n(2)};
2753
- }
2754
- `;import{useQuery as Ch}from"@apollo/client";import{gql as vh}from"@apollo/client";var Ph=vh`
2755
- query InsuranceCalculation(
2756
- $id: ID!
2757
- $branch: ID
2758
- $personalNumber: PersonalNumber!
2759
- $drivingDistance: DrivingDistance!
2760
- ) {
2761
- insurances(
2762
- id: $id
2763
- branch: $branch
2764
- personalNumber: $personalNumber
2765
- drivingDistance: $drivingDistance
2766
- ) {
2767
- name
2768
- price
2769
- unit
2770
- description
2771
- logotype
2772
- addons {
2773
- id
2774
- title
2775
- description
2776
- price
2777
- unit
2778
- exclusions
2779
- }
2780
- items {
2781
- name
2782
- description
2783
- }
2784
- legality {
2785
- description
2786
- url
2787
- }
2788
- terms
2789
- url
2790
- }
2791
- }
2792
- `,Im=Ph;var Ih=(e,t,r,o)=>Ch(Im,{variables:{id:e,branch:t,personalNumber:r,drivingDistance:o},skip:r===void 0||o===void 0||t===void 0}),Sm=Ih;var cn=e=>e?/^\d{2,4}\d{2}\d{2}\-?\d{4}$/.test(e):!1;var Sh=({id:e,branch:t,onClose:r,insuranceOptions:o})=>{let[i,a]=Em({ssn:"",drivingDistance:"BETWEEN0AND1000"}),[l,s]=Em(),{loading:c,data:p,error:A}=Sm(e,t?.id?t?.id:void 0,cn(l?.ssn)?l?.ssn:void 0,l?.drivingDistance),h=pn(g=>a({...i,ssn:g.currentTarget.value}),[i]),b=pn(g=>a({...i,drivingDistance:g.currentTarget.value}),[i]),m=pn(()=>{N.publish("InsuranceInterest"),s(i)},[i]),k=pn(g=>{g.keyCode===13&&cn(i.ssn)&&!c&&m()},[i]),d=[{value:"BETWEEN0AND1000",displayName:"0 - 1000"},{value:"BETWEEN1000AND1500",displayName:"1000 - 1500"},{value:"BETWEEN1500AND2000",displayName:"1500 - 2000"},{value:"BETWEEN2000AND2500",displayName:"2000 - 2500"},{value:"OVER2500",displayName:"2500+"}];return y.createElement(R,{title:"F\xF6rs\xE4kring",onClose:r},(o?.description||o?.logotype)&&y.createElement(u,null,y.createElement(_o,null,o.description&&y.createElement(en,null,y.createElement(M,null,y.createElement("p",null,o.description))),o.logotype&&y.createElement(tn,null,y.createElement(le,{logo:o.logotype,alt:o.name||"Logotyp",wide:!0})))),y.createElement(u,null,y.createElement(X,null,y.createElement(H,null,y.createElement(vm,null,y.createElement(ia,null,y.createElement(Vr,{htmlFor:"input-insurance-personalnumber"},"Personnummer"),y.createElement(fm,{placeholder:"\xC5\xC5\xC5\xC5MMDD-XXXX",label:"Personnummer",value:i.ssn,onChange:h,onKeyDown:k,id:"input-insurance-personalnumber"})),y.createElement(ia,null,y.createElement(Vr,{htmlFor:"input-insurance-mileage"},"Uppskattad k\xF6rstr\xE4cka per \xE5r"),y.createElement(ln,{value:i.drivingDistance,onChange:b,options:d,unit:"mil",title:"Uppskattad k\xF6rstr\xE4cka per \xE5r"})))),y.createElement(H,null,y.createElement(Je,{fullWidth:!0,disabled:!cn(i.ssn)||c,onClick:m},y.createElement(I,null,"Visa f\xF6rs\xE4kringar")))),!1,y.createElement(X,null,y.createElement(M,{small:!0},y.createElement("p",null,"Spara personnummer p\xE5 denna dator f\xF6r att direkt visa f\xF6rs\xE4kringskostnaderna i Wayke. Personnumret lagras inte hos Wayke utan finns bara sparad i din webbl\xE4sare.")))),c&&y.createElement(u,null,y.createElement(Qe,null)),A&&y.createElement(u,null,y.createElement(Fr,{severity:"error",icon:!0,heading:"Ett fel har intr\xE4ffat"},"Kunde inte h\xE4mta f\xF6rs\xE4kringar. V\xE4nligen f\xF6rs\xF6k igen.")),y.createElement(y.Fragment,null,p?.insurances&&y.createElement(u,null,p?.insurances.map(g=>y.createElement(u,{key:g.name},y.createElement(nm,{heading:`${v(g.price)} ${g.unit}`,description:g.name},y.createElement(u,null,y.createElement(y.Fragment,null,g.description&&y.createElement(H,null,y.createElement(M,null,y.createElement("p",null,g.description)))),y.createElement(y.Fragment,null,g.url&&y.createElement(H,null,y.createElement(O,{as:"a",href:g.url||"",target:"_blank",rel:"noopener noreferrer nofollow"},"F\xF6rk\xF6psinformation och villkor (\xF6ppnas i ny flik)")))),g.items&&g.items.length>0&&y.createElement(u,null,y.createElement(di,null,"F\xF6rs\xE4kringen inneh\xE5ller"),g.items.map(x=>y.createElement(X,{key:x.name||""},y.createElement(ra,{title:x.name||""},x.description)))),g.addons&&g.addons.length>0&&y.createElement(u,null,y.createElement(di,null,"V\xE4lj till"),g.addons.map(x=>y.createElement(X,{key:x.title||""},y.createElement(Cm,null,y.createElement(aa,null,y.createElement(ra,{title:x.title||""},x.description)),y.createElement(aa,null,y.createElement(br,null,"+",x.price," ",x.unit))))))))))))},Mm=Sh;var Bh=({id:e,branch:t,insuranceOptions:r})=>{let[o,i]=Eh(!1),a=Mh(()=>i(!o),[o]);return r.length?ce.createElement(ce.Fragment,null,o&&ce.createElement(Mm,{id:e,branch:t,onClose:a,insuranceOptions:r[0]}),ce.createElement(u,null,ce.createElement(H,null,ce.createElement(At,null,"V\xE4lj till f\xF6rs\xE4kring")),ce.createElement(H,null,ce.createElement(ce.Fragment,null,r.map((l,s)=>ce.createElement(it,{key:`${l.url}-${s}`,logo:l.logotype||void 0,logoAlt:l.name||"Logotyp"},ce.createElement(Bt,null,"F\xE5 prisf\xF6rslag"),ce.createElement(nt,null,ce.createElement("p",null,ce.createElement(O,{onClick:a},"Mer information"))))))))):null},Bm=Bh;import pe,{useState as Lh,useCallback as Oh}from"react";import{marked as Hh}from"marked";import Lt from"react";import{marked as Dh}from"marked";var Th=({onClose:e,insuranceOptions:t})=>Lt.createElement(R,{title:t?.insuranceHeader??"F\xF6rs\xE4kring",onClose:e},t?.longDescription&&Lt.createElement(u,null,Lt.createElement(M,{dangerouslySetInnerHTML:{__html:Dh(t.longDescription)}})),t?.url&&Lt.createElement(u,null,Lt.createElement(O,{as:"a",href:t.url,target:"_blank",rel:"noopener noreferrer"},"L\xE4s mer om f\xF6rs\xE4kringen (\xD6ppnas i ett nytt f\xF6nster)")),t?.logotype&&Lt.createElement(u,null,Lt.createElement(le,{logo:t.logotype,alt:t.name||"Logotyp",wide:!0}))),Dm=Th;var Nh=({insuranceOptions:e})=>{let[t,r]=Lh(!1),o=Oh(()=>r(!t),[t]);return e.length?pe.createElement(pe.Fragment,null,t&&pe.createElement(Dm,{onClose:o,insuranceOptions:e[0]}),pe.createElement(u,null,pe.createElement(H,null,pe.createElement(At,null,e[0]?.insuranceHeader??"F\xF6rs\xE4kring")),pe.createElement(H,null,pe.createElement(pe.Fragment,null,e.map((i,a)=>pe.createElement(it,{key:`${i.url}-${a}`,logo:i.logotype||void 0,logoAlt:i.name||"Logotyp"},i.description&&pe.createElement(M,{dangerouslySetInnerHTML:{__html:Hh(i.description)}}),pe.createElement(nt,null,pe.createElement("p",null,pe.createElement(O,{onClick:o},"Mer information"))))))))):null},Tm=Nh;var Fh=({id:e,branch:t,insuranceOptions:r})=>r.length&&r.length>0?r[0].requiresDistance&&r[0].requiresPersonalNumber?Lm.createElement(Bm,{id:e,branch:t,insuranceOptions:r}):Lm.createElement(Tm,{insuranceOptions:r}):null,Om=Fh;import at from"react";import{marked as zh}from"marked";var Gh=({packageOption:e})=>e?at.createElement(Ze,null,at.createElement(u,null,at.createElement(_,{noMargin:!0},e.title)),e.description&&at.createElement(u,null,at.createElement(M,{dangerouslySetInnerHTML:{__html:zh(e.description)}})),e.link?.url&&at.createElement(u,null,at.createElement(O,{as:"a",href:e.link.url,target:"_blank",rel:"noopener noreferrer"},e.link.title?e.link.title:"L\xE4s mer (\xD6ppnas i ett nytt f\xF6nster)")),e.image&&at.createElement(u,null,at.createElement(le,{logo:e.image,alt:"Logotyp",wide:!0}))):null,Hm=Gh;import T,{useState as ed,useCallback as fn,useEffect as oy}from"react";import dn,{useCallback as la}from"react";import Kr,{useState as jh,useCallback as Nm}from"react";var Fm={},Jh=e=>e&&!!Fm[e],Qh=({title:e,value:t,type:r,onClickVisible:o,onClickValue:i})=>{let[a,l]=jh(()=>Jh(r)),s=Nm(()=>{i&&i()},[]),c=Nm(()=>{a||(Fm[r]=!0,l(!0),o&&o())},[a]),p=r==="tel"?"Ring":r==="mailto"?"Skicka ett mail till":"";return Kr.createElement(H,null,a?Kr.createElement(be,{onClick:s,as:"a",href:`${r}:${t}`,title:`${p} ${t}`,fullWidth:!0},Kr.createElement(I,null,t)):Kr.createElement(be,{onClick:c,title:e,fullWidth:!0},Kr.createElement(I,null,e)))},sa=Qh;import{parsePhoneNumberFromString as Wh}from"libphonenumber-js/core";var Yh={version:"1.7.53",country_calling_codes:{46:["SE"]},countries:{SE:["46","00","(?:[26]\\d\\d|9)\\d{9}|[1-9]\\d{8}|[1-689]\\d{7}|[1-4689]\\d{6}|2\\d{5}",[6,7,8,9,10],[["(\\d{2})(\\d{2,3})(\\d{2})","$1-$2 $3",["20"],"0$1",0,"$1 $2 $3"],["(\\d{3})(\\d{4})","$1-$2",["9(?:00|39|44)"],"0$1",0,"$1 $2"],["(\\d{2})(\\d{3})(\\d{2})","$1-$2 $3",["[12][136]|3[356]|4[0246]|6[03]|90[1-9]"],"0$1",0,"$1 $2 $3"],["(\\d)(\\d{2,3})(\\d{2})(\\d{2})","$1-$2 $3 $4",["8"],"0$1",0,"$1 $2 $3 $4"],["(\\d{3})(\\d{2,3})(\\d{2})","$1-$2 $3",["1[2457]|2(?:[247-9]|5[0138])|3[0247-9]|4[1357-9]|5[0-35-9]|6(?:[125689]|4[02-57]|7[0-2])|9(?:[125-8]|3[02-5]|4[0-3])"],"0$1",0,"$1 $2 $3"],["(\\d{3})(\\d{2,3})(\\d{3})","$1-$2 $3",["9(?:00|39|44)"],"0$1",0,"$1 $2 $3"],["(\\d{2})(\\d{2,3})(\\d{2})(\\d{2})","$1-$2 $3 $4",["1[13689]|2[0136]|3[1356]|4[0246]|54|6[03]|90[1-9]"],"0$1",0,"$1 $2 $3 $4"],["(\\d{2})(\\d{3})(\\d{2})(\\d{2})","$1-$2 $3 $4",["10|7"],"0$1",0,"$1 $2 $3 $4"],["(\\d)(\\d{3})(\\d{3})(\\d{2})","$1-$2 $3 $4",["8"],"0$1",0,"$1 $2 $3 $4"],["(\\d{3})(\\d{2})(\\d{2})(\\d{2})","$1-$2 $3 $4",["[13-5]|2(?:[247-9]|5[0138])|6(?:[124-689]|7[0-2])|9(?:[125-8]|3[02-5]|4[0-3])"],"0$1",0,"$1 $2 $3 $4"],["(\\d{3})(\\d{2})(\\d{2})(\\d{3})","$1-$2 $3 $4",["9"],"0$1",0,"$1 $2 $3 $4"],["(\\d{3})(\\d{2})(\\d{3})(\\d{2})(\\d{2})","$1-$2 $3 $4 $5",["[26]"],"0$1",0,"$1 $2 $3 $4 $5"]],"0",0,0,0,0,0,[["(?:(?:[12][136]|3[356]|4[0246]|6[03]|8\\d)\\d|90[1-9])\\d{4,6}|(?:1(?:2[0-35]|4[0-4]|5[0-25-9]|7[13-6]|[89]\\d)|2(?:2[0-7]|4[0136-8]|5[0138]|7[018]|8[01]|9[0-57])|3(?:0[0-4]|1\\d|2[0-25]|4[056]|7[0-2]|8[0-3]|9[023])|4(?:1[013-8]|3[0135]|5[14-79]|7[0-246-9]|8[0156]|9[0-689])|5(?:0[0-6]|[15][0-5]|2[0-68]|3[0-4]|4\\d|6[03-5]|7[013]|8[0-79]|9[01])|6(?:1[1-3]|2[0-4]|4[02-57]|5[0-37]|6[0-3]|7[0-2]|8[0247]|9[0-356])|9(?:1[0-68]|2\\d|3[02-5]|4[0-3]|5[0-4]|[68][01]|7[0135-8]))\\d{5,6}",[7,8,9]],["7[02369]\\d{7}",[9]],["20\\d{4,7}",[6,7,8,9]],["649\\d{6}|9(?:00|39|44)[1-8]\\d{3,6}",[7,8,9,10]],["75[1-8]\\d{6}",[9]],0,["10[1-8]\\d{6}",[9]],["74[02-9]\\d{6}",[9]],0,["77[0-7]\\d{6}",[9]]]]},nonGeographic:{}},zm=Yh;var Uh=zm,mn=e=>{try{return Wh(e.replace("-","").replace(/ /g,""),Uh)?.formatNational()||e}catch{return e}};var Rh=({contact:e,branch:t})=>{let r=e?.email||t?.contact?.email,o=e?.phonenumber||t?.contact?.phonenumber,i=la(()=>N.publish("MailVisible"),[]),a=la(()=>N.publish("PhonenumberVisible"),[]),l=la(()=>N.publish("PhonenumberCall"),[]);return!r&&!o?null:dn.createElement(dn.Fragment,null,r&&dn.createElement(sa,{onClickVisible:i,title:"Visa mailadress",value:r,type:"mailto"}),o&&dn.createElement(sa,{title:"Visa telefonnummer",value:mn(o),type:"tel",onClickVisible:a,onClickValue:l}))},Gm=Rh;import Xr from"react";import un from"styled-components";var jm=un.ul`
2793
- list-style: none;
2794
- padding: 0;
2795
- margin: 0;
2796
- `,Jm=un.li`
2797
- position: relative;
2798
- font-size: 0.875rem;
2799
-
2800
- & + & {
2801
- margin-top: ${n(.5)};
2802
- }
2803
- `,Qm=un.div.attrs(()=>({className:"wayke__theme wayke__color--primary-text"}))`
2804
- position: absolute;
2805
- left: 0;
2806
- top: 4px; // Magic number
2807
- font-size: 0.875em;
2808
- `,Ym=un.div`
2809
- padding-left: calc(1em + ${n(1)});
2810
- `;var An=({children:e})=>Xr.createElement(Jm,null,Xr.createElement(Qm,null,Xr.createElement(ut,{block:!0})),Xr.createElement(Ym,null,e)),Vh=({children:e})=>Xr.createElement(jm,null,e),Wm=Vh;import me,{useState as Zh,useCallback as Kh}from"react";import bt from"styled-components";var Um=bt.div`
2811
- padding: ${n(1.5)} ${n(2)};
2812
- background-color: ${e=>e.theme.color.accentDark};
2813
- border-radius: 3px;
2814
- font-size: 0.875rem;
2815
- `,Rm=bt.div`
2816
- display: flex;
2817
- align-items: center;
2818
- `,Vm=bt.div`
2819
- font-size: 0.875rem;
2820
- margin-top: ${n(1)};
2821
- `,Zm=bt.div`
2822
- flex: 1 1 auto;
2823
- display: flex;
2824
- align-items: center;
2825
- `,Km=bt.div`
2826
- flex-shrink: 0;
2827
- padding-left: ${n(1.5)};
2828
- font-size: 0.875rem;
2829
- `,ca=bt.div`
2830
- & + & {
2831
- margin-left: ${n(.75)};
2832
- }
2833
- `,Xm=bt(C).attrs(()=>({className:"wayke__theme wayke__color--primary-text"}))`
2834
- position: relative;
2835
- display: block;
2836
-
2837
- :before {
2838
- content: '';
2839
- position: absolute;
2840
- top: ${n(-.5)};
2841
- bottom: ${n(-.5)};
2842
- left: ${n(-.5)};
2843
- right: ${n(-.5)};
2844
- background-color: ${e=>e.theme.color.accentDark};
2845
- border-radius: 50%;
2846
- opacity: 0;
2847
- transition: opacity 200ms ease;
2848
- }
2849
-
2850
- > * {
2851
- position: relative;
2852
- z-index: 1;
2853
- }
2854
-
2855
- :hover {
2856
- :before {
2857
- opacity: 1;
2858
- }
2859
- }
2860
-
2861
- :active {
2862
- transform: scale(0.95);
2863
- }
2864
- `,qm=bt.div.attrs(()=>({className:"wayke__theme wayke__font--bold"}))`
2865
- font-size: 1rem;
2866
- `;var Xh=({title:e,body:t,actionTitle:r,children:o,onClick:i})=>{let[a,l]=Zh(!1),s=Kh(()=>l(!a),[a]);return me.createElement(me.Fragment,null,me.createElement(Um,null,me.createElement(Rm,null,me.createElement(Zm,null,me.createElement(ca,null,me.createElement(qm,null,e)),o&&me.createElement(ca,null,me.createElement(Xm,{onClick:s,title:"Mer information"},me.createElement(dt,{block:!0})))),r&&me.createElement(Km,null,me.createElement(O,{onClick:i,title:r},r))),t&&me.createElement(Vm,null,t)),a&&me.createElement(R,{title:e,onClose:s},o))},pa=Xh;import Oe,{useState as $h,useCallback as $m,useContext as _h}from"react";import{createContext as qh}from"react";var mr=qh({setCentralStorageId:e=>{}});var ey=({loading:e,connections:t,onClose:r})=>{let{centralStorageId:o,setCentralStorageId:i}=_h(mr),[a,l]=$h(o),s=$m(p=>{p&&i(p)},[]),c=$m(p=>l(p.currentTarget.value),[]);return a?Oe.createElement(R,{title:"Byt anl\xE4ggning",onClose:r},Oe.createElement(u,null,Oe.createElement(H,null,Oe.createElement(M,null,Oe.createElement("p",null,"V\xE4lj den anl\xE4ggning du vill visa kontaktuppgifter f\xF6r."))),Oe.createElement(H,null,Oe.createElement(Vr,null,"V\xE4lj anl\xE4ggning"),Oe.createElement(ln,{value:a,onChange:c,options:t?.map(p=>({value:p.id,displayName:p.name})),title:"V\xE4lj anl\xE4ggning"}))),Oe.createElement(u,null,Oe.createElement(Je,{disabled:e,fullWidth:!0,onClick:()=>s(a)},Oe.createElement(I,null,"V\xE4lj")))):null},gn=ey;import Ot from"react";import{marked as ty}from"marked";var ry=({packageOption:e,onClose:t})=>Ot.createElement(R,{title:e.title||"",onClose:t},e.image&&Ot.createElement(u,null,Ot.createElement(le,{logo:e.image,alt:e.title||void 0,wide:!0})),e.description&&Ot.createElement(u,null,Ot.createElement(M,{dangerouslySetInnerHTML:{__html:ty(e.description)}})),e.link?.href&&e.link.title&&Ot.createElement(u,null,Ot.createElement(O,{as:"a",href:e.link.href,target:"_blank",rel:"noopener noreferrer nofollow"},e.link.title))),_m=ry;var ny=({manufacturer:e,packageOptions:t,ecommerce:r,branch:o,contact:i,toggleEcomModal:a,loadingCentralStorageVehicle:l})=>{let[s,c]=ed(!1),p=fn(()=>c(!0),[]),A=fn(()=>c(!1),[]),[h,b]=ed(),m=fn(g=>b(g),[]),k=fn(()=>b(void 0),[]);oy(()=>{(o||i)&&s&&c(!1)},[o,i]);let d=e?.packageOption;return T.createElement(T.Fragment,null,s&&T.createElement(gn,{loading:l,connections:o?.connections,onClose:A}),h&&T.createElement(_m,{packageOption:h,onClose:k}),T.createElement(u,null,T.createElement(Wm,null,d?.title&&T.createElement(An,null,T.createElement(T.Fragment,null,"Inkl."," ",T.createElement(O,{onClick:()=>m({title:d?.title,image:d?.image,description:d?.description,link:d?.link})},d.title)," ","begagnatgaranti")),t?.map((g,x)=>T.createElement(An,{key:g.title||x},T.createElement(T.Fragment,null,"Inkl."," ",T.createElement(O,{onClick:()=>m({title:g?.title,image:g?.image,description:g?.description,link:g?.link})},g.title)))),r?.withHomeDelivery&&T.createElement(An,null,"Hemleverans"))),T.createElement(u,null,r&&r.enabled&&T.createElement(H,null,T.createElement(Je,{disabled:!!r.reserved,fullWidth:!0,onClick:a},T.createElement(I,null,"K\xF6p bilen online"))),r?.reserved&&T.createElement(H,null,T.createElement(pa,{title:"Bilen \xE4r reserverad",body:"Denna bil \xE4r reserverad av en annan k\xF6pare."},T.createElement(M,null,T.createElement("p",null,"Denna bil \xE4r reserverad av en annan k\xF6pare.")))),T.createElement(Gm,{branch:o,contact:i})),(o?.connections.length||0)>1&&T.createElement(u,null,T.createElement(pa,{title:"Centrallagerbil",actionTitle:"Byt anl\xE4ggning",onClick:p},T.createElement(M,null,T.createElement("p",null,"Denna bil tillh\xF6r ett centrallager och g\xE5r att k\xF6pa genom flera anl\xE4ggningar. Byt anl\xE4ggning f\xF6r att visa kontaktuppgifter till just den anl\xE4ggningen.")))))},td=ny;import de,{useCallback as my}from"react";import qr from"react";import ma from"styled-components";var rd=ma.div`
2867
- display: flex;
2868
- align-items: center;
2869
- `,od=ma.div`
2870
- flex: 1 1 auto;
2871
- `,nd=ma.div`
2872
- flex-shrink: 0;
2873
- padding-left: ${n(2)};
2874
- `;var iy=({children:e,onClick:t,actionTitle:r})=>qr.createElement(rd,null,qr.createElement(od,null,e),t&&r&&qr.createElement(nd,null,qr.createElement(mt,{as:"a",href:"#",onClick:t},qr.createElement(I,null,r)))),da=iy;import ua from"styled-components";var id=ua.div`
2875
- ${e=>e.theme.breakpoint.LtMd} {
2876
- ${Ce} & {
2877
- margin-left: ${n(-3)};
2878
- margin-right: ${n(-2)};
2879
- }
2880
- }
2881
-
2882
- ${e=>e.theme.breakpoint.LtSm} {
2883
- ${Ce} & {
2884
- margin-left: ${n(-2)};
2885
- margin-right: ${n(-1)};
2886
- }
2887
- }
2888
- `,ad=ua.ul`
2889
- display: flex;
2890
- align-items: flex-start;
2891
- list-style: none;
2892
- padding: 0;
2893
- margin: ${n(-1)};
2894
-
2895
- ${e=>e.theme.breakpoint.LtMd} {
2896
- ${Ce} & {
2897
- overflow: auto;
2898
- -webkit-overflow-scrolling: touch;
2899
- padding: 0 ${n(3)};
2900
-
2901
- :after {
2902
- content: '';
2903
- flex: 0 0 auto;
2904
- height: 1px;
2905
- width: ${n(2)};
2906
- }
2907
- }
2908
- }
2909
-
2910
- ${e=>e.theme.breakpoint.LtSm} {
2911
- ${Ce} & {
2912
- padding: 0 ${n(2)};
2913
-
2914
- :after {
2915
- width: ${n(1)};
2916
- }
2917
- }
2918
- }
2919
- `,sd=ua.li`
2920
- flex: 1 0 auto;
2921
- width: calc(100% - ${n(2)});
2922
- max-width: calc(100% - ${n(2)});
2923
- padding: ${n(1)};
2924
-
2925
- ${e=>e.theme.breakpoint.Sm} {
2926
- width: calc(50% - ${n(3)});
2927
- max-width: calc(50% - ${n(3)});
2928
- }
2929
-
2930
- ${e=>e.theme.breakpoint.Md} {
2931
- width: 33.333%;
2932
- max-width: 33.333%;
2933
- }
2934
- `;import{useContext as sy,useEffect as ly}from"react";import{createContext as ay}from"react";var hn=ay({moreLikeThisUrl:!1,loading:!1,error:!1,response:void 0,fetchRelated:e=>{}});var cy=e=>{let t=sy(hn);return ly(()=>{let r=new URLSearchParams;r.set("hits","3"),t.moreLikeThisUrl&&e&&r.set("id",e),t.fetchRelated(r)},[e]),t},ld=cy;var cd=/[0-9a-f]{8}-[0-9a-f]{4}-[0-5][0-9a-f]{3}-[089ab][0-9a-f]{3}-[0-9a-f]{12}$/,py=e=>e.replace(/[-[\]/{}()*+?.\\^$|]/g,"\\$&"),pd=e=>e?new RegExp(`${py(e)}${cd.source}`,"gi"):cd;var dy=({id:e,hashRoute:t,pathRoute:r,onClickSearchItem:o})=>{let{loading:i,response:a,moreLikeThisUrl:l}=ld(e),s=my(c=>{N.publish("ItemClicked",c),o&&o(c)},[]);return!a?.documentList.documents.length||a?.documentList.documents.length===0?null:i?de.createElement(Qe,null):de.createElement(ye,{accent:!0,large:!0,className:"wayke__theme wayke__color--accent-bg"},de.createElement(he,null,l?de.createElement(u,null,de.createElement(da,{onClick:()=>{}},de.createElement(_,{noMargin:!0},"Relaterade fordon"))):de.createElement(u,null,de.createElement(da,{onClick:()=>{},actionTitle:"Visa alla"},de.createElement(_,{noMargin:!0},"Senast inkomna"))),de.createElement(u,null,de.createElement(id,null,de.createElement(ad,null,a?.documentList.documents.map(c=>{let p=r?`/${r}`:"/",A=pd(r),h=window.location.pathname==="/"?`${p}${c._id}`:A.test(`${r}${e}`)?window.location.pathname.replace(A,`${r}${c._id}`):`${window.location.pathname}${p}${c._id}`;return de.createElement(sd,{key:c._id},de.createElement(To,{id:c._id,onClick:s,title:c.title,href:r?h:t?`#${c._id}`:void 0,image:c.featuredImage?.files?.[0]?.url,description:c.shortDescription,uspList:[{title:c.modelYear},{title:`${v(c.mileage)} mil`},{title:c.gearboxType},{title:c.fuelType}],price:`${v(c.price)} kr`,oldPrice:c.oldPrice!==void 0&&c.price<c.oldPrice?`${v(c.oldPrice)} kr`:void 0,pathRoute:r}))}))))))},md=dy;import He from"react";import{marked as uy}from"marked";var Ay=({packageOptions:e})=>e?He.createElement(He.Fragment,null,e.map((t,r)=>He.createElement(Ze,{key:t.title||r},He.createElement(u,null,He.createElement(_,{noMargin:!0},t.title)),t.description&&He.createElement(u,null,He.createElement(M,{dangerouslySetInnerHTML:{__html:uy(t.description)}})),t.link?.url&&He.createElement(u,null,He.createElement(O,{as:"a",href:t.link.url,target:"_blank",rel:"noopener noreferrer"},t.link.title?t.link.title:"L\xE4s mer (\xD6ppnas i ett nytt f\xF6nster)")),t.image&&He.createElement(u,null,He.createElement(le,{logo:t.image,alt:"Logotyp",wide:!0}))))):null,dd=Ay;import G,{useState as Ly,useCallback as Pd,useEffect as Oy}from"react";import Aa from"styled-components";var yn=Aa.div`
2935
- line-height: 1.2;
2936
- `,Ht=Aa.div`
2937
- display: flex;
2938
- align-items: flex-start;
2939
- margin: ${n(-1)};
2940
- `,Ne=Aa.div`
2941
- flex: 1 0 50%;
2942
- padding: ${n(1)};
2943
- `;import ue,{useMemo as ga}from"react";import hy from"react";import gy from"styled-components";var fy=e=>{let t=ne.color.textDark;return e==="positive"?t=ne.color.ui.positive:e==="negative"&&(t=ne.color.ui.negative),t},ud=gy.div.attrs(()=>({className:"wayke__theme wayke__font--bold"}))`
2944
- display: inline-block;
2945
- background-color: ${e=>fy(e.severity)};
2946
- padding: ${n(.75)} ${n(1.5)};
2947
- color: ${e=>e.theme.color.textLight};
2948
- border-radius: 3px;
2949
- font-size: 0.75rem;
2950
- line-height: 1.2;
2951
- `;var yy=({label:e,severity:t})=>hy.createElement(ud,{severity:t},e),Ad=yy;var fd=["monday","tuesday","wednesday","thursday","friday","saturday","sunday"],by=e=>{switch(e){case"monday":return"M\xE5n";case"tuesday":return"Tis";case"wednesday":return"Ons";case"thursday":return"Tor";case"friday":return"Fre";case"saturday":return"L\xF6r";case"sunday":return"S\xF6n"}},ky=[],xy=e=>fd.reduce((t,r)=>{let o=by(r),i=e[r],a=t?.[t.length-1];return a&&a.from==i?.from&&a.until===i?.until?t[t.length-1].titleTo=o:t.push({titleFrom:o,from:i?.from,until:i?.until}),t},ky.slice()),wy=e=>{let t=new Date().getDay(),r=fd[t===0?6:t-1],o=e[r];return{title:o?"\xD6ppetider idag":"St\xE4ngt idag",from:o?.from,until:o?.until}},gd=e=>{let t=e.split(":").map(r=>parseInt(r,10));return new Date().setHours(t[0],t[1]).valueOf()},vy=({openingHours:e})=>{let t=ga(()=>e?wy(e):null,[e]),r=ga(()=>{try{if(t?.from&&t?.until){let i=new Date().valueOf(),a=gd(t.from),l=gd(t.until);return i>=a&&i<=l}}catch{return!1}},[t]),o=ga(()=>e?xy(e):null,[e]);return o?ue.createElement(ue.Fragment,null,ue.createElement(X,null,ue.createElement(Ad,{label:r?"\xD6ppet":"St\xE4ngt",severity:r?"positive":"negative"})),ue.createElement(X,null,ue.createElement(yn,null,ue.createElement(Ht,null,ue.createElement(Ne,null,ue.createElement(br,null,t?.title)),ue.createElement(Ne,null,ue.createElement(br,null,t?.from?`${t.from}-${t.until}`:"St\xE4ngt"))),o.map(i=>ue.createElement(Ht,{key:i.titleFrom},ue.createElement(Ne,null,i.titleTo?`${i.titleFrom}-${i.titleTo}`:i.titleFrom),ue.createElement(Ne,null,i.from?`${i.from}-${i.until}`:"St\xE4ngt")))))):null},hd=vy;import Nt,{useState as Py,useCallback as Cy}from"react";var Iy=({phoneNumber:e})=>{let[t,r]=Py(!1),o=Cy(()=>!t&&r(!0),[t]);return Nt.createElement(Ht,null,Nt.createElement(Ne,null,"Telefonnummer"),Nt.createElement(Ne,null,t?Nt.createElement(kr,{as:"a",href:`tel:${e}`,title:`Ring ${e}`},Nt.createElement(I,null,e)):Nt.createElement(kr,{onClick:o,title:"Visa telefonnummer"},Nt.createElement(I,null,"Visa telefonnummer"))))},yd=Iy;import dr,{useState as By,useCallback as Dy}from"react";import{useContext as Ey}from"react";import{createContext as Sy}from"react";var bn=Sy({});var My=()=>Ey(bn),kn=My;import xn from"styled-components";var bd=xn.a`
2952
- display: block;
2953
- `,kd=xn.img`
2954
- display: block;
2955
- width: 100%;
2956
- border-radius: 3px;
2957
- `,xd=xn.a`
2958
- display: block;
2959
- position: relative;
2960
- width: 100%;
2961
- height: 0;
2962
- padding-bottom: 43.75%; // Proportions of Google Static Map (640x280)
2963
- background-image: linear-gradient(-15deg, #dfe4ce, #c1d6ea, #dfe4ce);
2964
- border-radius: 3px;
2965
- color: ${e=>e.theme.color.textDark};
2966
- `,wd=xn.div`
2967
- position: absolute;
2968
- top: 50%;
2969
- left: 50%;
2970
- transform: translate(-50%, -50%);
2971
- `;var Ty=({position:e})=>{let{googleMapsApiKey:t,googleMapsMarker:r}=kn(),[o,i]=By(!1),a=Dy(c=>{t&&(c.preventDefault(),i(!0))},[]);if(!e)return null;let{latitude:l,longitude:s}=e;return o&&t?dr.createElement(bd,{href:`http://maps.google.com/maps?q=${l},${s}`,title:"Visa p\xE5 Google Maps",target:"_blank",rel:"nofollow noopener noreferrer"},dr.createElement(kd,{src:`https://maps.googleapis.com/maps/api/staticmap?center=${l},${s}&zoom=10&size=640x280&maptype=roadmap&markers=${r?`icon:${encodeURIComponent(r)}`:""}%7C${l},${s}&key=${t}`,alt:"Karta"})):dr.createElement(xd,{href:`http://maps.google.com/maps?q=${l},${s}`,target:"_blank",rel:"noopener noreferrer nofollow",onClick:a},dr.createElement(wd,null,dr.createElement(be,{as:"div"},dr.createElement(I,null,"Visa karta"))))},vd=Ty;var Hy=({branch:e,loading:t})=>{let[r,o]=Ly(!1),i=Pd(()=>o(!0),[]),a=Pd(()=>o(!1),[]);return Oy(()=>{e&&r&&o(!1)},[e]),e?G.createElement(G.Fragment,null,r&&G.createElement(gn,{loading:t,connections:e?.connections,onClose:a}),G.createElement(u,null,G.createElement(_,{noMargin:!0},e?.location?.city?`Den h\xE4r bilen finns p\xE5 v\xE5r anl\xE4ggning i ${e?.location?.city}`:"Kontakt")),G.createElement(u,null,G.createElement(vd,{position:e?.location?.position})),(e?.connections?.length||0)>1&&G.createElement(u,null,G.createElement(M,null,G.createElement("p",null,"Denna bil tillh\xF6r ett centrallager och g\xE5r att k\xF6pa genom flera anl\xE4ggningar."," ",G.createElement(O,{as:"span",role:"button",onClick:i,inline:!0},"Klicka h\xE4r f\xF6r att visa kontaktuppgifter till en annan anl\xE4ggning"),"."))),G.createElement(u,null,G.createElement(Mp,null,G.createElement(u,null,G.createElement(yn,null,e?.location?.streetAddress&&e?.location?.city&&G.createElement(Ht,null,G.createElement(Ne,null,"Adress"),G.createElement(Ne,null,G.createElement(kr,null,G.createElement(I,null,`${e?.location?.streetAddress}, ${e?.location?.city}`)))),e?.contact?.phonenumber&&G.createElement(yd,{phoneNumber:mn(e.contact.phonenumber)}))),e?.openingHours&&G.createElement(u,null,G.createElement(hd,{openingHours:e.openingHours}))))):null},Cd=Hy;import{useContext as jy,useEffect as Jy}from"react";import{useQuery as zy}from"@apollo/client";import{gql as Id}from"@apollo/client";var Ny=Id`
2972
- fragment HoursOpen on HoursOpen {
2973
- from
2974
- until
2975
- }
2976
- `,Fy=Id`
2977
- query SearchItemBranch($id: ID!, $branch: ID) {
2978
- vehicle(id: $id, branch: $branch) {
2979
- contact {
2980
- name
2981
- email
2982
- phonenumber
2983
- avatar
2984
- }
2985
- branch {
2986
- connections {
2987
- id
2988
- name
2989
- location {
2990
- city
2991
- county
2992
- streetAddress
2993
- postalCode
2994
- position {
2995
- latitude
2996
- longitude
2997
- }
2998
- }
2999
- }
3000
- contact {
3001
- name
3002
- email
3003
- phonenumber
3004
- avatar
3005
- }
3006
- id
3007
- description
3008
- name
3009
- homepage
3010
- flags {
3011
- mrf
3012
- centralStorage
3013
- ecommerce
3014
- }
3015
- logotype
3016
- openingHours {
3017
- monday {
3018
- ...HoursOpen
3019
- }
3020
- tuesday {
3021
- ...HoursOpen
3022
- }
3023
- wednesday {
3024
- ...HoursOpen
3025
- }
3026
- thursday {
3027
- ...HoursOpen
3028
- }
3029
- friday {
3030
- ...HoursOpen
3031
- }
3032
- saturday {
3033
- ...HoursOpen
3034
- }
3035
- sunday {
3036
- ...HoursOpen
3037
- }
3038
- }
3039
- organization {
3040
- branches {
3041
- id
3042
- }
3043
- parent {
3044
- id
3045
- }
3046
- }
3047
- location {
3048
- position {
3049
- latitude
3050
- longitude
3051
- }
3052
- city
3053
- county
3054
- streetAddress
3055
- postalCode
3056
- }
3057
- promos {
3058
- description
3059
- image
3060
- title
3061
- }
3062
- services {
3063
- markdown
3064
- title
3065
- }
3066
- }
3067
- insuranceOptions {
3068
- insuranceHeader
3069
- institute
3070
- identifier
3071
- logotype
3072
- name
3073
- description
3074
- longDescription
3075
- url
3076
- insuranceText
3077
- requiresPersonalNumber
3078
- requiresDistance
3079
- terms
3080
- }
3081
- }
3082
- }
3083
- ${Ny}
3084
- `,Sd=Fy;var Gy=(e,t)=>zy(Sd,{variables:{id:e,branch:t},skip:!e||!t}),Ed=Gy;var Qy=e=>{let{centralStorageId:t,setCentralStorageId:r}=jy(mr),o=e?.branch?.connections,i=t?o?.find(s=>s.id===t)?.id:void 0,{data:a,loading:l}=Ed(e?.id,i);return Jy(()=>{if((o?.length||0)>0&&!(t?o?.find(c=>c.id===t):void 0)){let c=o?.[0];c&&r(c.id)}},[o]),{vehicle:(o?.length||0)>0?a?.vehicle:e,loading:l}},Md=Qy;import wn from"react";var Yy=()=>wn.createElement(pt,null,wn.createElement(ye,{large:!0},wn.createElement(he,null,wn.createElement(Ie,{noMargin:!0},"404")))),Bd=Yy;import vn from"react";var Wy=()=>vn.createElement(pt,null,vn.createElement(ye,{large:!0},vn.createElement(he,null,vn.createElement(Qe,null)))),Dd=Wy;import ee,{useCallback as sb,useEffect as lb,useMemo as cb,useState as pb}from"react";var xt=class{constructor(t){this.propertiesWithCategory=t=>!!this.properties[t].category?.id;this.propertiesWithoutCategory=t=>!this.propertiesWithCategory(t);this.isList=t=>t.type===xt.TEXT_LIST_TYPE;this.isNonList=t=>!this.isList(t);this.hasCategoryWithId=(t,r)=>this.properties[t].category?.id===r;this.propertiesWithSubCategory=t=>!!this.properties[t].category?.subCategory?.id;this.propertiesWithoutSubCategory=t=>!this.propertiesWithSubCategory(t);this.hasSubCategoryWithId=(t,r)=>this.properties[t].category?.subCategory?.id===r;this.properties=t}create(){let t=this.createTreeCategories(),r=this.getRootProperties();return r.length&&t.push({name:xt.DEFAULT_CATEGORY_NAME,id:xt.DEFAULT_CATEGORY_ID,subCategories:[],properties:r}),{categories:t}}getRootProperties(){return Object.keys(this.properties).filter(this.propertiesWithoutCategory).map(r=>this.properties[r]).filter(this.isNonList)}createTreeCategories(){let t=this.getCategories();return this.convertToTreeCategories(t)}getCategories(){return Object.keys(this.properties).filter(this.propertiesWithCategory).map(r=>this.properties[r].category).filter(xt.distinctCategories)}convertToTreeCategories(t){return t.map(r=>{let o=Object.keys(this.properties).filter(a=>this.hasCategoryWithId(a,r.id)).filter(this.propertiesWithoutSubCategory).map(a=>this.properties[a]).filter(this.isNonList),i=this.createTreeSubCategories(r.id);return{id:r.id,name:r.name,properties:o,subCategories:i}})}createTreeSubCategories(t){let o=this.getSubCategoriesOfCategory(t).map(l=>this.convertSubCategory(l)).filter(l=>l.properties.length>0),i=this.createListSubCategories(t);return o.concat(i)}getSubCategoriesOfCategory(t){return Object.keys(this.properties).filter(o=>this.hasCategoryWithId(o,t)).filter(this.propertiesWithSubCategory).map(o=>this.properties[o].category?.subCategory).filter(xt.distinctCategories)}convertSubCategory(t){let r=Object.keys(this.properties).filter(o=>this.hasSubCategoryWithId(o,t.id)).map(o=>this.properties[o]).filter(this.isNonList);return{id:t.id,name:t.name,properties:r,subCategories:[]}}createListSubCategories(t){return Object.keys(this.properties).filter(i=>this.hasCategoryWithId(i,t)).map(i=>this.properties[i]).filter(this.isList).filter(i=>i.value.length>0).map((i,a)=>({id:xt.LIST_CATEGORY_START_ID+a,name:i.name,properties:this.asBoolProperties(i),subCategories:[]}))}asBoolProperties(t){return t.value.map(i=>({name:i,value:!0,type:"bool",unit:t.unit,hint:t.hint}))}},kt=xt;kt.distinctCategories=(t,r,o)=>{let i=o.find(a=>a.id===t.id);return!!i&&o.indexOf(i)===r},kt.DEFAULT_CATEGORY_NAME="Okategoriserat",kt.DEFAULT_CATEGORY_ID=0,kt.TEXT_LIST_TYPE="text-list",kt.LIST_CATEGORY_START_ID=1e5;var Td=kt;var Ld=Object.freeze({1e3:1,71:2,2:3,1:4,8:5,6:6,119:7}),Uy=(e,t)=>{let r=Ld[e]||Number.MAX_SAFE_INTEGER,o=Ld[t]||Number.MAX_SAFE_INTEGER;return r<o?-1:o<r?1:0},Od=(e,t)=>{let r=Uy(`${e.id}`,`${t.id}`);return r!==0?r:e.name.localeCompare(t.name)};var $r=(e,t)=>e.name.localeCompare(t.name);var Hd=Object.freeze({Varum\u00E4rke:1,Modell:2,Version:3,Modell\u00E5r:4,Tillverknings\u00E5r:5,M\u00E4tarst\u00E4llning:6,V\u00E4xell\u00E5da:7,F\u00E4rg:8,Registreringsnummer:9,Br\u00E4nslegrupp:10,Kaross:11,Segment:12,Skatt:13,Malus:14,Bonus:15}),Ry=(e,t)=>{let r=Hd[e]||Number.MAX_SAFE_INTEGER,o=Hd[t]||Number.MAX_SAFE_INTEGER;return r<o?-1:o<r?1:0},Nd=(e,t)=>{let r=Ry(`${e.name}`,`${t.name}`);return r!==0?r:$r(e,t)};var Vy=e=>{e.categories.sort(Od),e.categories.forEach(t=>{t.id===1e3?t.properties.sort(Nd):(t.properties.sort($r),t.subCategories.forEach(r=>{r.properties.sort($r)}))})},Fd=Vy;var Zy=e=>JSON.parse(JSON.stringify(e)),ur=Zy;var zd=Object.freeze({abs:"F\xF6rhindrar att bromsarna l\xE5ser sig och reducerar bromsstr\xE4ckan.",acceleration:"Antal sekunder som bilen beh\xF6ver f\xF6r att ta sig till 100 km/h.",adultOccupantNCAP:"Po\xE4ngen f\xF6r skydd av vuxna best\xE4ms genom tester av frontalkrockar, sidokrockar och whiplash som utf\xF6rs f\xF6r att bed\xF6ma det skydd som bilen erbjuder f\xF6r vuxna f\xF6rare och passagerare samt bed\xF6ma tillg\xE4ngliga \xE5tg\xE4rder f\xF6r snabb och s\xE4ker r\xE4ddning.",aeb:"Bilen \xE4r utrustad med ett bromssystem som hj\xE4lper dig att undvika olyckor. Beroende p\xE5 vilken niv\xE5 av AEB bilen \xE4r utrustad med kan de uppt\xE4cka \xE4ven cyklister och fotg\xE4ngare, fr\xE4mst i l\xE4gre hastigheter i stadsmilj\xF6 men \xE4ven vid h\xF6gre hastigheter och landsv\xE4gsk\xF6rning. Bilen f\xF6rvarnar f\xF6raren om potentiell fara och hj\xE4lper \xE4ven till att bromsa f\xF6r att s\xE4kerst\xE4lla att olyckor undviks s\xE5 l\xE5ngt det g\xE5r.",airbagCutOffSwitch:"Det g\xE5r att koppla ur krockkudden p\xE5 passagerarsidan f\xF6r att kunna s\xE4tta dit en barnstol.",airbagDriver:"Krockkudde f\xF6r f\xF6raren.",airbagFrontal:"",airbagFrontalHead:"",airbagKnees:"",airbagPassenger:"Krockkudde f\xF6r passagerare.",airbagSideChest:"",airbagSidePelvis:"",alcolock:"F\xF6r att kunna starta bilen beh\xF6vs ett bl\xE5stest som m\xE4ter alkoholniv\xE5n.",androidAuto:"Bilen har st\xF6d f\xF6r dig med Androidtelefon att koppla upp den direkt till bilen. D\xE5 f\xF6ljer bland annat navigering, meddelanden samt musiken med fr\xE5n telefonen.",annualBonus:'Det h\xE4r fordonet \xE4r ber\xE4ttigat till klimatbonus. Bonusen delas ut till den f\xF6rsta registrerade \xE4garen efter 6 m\xE5nader. Klicka <a target="_blank" rel="noopener noreferrer" title="L\xE4s mer om bonus/malus" href="https://www.transportstyrelsen.se/bonusmalus">h\xE4r</a> f\xF6r att l\xE4sa mer.',annualMalus:"Bilen har en f\xF6rh\xF6jd skatt de tre f\xF6rsta \xE5ren och d\xE4refter g\xE4ller ordinarie skatt.",annualTax:"Summan fordonsskatt som m\xE5ste betalas varje \xE5r.",antiTheftAlarm:"Bilen har ett larmsystem vid f\xF6rs\xF6k till inbrott.",appConnect:"Med App Connect kan du koppla din mobiltelefon s\xE5 att anpassade appar syns direkt i bilens display. Fungerar b\xE5de f\xF6r iPhone och Android.",appleCarPlay:"Bilen har st\xF6d f\xF6r Apple i bilens inbyggda display, s\xE5 du enkelt kan koppla upp din telefon och prata med bilen med hj\xE4lp av Siri.",aux:"Bilen har en AUX-ing\xE5ng, f\xF6r att exempelvis spela musik fr\xE5n en telefon.",auxiliaryLamps:"",batteryCapacity:"Anger hur m\xE5nga kilowatt-timmar batteriet innehar.",batteryWarrantyDistance:"",batteryWarrantyTime:"",blindSpotWarner:"En varningslampa indikerar i ytterbackspegeln n\xE4r ett fordon befinner sig i d\xF6da vinkeln.",bluetooth:"Bilen kan ansluta enheter via Bluetooth, f\xF6r exempelvis mobilsamtal eller musik.",bluetoothAudio:"Bilen kan ansluta enheter via Bluetooth f\xF6r att lyssna p\xE5 musik.",bluetoothPhone:"Bilen kan ansluta enheter via Bluetooth f\xF6r telefonsamtal.",brakeAssistance:"S\xE4kerhetssystem som kan hj\xE4lpa till att bromsa och undvika olyckor.",carDamageWarrantyDistance:"",carDamageWarrantyTime:"",centerDisplay:"Bilen har en sk\xE4rm mitt i bilen, mellan f\xF6rare och passagerare.",centralLocking:"Elektriskt l\xE5ssystem, som g\xF6r att alla d\xF6rrar l\xE5ses och \xF6ppnas samtidigt.",chargeTimeNormal:"Hur l\xE5ng tid tar det att ladda bilen i ett standard eln\xE4t.",chargeTimeQuick:"Hur l\xE5ng tid tar det att ladda bilen med en snabbladdare anpassad f\xF6r laddning av elbilar.",chassis:"Vilken typ/form bilen har.",childOccupantNCAP:"Bed\xF6mningen av skyddet av barn t\xE4cker tre viktiga aspekter: det skydd som erbjuds av bilbarnstolar i frontal- och sidokrockstest; fordonets m\xF6jligheter att inhysa bilbarnstolar med olika storlek och utformning; och tillg\xE4ngliga \xE5tg\xE4rder f\xF6r s\xE4ker transport av barn i bilen.",childSafetyLocks:"D\xF6rrarna l\xE5ses automatiskt n\xE4r man k\xF6r iv\xE4g, s\xE5 att de inte ska \xF6ppnas under k\xF6rning.",childSeatBeltPassenger:"Passagerars\xE4tet har utf\xE4llbar sittkudde f\xF6r barn.",childSeatBeltRear:"Baks\xE4tet har utf\xE4llbar sittkudde f\xF6r barn.",co2:"Anger hur mycket koldioxid fordonet sl\xE4pper ut enligt m\xE4tmetoden NEDC baserat p\xE5 teoretisk k\xF6rning.",colorName:"",combinedEmissionsWLTP:"Anger hur mycket koldioxid fordonet sl\xE4pper ut enligt m\xE4tmetoden WLTP baserat p\xE5 verklig k\xF6rning.",cruiseControl:"Hj\xE4lpmedel som h\xE5ller bilens hastighet automatiskt.",curtainAirbags:"",displacementCC:"Den sammanlagda volymen av motorns cylindrar. M\xE4ts i kubikcentimeter.",displacementLitres:"Den sammanlagda volymen av motorns cylindrar. M\xE4ts i liter.",driverAlertnessDetection:"Varningssignal uppst\xE5r n\xE4r k\xF6rningss\xE4ttet tyder p\xE5 bristande uppm\xE4rksamhet.",drivingWheel:"Vilka hjul som motorn ger kraft till och snurrar.",electricalEngine:"",electricalRange:"R\xE4ckvidd enligt m\xE4tmetoden WLTP baserat p\xE5 verklig k\xF6rning",electricalRangeEPA:"R\xE4ckvidd enligt den amerikanska m\xE4tmetoden EPA. Enligt m\xE5nga den allra str\xE4ngaste metoden.",electricalRangeNEDC:"R\xE4ckvidd enligt m\xE4tmetoden NEDC baserat p\xE5 teoretisk k\xF6rning.",electricalRangeWLTP:"R\xE4ckvidd enligt m\xE4tmetoden WLTP baserat p\xE5 verklig k\xF6rning.",electricalSeatDriver:"Bilens f\xF6rarstol g\xE5r att man\xF6vrera med el f\xF6r mjukare och mer precis positionering.",electricalSeatPassenger:"Bilens passagerarstol g\xE5r att man\xF6vrera med el.",emergencyCalling:"Bilen kan automatiskt larma SOS vid en olycka.",engineConfiguration:"Anger fordonets typ av motor, vilken typ av cylindrar den innehar.",engineCylinders:"Antalet ger en indikation p\xE5 motorns storlek. Ett 'vanligt' antal ligger p\xE5 4 st.",engineName:"",engineVolume:"",enrichmentProviderEquipPackages:"",enrichmentProviderExteriorPackages:"",enrichmentProviderInteriorPackages:"",enrichmentProviderTrimPackages:"",environmentClass:"Anv\xE4nds f\xF6r att st\xE4lla krav p\xE5 fordonets utsl\xE4pp.",finish:"",fuelConsumptionCityDriving:"Br\xE4nslef\xF6rbrukning vid stadsk\xF6rning.",fuelConsumptionCountryRoadDriving:"Br\xE4nslef\xF6rbrukning vid landsv\xE4gsk\xF6rning.",fuelConsumptionMixedDriving:"Br\xE4nslef\xF6rbrukning vid blandad k\xF6rning. Dvs. stadsk\xF6rning och landsv\xE4gsk\xF6rning under en och samma f\xE4rd.",fuelType:"Vad bilen ska tankas med och drivs av.",gearboxName:"",gestureControls:"Mittsk\xE4rmen g\xE5r att man\xF6vrera med r\xF6relser.",gps:"Bilen \xE4r utrustad med navigationsutrustning s\xE5 du enkelt kan ta dig dit du ska.",grossWeight:"Anger bilens vikt inklusive max till\xE5ten lastvikt.",groundClearence:"Avst\xE5ndet mellan bilens undersida och marken.",hasAutomaticGearbox:"",hdmi:"Bilen har en HDMI-port.",headRoomFront:"L\xE4gsta takh\xF6jden i frams\xE4tet.",headRoomRear:"L\xE4gsta takh\xF6jden i baks\xE4tet.",headUpDisplay:"Bilen \xE4r utrustad med en projicerad display i ditt synf\xE4lt, s\xE5 du kan se exempelvis nuvarande hastighet utan att beh\xF6va v\xE4nda bort blicken fr\xE5n v\xE4gen.",heatedSteeringWheel:"",height:"Avst\xE5ndet fr\xE5n bilens undersida till \xF6versida.",hybridComponentsWarrantyDistance:"",hybridComponentsWarrantyTime:"",interiorMaterial:"Material p\xE5 interi\xF6ren i bilen, dvs detaljer i bilens insida.",isofixRearSeat:"Universell f\xE4stanordning f\xF6r barnstolar.",keylessEntry:"Bilens d\xF6rrar och bagage \xF6ppnas n\xE4r den k\xE4nner av att bilnyckeln \xE4r i n\xE4rheten och du tar tag i handtaget. Du beh\xF6ver d\xE4rmed inte anv\xE4nda nyckeln i sig f\xF6r att \xF6ppna bilens d\xF6rrar. ",keylessStart:"Bilen startas med ett knapptryck ist\xE4llet f\xF6r att bilnyckeln beh\xF6ver vridas om. Det r\xE4cker med att bilnyckeln befinner sig i bilen (kan du mao ha den i fickan hela bilresan).",laneAssistance:"Funktion som hj\xE4lper till att h\xE5lla bilen inom k\xF6rf\xE4ltet.",legRoomFront:"Avst\xE5nd mellan instrumentpanelen och frams\xE4te.",legRoomRear:"Avst\xE5nd mellan frams\xE4tets rygg och baks\xE4tet",length:"Avst\xE5ndet fr\xE5n bilens baksida till framsida.",lowBeam:"",mainBeam:"",mainBeamAssistance:"Bilen sl\xE5r p\xE5 och av helljuset per automatik, s\xE5 du slipper g\xF6ra det sj\xE4lv.",manufactureYear:"\xC5ret bilen tillverkades.",massage:"Bilens s\xE4te har inbyggd massage.",maxLoadWeight:"",maxRoofWeight:"Hur m\xE5nga kilo last taket klarar av.",maxSpeed:"H\xF6gsta hastigheten som bilen g\xE5r att k\xF6ra.",maxTrailerLoadBraked8Percent:"",maxTrailerLoadUnbraked:"Vikten du f\xE5r dra p\xE5 ett sl\xE4p som inte \xE4r utrustat med egna bromsar.",mildHybrid:"Bilen \xE4r utrustad med en elmotor som fungerar b\xE5de som startmotor och generator och st\xF6ttar f\xF6rbr\xE4nningsmotorn, vilket ger l\xE4gre br\xE4nslef\xF6rbrukning och d\xE4rmed minskade utsl\xE4ppsniv\xE5er.",mileage:"Antal mil som bilen har k\xF6rts. I bilen anges det i kilometer ist\xE4llet.",modelName:"Vilket utf\xF6rande av bilmodellen det \xE4r.",modelYear:"Modell\xE5r s\xE4tts av tillverkaren. Handlaren \xE4ndrar ibland modell\xE5ret f\xF6r att matcha transportstyrelsens definition f\xF6r <i>\xE5rsmodell</i>. Definitionen f\xF6r \xE5rsmodell inneb\xE4r att bilar tillverkade andra halvan av \xE5ret f\xE5r n\xE4sta \xE5rs modell\xE5r.",ncapStar:"Universellt s\xE4kerhetsbetyg f\xF6r bilar, fler stj\xE4rnor inneb\xE4r h\xF6gre s\xE4kerhet. Skalan g\xE5r fr\xE5n 0 till 5 d\xE4r 5 \xE4r det h\xF6gsta betyget. S\xE5 h\xE4r beskriver Euro NCAP sj\xE4lva att slutbetyget ska utl\xE4sas: <br/><br/>5 stj\xE4rnor: Som helhet utm\xE4rkt prestanda inom krockskydd och v\xE4l utrustad med omfattande teknik f\xF6r att undvika kollisioner<br/><br/>4 stj\xE4rnor: Som helhet bra prestanda inom krockskydd, det kan finnas ytterligare teknik f\xF6r att undvika kollisioner<br/><br/>3 stj\xE4rnor: \xC5tminstone genomsnittligt passagerarskydd men inte alltid utrustad med de senaste funktionerna f\xF6r att undvika kollisioner<br/><br/>2 stj\xE4rnor: Nominellt krockskydd men saknar teknik f\xF6r att undvika kollisioner<br/><br/>1 stj\xE4rna: Marginellt krockskydd och viss teknik f\xF6r att undvika kollisioner<br/><br/>0 stj\xE4rnor: Uppfyller standarder f\xF6r typgodk\xE4nnande s\xE5 att fordonet f\xE5r s\xE4ljas men saknar kritisk modern s\xE4kerhetsteknik.",ncapYear:"\xC5ret som bilen s\xE4kerhets- och krocktestades.",newVehicleWarrantyDistance:"",newVehicleWarrantyTime:"",noiseReducingWindows:"Bilens rutor \xE4r ljudisolerade f\xF6r h\xF6gre komfort.",numberOfGears:"Antal v\xE4xlar i v\xE4xell\xE5dan.",numberOfSpeakers:"Anger totalt antal h\xF6gtalare i bilen, ju fler h\xF6gtalare desto h\xE4ftigare ljud!",numberOfUSBPorts:"",otherAirbags:"",parkingAssistance:"Funktion som assisterar vid fickparkering.",parkingSensorsFront:"Ljudsignal som indikerar n\xE4r bilens fr\xE4mre del n\xE4rmar sig ett objekt.",parkingSensorsRear:"Ljudsignal som indikerar n\xE4r bilens bakre del n\xE4rmar sig ett objekt.",pedestrianNCAP:"Euro NCAP bed\xF6mer hur v\xE4l bilar skyddar sina passagerare men testar \xE4ven hur bilar skyddar oskyddade trafikanter \u2013 fotg\xE4ngare och cyklister \u2013 som de kan kollidera med.",preHeater:"V\xE4rmer motorn n\xE4r det \xE4r kallt ute f\xF6r att underl\xE4tta start.",rainSensors:"Vindrutetorkarna aktiveras och anpassas automatiskt i f\xF6rh\xE5llande till regnet.",remoteStart:"M\xF6jligg\xF6r att du kan starta bilens motor med hj\xE4lp av exempelvis en app i telefonen",rimSize:"F\xE4lgstorlek angivet i tum.",roofColor:"N\xE5gon del av bilen, ex taket skiljer sig i kul\xF6r mot \xF6vriga bilen.",roofRailing:"Bilen har takreling som du kan f\xE4sta takr\xE4cken i.",safetyAssistNCAP:"Po\xE4ngen f\xF6r f\xF6rarst\xF6dsystem best\xE4ms genom tester av de viktigaste f\xF6rarst\xF6d teknikerna som st\xF6der s\xE4ker k\xF6rning f\xF6r att undvika och begr\xE4nsa olyckor.",seats:"Antal personer som f\xE5r \xE5ka i bilen.",segment:"Vilken typ av bil det handlar om - t.ex. familjebil",serviceWeight:"Anger hur mycket bilen v\xE4ger med en passagerare som v\xE4ger ca 75kg.",shoulderRoomFront:"Avst\xE5nd i bredd f\xF6r bilens frams\xE4te.",shoulderRoomRear:"Avst\xE5nd i bredd f\xF6r bilens baks\xE4te.",sideMirrorFolding:"Bilens yttre backspeglar g\xE5r att automatiskt f\xE4lla in, exempelvis bra p\xE5 tr\xE5nga parkeringar.",speakerBrand:"",startAndStop:"Bilens motor stoppas n\xE4r bilen st\xE5r still f\xF6r att minska utsl\xE4ppen.",steeringWheelMaterial:"",sunRoof:"",tankVolume:"Antal liter br\xE4nsle som ryms i tanken.",timingBeltServiceIntervalDistance:"Bilen \xE4r utrustad med kamrem som m\xE5ste bytas vid olika distansintervall.",timingBeltServiceIntervalTime:"Bilen \xE4r utrustad med kamrem som m\xE5ste bytas vid olika tidsintervall.",tintedWindows:"Bilens rutor har en m\xF6rkare toning.",tiresFront:"D\xE4ckdimension fram. Presenteras i h\xF6jd/bredd och inom ett spann. D\xE4cken som sitter p\xE5 bilen m\xE5ste allts\xE5 falla inom det spannet.",tiresRear:"D\xE4ckdimension bak. Presenteras i h\xF6jd/bredd och inom ett spann. D\xE4cken som sitter p\xE5 bilen m\xE5ste allts\xE5 falla inom det spannet.",torque:"Bilens vridkraft. H\xF6g siffra m\xF6jligg\xF6r att t.ex. dra tunga sl\xE4p. Dieselmotorer har generellt mer vridmoment.",touchScreen:"Mittsk\xE4rmen i bilen \xE4r en peksk\xE4rm.",towHitch:"",towHitchDetachable:"",towHitchFoldable:"",trafficSignRecognition:"Bilen \xE4r utrustad med kameror som l\xE4ser av g\xE4llande trafikskyltar.",trailerTotalWeightB:"Vikten man f\xE5r dra med sl\xE4p och ett vanligt B-k\xF6rkort.",transmissionKnobMaterial:"",trcSystem:"F\xE5r bilen att skicka kraft till hjulet som har b\xE4sta kontakt med underlaget.",tripComputer:"I f\xE4rddatorn som sitter framf\xF6r ratten kan du se lite information om motorn och br\xE4nslef\xF6rbrukningen, bland annat kan du ofta l\xE4sa ut den \xE5terst\xE5ende k\xF6rstr\xE4ckan p\xE5 nuvarande br\xE4nslevolym.",trunkDepth:"",trunkHeight:"",trunkOutlet:"",trunkSpace:"Volym p\xE5 bagageutrymmet med uppf\xE4llda s\xE4ten. Det m\xE4ts i liter.",trunkSpaceFront:"",trunkWidth:"",typeOfElectricCar:"Anger om bilen drivs av el eller om den \xE4r en hybrid av el och br\xE4nsle.",upholstery:"",usb:"Bilen \xE4r utrustad med en USB-port",ventilatedSeats:"Bilens stolar har ventilation inbyggd, bland annat bra f\xF6r att f\xE5 bort fukt fr\xE5n s\xE4tena.",wheelBase:"Avst\xE5ndet mellan fram- och bakhjul.",wiFi:"Bilen \xE4r utrustad med ett internt WIFI som du kan koppla upp dina egna enheter mot.",width:"Avst\xE5ndet mellan bilens b\xE5da yttre l\xE5ngsidor.",windowLifts:"",wirelessPhoneCharger:"Bilen \xE4r utrustad med induktionsladdare, s\xE5 att telefoner som st\xF6djer tr\xE5dl\xF6s laddning kan laddas i bilen utan laddningssladd."}),Ky=e=>{let t=ur(e);return Object.keys(t).forEach(o=>{zd[o]&&(t[o].hint=zd[o])}),t},Gd=Ky;var Ar="text",Pn="number",st=Object.freeze({id:1e3,name:"Basuppgifter",subCategory:null}),Xy=Object.freeze({id:6,name:"Motor & Prestanda",subCategory:{id:54,name:"Motor",subCategory:null}}),Be=class{constructor(){this.name="";this.value="";this.type="unknown";this.unit=null;this.hint=null;this.category=null}withName(t){return this.name=t,this}withValue(t){return this.value=t,this}withType(t){return this.type=t,this}withCategory(t){return this.category=t,this}withUnit(t){return this.unit=t,this}build(){return{name:this.name,value:this.value,type:this.type,unit:this.unit,hint:this.hint,category:this.category}}},jd=(e,t)=>{let r=ur(t);return e.manufacturer&&(r.manufacturer=new Be().withName("Varum\xE4rke").withValue(e.manufacturer).withType(Ar).withCategory(st).build()),e.modelSeries&&(r.modelSeries=new Be().withName("Modell").withValue(e.modelSeries).withType(Ar).withCategory(st).build()),e.modelName&&(r.modelName=new Be().withName("Version").withValue(e.modelName).withType(Ar).withCategory(st).build()),e.modelYear&&(r.modelYear=new Be().withName("Modell\xE5r").withValue(e.modelYear).withType(Pn).withCategory(st).build()),e.manufactureYear&&(r.manufactureYear=new Be().withName("Tillverknings\xE5r").withValue(e.manufactureYear).withType(Pn).withCategory(st).build()),e.mileage&&(r.mileage=new Be().withName("M\xE4tarst\xE4llning").withValue(e.mileage).withType(Pn).withCategory(st).withUnit("mil").build()),e.gearboxType&&(r.gearboxType=new Be().withName("V\xE4xell\xE5da").withValue(e.gearboxType).withType(Ar).withCategory(st).build()),e.registrationNumber&&(r.registrationNumber=new Be().withName("Registreringsnummer").withValue(e.registrationNumber).withType(Ar).withCategory(st).build()),e.fuelType&&(r.fuelType=new Be().withName("Br\xE4nslegrupp").withValue(e.fuelType).withType(Ar).withCategory(st).build()),e.enginePower&&(r.enginePower=new Be().withName("Effekt").withValue(e.enginePower).withUnit("hk").withType(Pn).withCategory(Xy).build()),r};var qy=Object.freeze(["towHitchFoldable"]),$y=e=>qy.includes(e),_y=Object.freeze([1,2,6,8,71,119,1e3]),eb=e=>!e.category||!e.category.id||!_y.includes(e.category.id),Jd=e=>{let t=ur(e);return Object.keys(e).forEach(r=>{let o=e[r];(eb(o)||$y(r))&&delete t[r]}),t};import De,{useState as tb,useCallback as rb}from"react";import gr from"styled-components";var fa=gr.ul`
3085
- list-style: none;
3086
- padding: 0;
3087
- margin: 0;
3088
- border-top: 1px solid ${e=>e.theme.color.border};
3089
- border-bottom: 1px solid ${e=>e.theme.color.border};
3090
- font-size: 0.875rem;
3091
- `,Qd=gr.li`
3092
- display: flex;
3093
- align-items: center;
3094
- padding: ${n(1)} 0;
3095
-
3096
- & + & {
3097
- border-top: 1px solid ${e=>e.theme.color.border};
3098
- }
3099
- `,Yd=gr.div`
3100
- flex: 1 1 auto;
3101
- `,Wd=gr.div`
3102
- flex-shrink: 0;
3103
- padding-left: ${n(1)};
3104
- `,Ud=gr.div`
3105
- color: ${e=>e.theme.color.ui.positive};
3106
- `,Rd=gr.div`
3107
- color: ${e=>e.theme.color.ui.negative};
3108
- `;var ob=(e,t)=>typeof e=="boolean"?e?De.createElement(Ud,{title:"Ja"},De.createElement(wr,null,"Ja"),De.createElement(ut,{block:!0})):De.createElement(Rd,{title:"Nej"},De.createElement(wr,null,"Nej"),De.createElement(We,{block:!0})):Array.isArray(e)?e.join(", "):!!e&&!!t?`${e} ${t}`:e,nb=({name:e,hint:t,value:r,unit:o})=>{let[i,a]=tb(!1),l=rb(()=>a(!i),[i]),s=ob(r,o);return De.createElement(Qd,null,De.createElement(Yd,null,t?De.createElement(O,{onClick:l,title:`Mer information om ${e}`},e):e),De.createElement(Wd,null,r!==void 0?s:"Uppgift saknas"),t&&i&&De.createElement(R,{title:e,onClose:l},De.createElement(M,{dangerouslySetInnerHTML:{__html:t}})))},ha=nb;import*as _r from"react";import Cn,{css as ib}from"styled-components";var Vd=Cn.div`
3109
- overflow: hidden;
3110
- margin-top: ${n(-1)};
3111
- margin-left: ${n(-1)};
3112
- margin-right: ${n(-1)};
3113
-
3114
- ${e=>e.theme.breakpoint.LtSm} {
3115
- margin-left: ${n(-2)};
3116
- margin-right: ${n(-2)};
3117
- }
3118
- `,Zd=Cn.ul`
3119
- list-style: none;
3120
- padding: 0;
3121
- margin: 0;
3122
- overflow: auto;
3123
- -webkit-overflow-scrolling: touch;
3124
- white-space: nowrap;
3125
- font-size: 0;
3126
-
3127
- ${e=>e.theme.breakpoint.LtSm} {
3128
- padding-left: ${n(1)};
3129
- padding-right: ${n(1)};
3130
- }
3131
- `,Kd=Cn.li`
3132
- display: inline-block;
3133
- vertical-align: bottom;
3134
- font-size: 1rem;
3135
- `,Xd=Cn(C).attrs(()=>({role:"tab",className:"wayke__theme wayke__font--bold"}))`
3136
- position: relative;
3137
- display: block;
3138
- padding: ${n(1)};
3139
- color: ${e=>e.theme.color.textDarkLighten};
3140
-
3141
- :hover {
3142
- color: ${e=>e.theme.color.textDark};
3143
- }
3144
-
3145
- :after {
3146
- content: '';
3147
- position: absolute;
3148
- bottom: 0;
3149
- left: ${n(1)};
3150
- right: ${n(1)};
3151
- height: 2px;
3152
- background-color: ${e=>e.theme.color.textDark};
3153
- transform: scaleY(0);
3154
- transition: transform 200ms ease;
3155
- z-index: 1;
3156
- }
3157
-
3158
- ${e=>e.active&&ib`
3159
- color: ${t=>t.theme.color.textDark};
3160
-
3161
- :after {
3162
- transform: scaleY(1);
3163
- }
3164
- `}
3165
- `;var ab=({tabs:e,active:t,onClick:r})=>_r.createElement(Vd,null,_r.createElement(Zd,null,e.map(o=>_r.createElement(Kd,{key:o.name},_r.createElement(Xd,{title:o.displayName,onClick:r?()=>r(o.name):void 0,active:o.name===t?"true":void 0},o.displayName))))),qd=ab;var mb=({name:e,properties:t})=>ee.createElement(u,null,ee.createElement(Fs,{as:"h3"},e),ee.createElement(fa,null,!!t.length&&t.map((r,o)=>ee.createElement(ha,{name:r.name,hint:r.hint,value:r.value,unit:r.unit,key:`${r.name}-${o}`})))),db=({properties:e,subCategories:t})=>ee.createElement("div",{className:"tab-section"},!!e.length&&ee.createElement(u,null,ee.createElement(fa,null,e.map((r,o)=>ee.createElement(ha,{name:r.name,hint:r.hint,value:r.value,unit:r.unit,key:`${r.name}-${o}`})))),!!t.length&&t.map((r,o)=>ee.createElement(mb,{name:r.name,properties:r.properties,key:`${r.name}-${o}`}))),ub=({propertySet:e,vehicleData:t})=>{let[r,o]=pb(-1),i=cb(()=>{if(!e)return;let s=Jd(e);s=jd(t,s);let c=Gd(s),p=new Td(c).create();return Fd(p),p},[e]);lb(()=>{let s=i?.categories?.length!==void 0?i?.categories:void 0;r<0&&s!==void 0&&s.length>0&&o(s[0].id)},[i]);let a=sb(s=>o(parseInt(s,10)),[]),l=i?.categories?.find(s=>s.id===r);return ee.createElement(ee.Fragment,null,ee.createElement(u,null,ee.createElement(qd,{tabs:i?.categories?.map(s=>({name:`${s.id}`,displayName:s.name}))||[],active:`${r}`,onClick:a})),l&&ee.createElement(u,null,ee.createElement(db,{properties:l.properties,subCategories:l.subCategories})))},$d=ub;import lt from"react";import Ft from"styled-components";var _d=Ft.li.attrs(()=>({className:"wayke__theme wayke__color--primary-text"}))`
3166
- flex: 0 0 50%;
3167
- padding: ${n(1)};
3168
-
3169
- ${({theme:e})=>e.breakpoint.LtSm} {
3170
- flex: 0 0 100%;
3171
- }
3172
- `,eu=Ft.ul`
3173
- list-style: none;
3174
- padding: 0;
3175
- display: flex;
3176
- flex-wrap: wrap;
3177
- margin: ${n(-1)};
3178
- `,tu=Ft.a.attrs(()=>({className:"wayke__theme wayke__color--primary-text wayke__font--bold"}))`
3179
- text-decoration: none;
3180
- font-size: 0.875rem;
3181
- &:after {
3182
- content: '';
3183
- position: absolute;
3184
- top: 0;
3185
- left: 0;
3186
- width: 100%;
3187
- height: 100%;
3188
- }
3189
- `,ru=Ft.div`
3190
- color: ${e=>e.theme.color.textDark};
3191
- `,ou=Ft.div`
3192
- color: ${e=>e.theme.color.textDarkLighten};
3193
- `,ya=Ft.div`
3194
- flex 0 0 auto;
3195
- &:first-child {
3196
- flex: 1 1 auto;
3197
- }
3198
- `,nu=Ft.div`
3199
- position: relative;
3200
- border: 1px solid ${e=>e.theme.color.border};
3201
- padding: ${n(1.5)};
3202
- display: flex;
3203
- align-items: center;
3204
- :hover {
3205
- background-color: ${e=>e.theme.color.hoverOverlay};
3206
- }
3207
- `;var Ab=({document:e})=>lt.createElement(_d,null,lt.createElement(nu,null,lt.createElement(ya,null,lt.createElement(ru,null,e.name),lt.createElement(ou,null,e.contentType)),lt.createElement(ya,null,lt.createElement(tu,{href:e.url,rel:"noopener noreferrer nofollow",target:"_blank"},"\xD6ppna")))),gb=({documents:e})=>lt.createElement(eu,null,e.map((t,r)=>lt.createElement(Ab,{key:`${t.url}-${r}`,document:t}))),iu=gb;var kb=({id:e,hashRoute:t,pathRoute:r,disableResetScrollOnInit:o,placeholderImage:i,modifyDocumentTitleItem:a,onClickSearchItem:l})=>{let{ecomSettings:s}=kn(),c=hb(),{loading:p,data:A}=Dp(e),{vehicle:h,loading:b}=Md(A?.vehicle);ba(()=>(s&&(c.current=new bb({id:e,ecomSdkConfig:{api:{address:s.url},bankIdThumbprint:s?.bankIdThumbprint},logo:s.serviceLogotypeUrl,onEvent(fe,Zn,Iu,Su){N.publish("EcomOnUserEvent",fe,Zn,Iu,Su)}})),()=>{c.current&&c.current.destroy()}),[]),ba(()=>{o||window.scrollTo(0,0)},[]),ba(()=>{if(A?.vehicle?.data&&a){let{vehicle:fe}=A,{registrationNumber:Zn}=fe.data;document.title=`${Zn} | ${fe.title} | ${fe.shortDescription}`}},[A]);let m=fb(()=>A?.vehicle?.data?.options?.filter(Pr).map(fe=>({title:fe})),[A?.vehicle?.data?.options]),k=yb(()=>N.publish("OptionsClick"),[]);if(p)return f.createElement(Dd,null);if(!A?.vehicle?.data)return f.createElement(Bd,null);let{vehicle:d}=A,g=h?.contact,x=h?.branch,{title:L,shortDescription:te,media:re,description:Ae,price:ve,financialOptions:E,manufacturer:D,ecommerce:w,packageOptions:Z,publishedAt:j,documents:oe}=d,ge=h?.insuranceOptions?h.insuranceOptions:d.insuranceOptions,{fuelType:Pe,mileage:Rn,gearbox:oo,modelYear:Vn,propertySet:no}=d.data,jt=[{title:Vn},{title:`${v(Rn)} mil`}];return oo&&jt.push({title:oo}),Pe&&jt.push({title:Pe}),f.createElement(f.Fragment,null,f.createElement(pt,null,f.createElement(ye,{large:!0},f.createElement(he,null,f.createElement(Sp,null,f.createElement(Ep,null,f.createElement(ar,{mobileOrder:1},!r&&t?f.createElement(u,null,f.createElement(ps,null,f.createElement(ds,{as:"a",href:"#",title:"Tillbaka till bils\xF6k"},f.createElement(I,null,f.createElement(Po,{block:!0})),f.createElement(I,null,"Tillbaka till bils\xF6k")))):null,D?.logotype&&f.createElement(u,null,f.createElement(le,{logo:D.logotype,alt:D.name})),f.createElement(u,null,f.createElement(X,null,f.createElement(Ie,{noMargin:!0},L)),te&&f.createElement(X,null,f.createElement("div",null,te)),f.createElement(X,null,f.createElement(Hr,{small:!0,items:jt})))),f.createElement(ar,{mobileOrder:2},f.createElement(gc,{price:ve})),(E.length>0||ge.length>0)&&f.createElement(ar,{mobileOrder:4},E.length>0&&f.createElement(qp,{id:e,financialOptions:E}),ge.length>0&&f.createElement(Om,{id:e,branch:h?.branch,insuranceOptions:ge})),f.createElement(ar,{mobileOrder:5},f.createElement(td,{manufacturer:D,packageOptions:Z,ecommerce:w,branch:x,contact:h?.contact,loadingCentralStorageVehicle:b,toggleEcomModal:()=>c.current?.start()}))),f.createElement(Zo,null,f.createElement(ar,{mobileOrder:3},f.createElement(Ip,{media:re,placeholderImage:i})),f.createElement(Ze,null,f.createElement(u,null,f.createElement(_,{noMargin:!0},"Biluppgifter")),f.createElement(u,null,f.createElement(M,null,f.createElement("p",null,"Information direkt fr\xE5n Transportstyrelsen och tillverkaren."))),f.createElement(u,null,f.createElement($d,{propertySet:no,vehicleData:d.data}))),Ae&&f.createElement(Ze,null,f.createElement(Ec,{author:g&&g.name?g.name:null,date:j?vr.format(j,vr.DayMonth):void 0,avatar:g?.avatar||void 0},!!Ae&&f.createElement("p",null,Ae))),(m?.length||0)>0&&f.createElement(Ze,null,f.createElement(u,null,f.createElement(_,{noMargin:!0},"Utrustning")),f.createElement(u,null,f.createElement(M,null,f.createElement("p",null,"Kompletterande uppgifter om bilen."))),f.createElement(u,null,f.createElement(Tc,{actionTitle:"Visa mer",onClick:k},f.createElement(Hr,{items:m})))),(oe.length||0)>0&&f.createElement(Ze,null,f.createElement(u,null,f.createElement(_,{noMargin:!0},"Dokument")),f.createElement(u,null,f.createElement(M,null,f.createElement("p",null,"Tillh\xF6rande dokument f\xF6r bilen."))),f.createElement(u,null,f.createElement(iu,{documents:oe}))),f.createElement(Ze,null,f.createElement(Cd,{branch:x,loading:b}),w&&w.enabled&&f.createElement(u,null,f.createElement(Je,{disabled:!!w.reserved,title:"K\xF6p bilen online",onClick:()=>c.current?.start()},"K\xF6p bilen online"))),f.createElement(dd,{packageOptions:Z}),f.createElement(Hm,{packageOption:D?.packageOption}))))),f.createElement(md,{id:e,hashRoute:t,pathRoute:r,onClickSearchItem:l})),!1,f.createElement(Ir,{id:Ue.DefaultPortal}))},ka=kb;import Pt from"react";import xb from"react";import{ApolloProvider as wb,ApolloClient as vb,InMemoryCache as Pb}from"@apollo/client";var Cb=({uri:e,children:t})=>{let r=new vb({uri:e,cache:new Pb});return xb.createElement(wb,{client:r},t)},In=Cb;import Ib from"react";import{ThemeProvider as Sb}from"styled-components";var Eb=({children:e})=>Ib.createElement(Sb,{theme:ne},e),eo=Eb;import Mb,{useState as Sn,useEffect as En,useCallback as xa}from"react";var au=()=>new URLSearchParams(window.location.search);var wa=new URLSearchParams;wa.set("hits","30");wa.set("sort","published-desc");var Bb=({url:e,apiKey:t,useQueryParamsFromUrl:r,pathRoute:o,children:i})=>{let{replaceState:a,pushState:l}=_t(),[s,c]=Sn({searchParams:wa}),[p,A]=Sn(),[h,b]=Sn(),[m,k]=Sn(!1),{data:d}=St(`${e}?hits=0`,{headers:t?{"x-api-key":t}:{}},!!p),g=s.searchParams.toString(),{loading:x,data:L,error:te}=St(`${e}${g?`?${g}`:""}`,{headers:t?{"x-api-key":t}:{}},!m||!!s?.block),re=w=>{let{currentTarget:Z}=w;if(Z){let j=new URLSearchParams(Z.location.search);j.has("sort")||j.set("sort","published-desc"),c({searchParams:j})}};En(()=>{r&&window.addEventListener("popstate",re);let w={actionName:"onFilterUpdate",callback:Ae};return N.subscribeAction(w),()=>{window.removeEventListener("popstate",re),N.unsubscribeAction(w)}},[]),En(()=>{d&&A(d.facets)},[d]),En(()=>{if(r){let w=new URLSearchParams(s.searchParams);w.delete("hits"),w.delete("offset"),w.get("sort")==="published-desc"&&w.delete("sort");let Z=w.toString()?`?${w}`:"";if(m&&window.location.search.localeCompare(Z)!==0){let j=o?.replace(/^\/|\/$/g,""),oe=j?`/${j}/`:"/",ge=j?window.location.pathname.indexOf(oe):-1,Pe=window.location.pathname;ge>-1&&(Pe=Pe.substr(0,ge)),l(`${Pe}${Z}`)}}},[s,m,r]),En(()=>{if(L){if(!p&&!r&&A(L.facets),r&&L.query?.parameters){let w=new URLSearchParams(L.query.parameters);w.delete("hits"),w.delete("offset");let Z=w.toString()?`?${w}`:"";window.location.search.localeCompare(Z)!==0&&(a(`${window.location.pathname}${Z}`),c({searchParams:new URLSearchParams(Z),block:!0}))}s?.concatResult?b([...h||[],...L.documentList.documents||[]]):b(L.documentList.documents||[])}},[L,r]);let Ae=xa(w=>{m||k(!0),c({searchParams:new URLSearchParams(w)})},[m]),ve=xa(()=>{L&&c({searchParams:new URLSearchParams(L?.documentList.pagination.nextPage?.query),concatResult:!0})},[L]),E=xa(w=>{if(!m){let Z=au(),j=r?Z:w;if(r&&w&&w.forEach((oe,ge)=>{j?.getAll(ge)?.some(Pe=>Pe===oe)||j?.append(ge,oe)}),j){let oe=new URLSearchParams(j);oe.delete("hits"),oe.delete("offset"),j.has("hits")||j.set("hits","30"),j.has("sort")||j.set("sort","published-desc");let ge=oe.toString()?`?${oe}`:"";c({searchParams:j}),a(`${window.location.pathname}${ge}`)}k(!0)}},[m]),D={loading:x,error:te,response:L,documents:h,initialFacets:p,queryFilter:s,onFilterUpdate:Ae,onLoadMore:ve,onInitialize:E};return Mb.createElement(wo.Provider,{value:D},i)},su=Bb;import Db from"styled-components";var Tb=Db.div.attrs(()=>({className:"wayke__theme wayke__font--regular"}))`
3208
- background-color: ${e=>e.theme.color.bg};
3209
- color: ${e=>e.theme.color.textDark};
3210
- font-size: 1rem;
3211
- line-height: 1.5;
3212
- -webkit-font-smoothing: antialiased;
3213
- -moz-osx-font-smoothing: grayscale;
3214
-
3215
- *,
3216
- *:before,
3217
- *:after {
3218
- box-sizing: border-box;
3219
- }
3220
-
3221
- a img {
3222
- border: 0;
3223
- }
3224
- `,Mn=Tb;var Ex=e=>{e?.url&&Promise.resolve().then(()=>(du(),mu)).then(({config:t})=>{t.bind({api:{address:e.url},origin:{topic:"Wayke",channel:"wayke.se"},bankIdThumbprint:e.bankIdThumbprint})})},jn=Ex;import Mx from"react";var Bx=({googleMapsApiKey:e,googleMapsMarker:t,ecomSettings:r,children:o})=>Mx.createElement(bn.Provider,{value:{ecomSettings:r,googleMapsApiKey:e,googleMapsMarker:t}},o),Jn=Bx;import Dx,{useState as Tx,useCallback as Lx}from"react";var Ox=({url:e,urlMlt:t,apiKey:r,children:o})=>{let[i,a]=Tx(),l=i?.searchParams.toString(),{loading:s,data:c,error:p}=St(`${t||e}${l?`?${l}`:""}`,{headers:r?{"x-api-key":r}:{}},!i),A=Lx(b=>a({searchParams:b}),[]),h={moreLikeThisUrl:!!t,loading:s,error:p,response:c,queryFilter:i,fetchRelated:A};return Dx.createElement(hn.Provider,{value:h},o)},Qn=Ox;import Fx,{useCallback as zx}from"react";import{useState as Hx,useCallback as Ua}from"react";var Nx=e=>{let[t,r]=Hx(sessionStorage.getItem(e)),o=Ua(l=>{sessionStorage.setItem(e,l),r(l)},[e]),i=Ua(()=>{sessionStorage.removeItem(e),r(null)},[e]),a=Ua(()=>{sessionStorage.clear(),r(null)},[e]);return{value:t,set:o,remove:i,clear:a}},uu=Nx;var Gx=({children:e})=>{let{value:t,set:r,remove:o}=uu("centralStorage"),i=zx(a=>a?r(a):o(),[]);return Fx.createElement(mr.Provider,{value:{centralStorageId:t,setCentralStorageId:i}},e)},Yn=Gx;import Wx,{useCallback as hu,useEffect as Ux,useMemo as yu,useReducer as Rx}from"react";import{useRef as jx,useEffect as Jx}from"react";var Qx=e=>{let t=jx();return Jx(()=>{t.current=e}),t.current},Au=Qx;var ro="SET_PATH",gu={path:window.location.pathname},Yx=(e,t)=>{let r={...e};switch(t.type){case ro:return r.path=t.path,r;default:throw new Error("Unsupported action type")}},fu=Yx;var Vx=/(\{){0,1}[0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}(\}){0,1}/g,bu="popstate",Zx=({children:e})=>{let[t,r]=Rx(fu,gu),o=Au(t.path);Ux(()=>{let c=()=>{r({type:ro,path:window.location.pathname})};return window.addEventListener(bu,c),()=>{window.removeEventListener(bu,c)}},[]);let i=hu(c=>{let p=window.location.hash;history.pushState(null,"",`${c}`);let A=window.location.hash;p.localeCompare(A)!==0&&window.dispatchEvent(new HashChangeEvent("hashchange")),r({type:ro,path:c})},[]),a=hu(c=>{let p=window.location.hash;history.replaceState(null,"",c);let A=window.location.hash;p.localeCompare(A)!==0&&window.dispatchEvent(new HashChangeEvent("hashchange")),r({type:ro,path:c})},[]),l=yu(()=>t.path.match(Vx)?.pop(),[t.path]),s=yu(()=>({...t,previousPath:o,id:l,pushState:i,replaceState:a}),[t]);return Wx.createElement(Do.Provider,{value:s},e)},Wn=Zx;var Kx=({url:e,urlMlt:t,apiKey:r,ecomSettings:o,graphQlUrl:i,googleMapsApiKey:a,googleMapsMarker:l,useQueryParamsFromUrl:s,pathRoute:c,children:p})=>(jn(o),Pt.createElement(Wn,null,Pt.createElement(Jn,{googleMapsApiKey:a,googleMapsMarker:l,ecomSettings:o},Pt.createElement(Yn,null,Pt.createElement(In,{uri:i},Pt.createElement(su,{url:e,apiKey:r,useQueryParamsFromUrl:s,pathRoute:c},Pt.createElement(Qn,{url:e,urlMlt:t,apiKey:r},Pt.createElement(eo,null,Pt.createElement(Mn,null,p))))))))),Ra=Kx;import Pu from"react";import Un,{useEffect as e0}from"react";import{useState as Xx,useEffect as qx}from"react";var xu=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-5][0-9a-f]{3}-[089ab][0-9a-f]{3}-[0-9a-f]{12}$/i,ku="hashchange",$x=()=>{let e=window.location.hash.substr(1,window.location.hash.length);return xu.test(e)||!e?e:void 0},_x=()=>{let[e,t]=Xx(()=>$x()),r=()=>{let o=window.location.hash.substr(1,window.location.hash.length);if(xu.test(o)||!o)t(window.location.hash.substr(1,window.location.hash.length));else throw"Invalid Guid"};return qx(()=>(r(),window.addEventListener(ku,r),()=>{window.removeEventListener(ku,r)}),[]),e},wu=_x;var t0=({filterList:e,initialQueryParams:t,removeSearchBar:r,removeFilterOptions:o,disableResetScrollOnInit:i,placeholderImage:a,pathRoute:l,modifyDocumentTitleItem:s,modifyDocumentTitleSearch:c})=>{let p=wu(),{id:A}=_t();e0(()=>{l||(p?N.publish("HashRouteChange",p):N.publish("HashRouteChange"))},[p]);let h=A||p;return Un.createElement(Un.Fragment,null,h?Un.createElement(ka,{id:h,hashRoute:!l,disableResetScrollOnInit:i,placeholderImage:a,pathRoute:l,modifyDocumentTitleItem:s}):Un.createElement(Hi,{filterList:e,initialQueryParams:t,removeSearchBar:r,hashRoute:!l,placeholderImage:a,pathRoute:l,removeFilterOptions:o,modifyDocumentTitleSearch:c}))},vu=t0;var r0=({provider:e,composite:t})=>Pu.createElement(Ra,{...e},Pu.createElement(vu,{...t})),Cu=r0;import Gt from"react";var o0=({url:e,urlMlt:t,apiKey:r,ecomSettings:o,graphQlUrl:i,googleMapsApiKey:a,googleMapsMarker:l,children:s})=>(jn(o),Gt.createElement(Wn,null,Gt.createElement(Jn,{googleMapsApiKey:a,googleMapsMarker:l,ecomSettings:o},Gt.createElement(Yn,null,Gt.createElement(In,{uri:i},Gt.createElement(Qn,{url:e,urlMlt:t,apiKey:r},Gt.createElement(eo,null,Gt.createElement(Mn,null,s)))))))),n0=o0;var y4=Cu;export{Oi as SearchBar,n0 as WaykeItemProvider,Ra as WaykeProvider,N as WaykePubSub,Hi as WaykeSearch,ka as WaykeSearchItem,eo as WaykeThemeProvider,y4 as default};
3225
- //# sourceMappingURL=index.mjs.map