@bpost/bp-address-auto-complete-by-component 1.1.0 → 1.1.3

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 (165) hide show
  1. package/VERSION.md +36 -0
  2. package/bpost-bp-address-auto-complete-by-component.d.ts +1 -11
  3. package/esm2020/bpost-bp-address-auto-complete-by-component.mjs +5 -0
  4. package/esm2020/lib/box-number/box-number.component.mjs +800 -0
  5. package/esm2020/lib/enum/address-level.enum.mjs +8 -0
  6. package/esm2020/lib/enum/index.mjs +7 -0
  7. package/esm2020/lib/enum/input-name.enum.mjs +8 -0
  8. package/esm2020/lib/enum/source-type.enum.mjs +5 -0
  9. package/esm2020/lib/enum/suggestion-level-type.enum.mjs +8 -0
  10. package/esm2020/lib/enum/validation-message-option-type.enum.mjs +6 -0
  11. package/esm2020/lib/enum/validation-message-type.enum.mjs +7 -0
  12. package/esm2020/lib/lib-address-autocomplete-by-component.component.mjs +1233 -0
  13. package/esm2020/lib/lib-address-autocomplete-by-component.module.mjs +65 -0
  14. package/esm2020/lib/lib-address-autocomplete-by-component.service.mjs +14 -0
  15. package/esm2020/lib/locality/locality.component.mjs +747 -0
  16. package/{esm2015/lib/model/Locality.js → esm2020/lib/model/Box.mjs} +2 -2
  17. package/esm2020/lib/model/Locality.mjs +30 -0
  18. package/esm2020/lib/model/Street.mjs +30 -0
  19. package/esm2020/lib/model/query-parameters.model.mjs +21 -0
  20. package/esm2020/lib/services/adress.service.mjs +64 -0
  21. package/esm2020/lib/services/http.service.mjs +57 -0
  22. package/esm2020/lib/services/locale.service.mjs +37 -0
  23. package/esm2020/lib/services/nis9.service.mjs +26 -0
  24. package/esm2020/lib/services/unicode.service.mjs +376 -0
  25. package/esm2020/lib/street/street.component.mjs +725 -0
  26. package/esm2020/lib/street-number/street-number.component.mjs +891 -0
  27. package/esm2020/lib/utils/constants.mjs +2 -0
  28. package/esm2020/lib/utils/domhandler.mjs +47 -0
  29. package/esm2020/lib/utils/highlight-suggestion.pipe.mjs +62 -0
  30. package/{esm5/lib/utils/prefill-data.js → esm2020/lib/utils/prefill-data.mjs} +5 -7
  31. package/esm2020/lib/utils/prefilled-parameters.mjs +23 -0
  32. package/esm2020/lib/utils/preflll.event.mjs +7 -0
  33. package/esm2020/lib/utils/visible-suggestion.directive.mjs +39 -0
  34. package/esm2020/public-api.mjs +9 -0
  35. package/fesm2015/{bpost-bp-address-auto-complete-by-component.js → bpost-bp-address-auto-complete-by-component.mjs} +862 -787
  36. package/fesm2015/bpost-bp-address-auto-complete-by-component.mjs.map +1 -0
  37. package/{fesm5/bpost-bp-address-auto-complete-by-component.js → fesm2020/bpost-bp-address-auto-complete-by-component.mjs} +1795 -1925
  38. package/fesm2020/bpost-bp-address-auto-complete-by-component.mjs.map +1 -0
  39. package/lib/box-number/box-number.component.d.ts +6 -0
  40. package/lib/enum/index.d.ts +3 -0
  41. package/lib/enum/suggestion-level-type.enum.d.ts +5 -0
  42. package/lib/lib-address-autocomplete-by-component.component.d.ts +14 -0
  43. package/lib/lib-address-autocomplete-by-component.module.d.ts +15 -0
  44. package/lib/lib-address-autocomplete-by-component.service.d.ts +3 -0
  45. package/lib/locality/locality.component.d.ts +3 -0
  46. package/lib/services/adress.service.d.ts +3 -0
  47. package/lib/services/http.service.d.ts +5 -0
  48. package/lib/services/locale.service.d.ts +3 -0
  49. package/lib/services/nis9.service.d.ts +3 -0
  50. package/lib/services/unicode.service.d.ts +3 -0
  51. package/lib/street/street.component.d.ts +3 -0
  52. package/lib/street-number/street-number.component.d.ts +6 -1
  53. package/lib/utils/constants.d.ts +1 -0
  54. package/lib/utils/highlight-suggestion.pipe.d.ts +3 -0
  55. package/lib/utils/visible-suggestion.directive.d.ts +3 -0
  56. package/package.json +23 -13
  57. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/.editorconfig +0 -0
  58. package/tutorial/tutorial/aacwidget-tutorial/README.md +27 -0
  59. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/angular.json +0 -0
  60. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/browserslist +0 -0
  61. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/e2e/protractor.conf.js +0 -0
  62. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/e2e/src/app.e2e-spec.ts +0 -0
  63. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/e2e/src/app.po.ts +0 -0
  64. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/e2e/tsconfig.json +0 -0
  65. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/karma.conf.js +0 -0
  66. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/package-lock.json +0 -0
  67. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/package.json +0 -0
  68. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/app-routing.module.ts +0 -0
  69. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/app.component.html +0 -0
  70. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/app.component.scss +0 -0
  71. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/app.component.spec.ts +0 -0
  72. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/app.component.ts +0 -0
  73. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/app.module.ts +0 -0
  74. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/widget-full/widget-full.component.html +0 -0
  75. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/widget-full/widget-full.component.scss +0 -0
  76. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/widget-full/widget-full.component.ts +0 -0
  77. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/widget-simple/widget-simple.component.html +0 -0
  78. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/widget-simple/widget-simple.component.scss +0 -0
  79. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/widget-simple/widget-simple.component.spec.ts +0 -0
  80. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/app/widget-simple/widget-simple.component.ts +0 -0
  81. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/assets/.gitkeep +0 -0
  82. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/assets/aacwidget/i18n/de.json +0 -0
  83. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/assets/aacwidget/i18n/en.json +0 -0
  84. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/assets/aacwidget/i18n/fr.json +0 -0
  85. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/assets/aacwidget/i18n/nl.json +0 -0
  86. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/assets/aacwidget/scss/aacwidget-custom.scss +0 -0
  87. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/assets/aacwidget/scss/aacwidget-default.scss +0 -0
  88. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/environments/environment.prod.ts +0 -0
  89. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/environments/environment.ts +0 -0
  90. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/favicon.ico +0 -0
  91. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/index.html +0 -0
  92. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/main.ts +0 -0
  93. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/polyfills.ts +0 -0
  94. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/styles.scss +0 -0
  95. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/src/test.ts +0 -0
  96. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/tsconfig.app.json +0 -0
  97. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/tsconfig.json +0 -0
  98. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/tsconfig.spec.json +0 -0
  99. package/tutorial/{aacwidget-tutorial → tutorial/aacwidget-tutorial}/tslint.json +0 -0
  100. package/tutorial/{tutorial-videos.txt → tutorial/tutorial-videos.txt} +0 -0
  101. package/bpost-bp-address-auto-complete-by-component.metadata.json +0 -1
  102. package/bundles/bpost-bp-address-auto-complete-by-component.umd.js +0 -5638
  103. package/bundles/bpost-bp-address-auto-complete-by-component.umd.js.map +0 -1
  104. package/bundles/bpost-bp-address-auto-complete-by-component.umd.min.js +0 -16
  105. package/bundles/bpost-bp-address-auto-complete-by-component.umd.min.js.map +0 -1
  106. package/esm2015/bpost-bp-address-auto-complete-by-component.js +0 -16
  107. package/esm2015/lib/box-number/box-number.component.js +0 -811
  108. package/esm2015/lib/enum/address-level.enum.js +0 -8
  109. package/esm2015/lib/enum/index.js +0 -4
  110. package/esm2015/lib/enum/input-name.enum.js +0 -8
  111. package/esm2015/lib/enum/source-type.enum.js +0 -5
  112. package/esm2015/lib/enum/validation-message-option-type.enum.js +0 -6
  113. package/esm2015/lib/enum/validation-message-type.enum.js +0 -7
  114. package/esm2015/lib/lib-address-autocomplete-by-component.component.js +0 -1116
  115. package/esm2015/lib/lib-address-autocomplete-by-component.module.js +0 -42
  116. package/esm2015/lib/lib-address-autocomplete-by-component.service.js +0 -14
  117. package/esm2015/lib/locality/locality.component.js +0 -769
  118. package/esm2015/lib/model/Box.js +0 -30
  119. package/esm2015/lib/model/Street.js +0 -30
  120. package/esm2015/lib/model/query-parameters.model.js +0 -21
  121. package/esm2015/lib/services/adress.service.js +0 -68
  122. package/esm2015/lib/services/http.service.js +0 -53
  123. package/esm2015/lib/services/locale.service.js +0 -39
  124. package/esm2015/lib/services/nis9.service.js +0 -30
  125. package/esm2015/lib/services/unicode.service.js +0 -376
  126. package/esm2015/lib/street/street.component.js +0 -749
  127. package/esm2015/lib/street-number/street-number.component.js +0 -900
  128. package/esm2015/lib/utils/domhandler.js +0 -47
  129. package/esm2015/lib/utils/highlight-suggestion.pipe.js +0 -63
  130. package/esm2015/lib/utils/prefill-data.js +0 -24
  131. package/esm2015/lib/utils/prefilled-parameters.js +0 -23
  132. package/esm2015/lib/utils/preflll.event.js +0 -7
  133. package/esm2015/lib/utils/visible-suggestion.directive.js +0 -42
  134. package/esm2015/public-api.js +0 -9
  135. package/esm5/bpost-bp-address-auto-complete-by-component.js +0 -16
  136. package/esm5/lib/box-number/box-number.component.js +0 -831
  137. package/esm5/lib/enum/address-level.enum.js +0 -8
  138. package/esm5/lib/enum/index.js +0 -4
  139. package/esm5/lib/enum/input-name.enum.js +0 -8
  140. package/esm5/lib/enum/source-type.enum.js +0 -5
  141. package/esm5/lib/enum/validation-message-option-type.enum.js +0 -6
  142. package/esm5/lib/enum/validation-message-type.enum.js +0 -7
  143. package/esm5/lib/lib-address-autocomplete-by-component.component.js +0 -1132
  144. package/esm5/lib/lib-address-autocomplete-by-component.module.js +0 -45
  145. package/esm5/lib/lib-address-autocomplete-by-component.service.js +0 -16
  146. package/esm5/lib/locality/locality.component.js +0 -825
  147. package/esm5/lib/model/Box.js +0 -35
  148. package/esm5/lib/model/Locality.js +0 -35
  149. package/esm5/lib/model/Street.js +0 -35
  150. package/esm5/lib/model/query-parameters.model.js +0 -23
  151. package/esm5/lib/services/adress.service.js +0 -72
  152. package/esm5/lib/services/http.service.js +0 -55
  153. package/esm5/lib/services/locale.service.js +0 -40
  154. package/esm5/lib/services/nis9.service.js +0 -31
  155. package/esm5/lib/services/unicode.service.js +0 -379
  156. package/esm5/lib/street/street.component.js +0 -794
  157. package/esm5/lib/street-number/street-number.component.js +0 -920
  158. package/esm5/lib/utils/domhandler.js +0 -51
  159. package/esm5/lib/utils/highlight-suggestion.pipe.js +0 -75
  160. package/esm5/lib/utils/prefilled-parameters.js +0 -25
  161. package/esm5/lib/utils/preflll.event.js +0 -9
  162. package/esm5/lib/utils/visible-suggestion.directive.js +0 -43
  163. package/esm5/public-api.js +0 -9
  164. package/fesm2015/bpost-bp-address-auto-complete-by-component.js.map +0 -1
  165. package/fesm5/bpost-bp-address-auto-complete-by-component.js.map +0 -1
@@ -0,0 +1,376 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ // const diacriticsRemovalMap = require('../../assets/diacriticsRemovalMap.json');
4
+ const diacriticsRemovalMap = {
5
+ 'default': [
6
+ {
7
+ 'base': 'A',
8
+ 'letters': '\u0041\u24B6\uFF21\u00C0\u00C1\u00C2\u1EA6\u1EA4\u1EAA\u1EA8\u00C3\u0100\u0102\u1EB0\u1EAE\u1EB4\u1EB2\u0226\u01E0\u00C4\u01DE\u1EA2\u00C5\u01FA\u01CD\u0200\u0202\u1EA0\u1EAC\u1EB6\u1E00\u0104\u023A\u2C6F'
9
+ },
10
+ {
11
+ 'base': 'AA',
12
+ 'letters': '\uA732'
13
+ },
14
+ {
15
+ 'base': 'AE',
16
+ 'letters': '\u00C6\u01FC\u01E2'
17
+ },
18
+ {
19
+ 'base': 'AO',
20
+ 'letters': '\uA734'
21
+ },
22
+ {
23
+ 'base': 'AU',
24
+ 'letters': '\uA736'
25
+ },
26
+ {
27
+ 'base': 'AV',
28
+ 'letters': '\uA738\uA73A'
29
+ },
30
+ {
31
+ 'base': 'AY',
32
+ 'letters': '\uA73C'
33
+ },
34
+ {
35
+ 'base': 'B',
36
+ 'letters': '\u0042\u24B7\uFF22\u1E02\u1E04\u1E06\u0243\u0182\u0181'
37
+ },
38
+ {
39
+ 'base': 'C',
40
+ 'letters': '\u0043\u24B8\uFF23\u0106\u0108\u010A\u010C\u00C7\u1E08\u0187\u023B\uA73E'
41
+ },
42
+ {
43
+ 'base': 'D',
44
+ 'letters': '\u0044\u24B9\uFF24\u1E0A\u010E\u1E0C\u1E10\u1E12\u1E0E\u0110\u018B\u018A\u0189\uA779'
45
+ },
46
+ {
47
+ 'base': 'DZ',
48
+ 'letters': '\u01F1\u01C4'
49
+ },
50
+ {
51
+ 'base': 'Dz',
52
+ 'letters': '\u01F2\u01C5'
53
+ },
54
+ {
55
+ 'base': 'E',
56
+ 'letters': '\u0045\u24BA\uFF25\u00C8\u00C9\u00CA\u1EC0\u1EBE\u1EC4\u1EC2\u1EBC\u0112\u1E14\u1E16\u0114\u0116\u00CB\u1EBA\u011A\u0204\u0206\u1EB8\u1EC6\u0228\u1E1C\u0118\u1E18\u1E1A\u0190\u018E'
57
+ },
58
+ {
59
+ 'base': 'F',
60
+ 'letters': '\u0046\u24BB\uFF26\u1E1E\u0191\uA77B'
61
+ },
62
+ {
63
+ 'base': 'G',
64
+ 'letters': '\u0047\u24BC\uFF27\u01F4\u011C\u1E20\u011E\u0120\u01E6\u0122\u01E4\u0193\uA7A0\uA77D\uA77E'
65
+ },
66
+ {
67
+ 'base': 'H',
68
+ 'letters': '\u0048\u24BD\uFF28\u0124\u1E22\u1E26\u021E\u1E24\u1E28\u1E2A\u0126\u2C67\u2C75\uA78D'
69
+ },
70
+ {
71
+ 'base': 'I',
72
+ 'letters': '\u0049\u24BE\uFF29\u00CC\u00CD\u00CE\u0128\u012A\u012C\u0130\u00CF\u1E2E\u1EC8\u01CF\u0208\u020A\u1ECA\u012E\u1E2C\u0197'
73
+ },
74
+ {
75
+ 'base': 'J',
76
+ 'letters': '\u004A\u24BF\uFF2A\u0134\u0248'
77
+ },
78
+ {
79
+ 'base': 'K',
80
+ 'letters': '\u004B\u24C0\uFF2B\u1E30\u01E8\u1E32\u0136\u1E34\u0198\u2C69\uA740\uA742\uA744\uA7A2'
81
+ },
82
+ {
83
+ 'base': 'L',
84
+ 'letters': '\u004C\u24C1\uFF2C\u013F\u0139\u013D\u1E36\u1E38\u013B\u1E3C\u1E3A\u0141\u023D\u2C62\u2C60\uA748\uA746\uA780'
85
+ },
86
+ {
87
+ 'base': 'LJ',
88
+ 'letters': '\u01C7'
89
+ },
90
+ {
91
+ 'base': 'Lj',
92
+ 'letters': '\u01C8'
93
+ },
94
+ {
95
+ 'base': 'M',
96
+ 'letters': '\u004D\u24C2\uFF2D\u1E3E\u1E40\u1E42\u2C6E\u019C'
97
+ },
98
+ {
99
+ 'base': 'N',
100
+ 'letters': '\u004E\u24C3\uFF2E\u01F8\u0143\u00D1\u1E44\u0147\u1E46\u0145\u1E4A\u1E48\u0220\u019D\uA790\uA7A4'
101
+ },
102
+ {
103
+ 'base': 'NJ',
104
+ 'letters': '\u01CA'
105
+ },
106
+ {
107
+ 'base': 'Nj',
108
+ 'letters': '\u01CB'
109
+ },
110
+ {
111
+ 'base': 'O',
112
+ 'letters': '\u004F\u24C4\uFF2F\u00D2\u00D3\u00D4\u1ED2\u1ED0\u1ED6\u1ED4\u00D5\u1E4C\u022C\u1E4E\u014C\u1E50\u1E52\u014E\u022E\u0230\u00D6\u022A\u1ECE\u0150\u01D1\u020C\u020E\u01A0\u1EDC\u1EDA\u1EE0\u1EDE\u1EE2\u1ECC\u1ED8\u01EA\u01EC\u00D8\u01FE\u0186\u019F\uA74A\uA74C'
113
+ },
114
+ {
115
+ 'base': 'OI',
116
+ 'letters': '\u01A2'
117
+ },
118
+ {
119
+ 'base': 'OO',
120
+ 'letters': '\uA74E'
121
+ },
122
+ {
123
+ 'base': 'OU',
124
+ 'letters': '\u0222'
125
+ },
126
+ {
127
+ 'base': 'OE',
128
+ 'letters': '\u008C\u0152'
129
+ },
130
+ {
131
+ 'base': 'oe',
132
+ 'letters': '\u009C\u0153'
133
+ },
134
+ {
135
+ 'base': 'P',
136
+ 'letters': '\u0050\u24C5\uFF30\u1E54\u1E56\u01A4\u2C63\uA750\uA752\uA754'
137
+ },
138
+ {
139
+ 'base': 'Q',
140
+ 'letters': '\u0051\u24C6\uFF31\uA756\uA758\u024A'
141
+ },
142
+ {
143
+ 'base': 'R',
144
+ 'letters': '\u0052\u24C7\uFF32\u0154\u1E58\u0158\u0210\u0212\u1E5A\u1E5C\u0156\u1E5E\u024C\u2C64\uA75A\uA7A6\uA782'
145
+ },
146
+ {
147
+ 'base': 'S',
148
+ 'letters': '\u0053\u24C8\uFF33\u1E9E\u015A\u1E64\u015C\u1E60\u0160\u1E66\u1E62\u1E68\u0218\u015E\u2C7E\uA7A8\uA784'
149
+ },
150
+ {
151
+ 'base': 'T',
152
+ 'letters': '\u0054\u24C9\uFF34\u1E6A\u0164\u1E6C\u021A\u0162\u1E70\u1E6E\u0166\u01AC\u01AE\u023E\uA786'
153
+ },
154
+ {
155
+ 'base': 'TZ',
156
+ 'letters': '\uA728'
157
+ },
158
+ {
159
+ 'base': 'U',
160
+ 'letters': '\u0055\u24CA\uFF35\u00D9\u00DA\u00DB\u0168\u1E78\u016A\u1E7A\u016C\u00DC\u01DB\u01D7\u01D5\u01D9\u1EE6\u016E\u0170\u01D3\u0214\u0216\u01AF\u1EEA\u1EE8\u1EEE\u1EEC\u1EF0\u1EE4\u1E72\u0172\u1E76\u1E74\u0244'
161
+ },
162
+ {
163
+ 'base': 'V',
164
+ 'letters': '\u0056\u24CB\uFF36\u1E7C\u1E7E\u01B2\uA75E\u0245'
165
+ },
166
+ {
167
+ 'base': 'VY',
168
+ 'letters': '\uA760'
169
+ },
170
+ {
171
+ 'base': 'W',
172
+ 'letters': '\u0057\u24CC\uFF37\u1E80\u1E82\u0174\u1E86\u1E84\u1E88\u2C72'
173
+ },
174
+ {
175
+ 'base': 'X',
176
+ 'letters': '\u0058\u24CD\uFF38\u1E8A\u1E8C'
177
+ },
178
+ {
179
+ 'base': 'Y',
180
+ 'letters': '\u0059\u24CE\uFF39\u1EF2\u00DD\u0176\u1EF8\u0232\u1E8E\u0178\u1EF6\u1EF4\u01B3\u024E\u1EFE'
181
+ },
182
+ {
183
+ 'base': 'Z',
184
+ 'letters': '\u005A\u24CF\uFF3A\u0179\u1E90\u017B\u017D\u1E92\u1E94\u01B5\u0224\u2C7F\u2C6B\uA762'
185
+ },
186
+ {
187
+ 'base': 'a',
188
+ 'letters': '\u0061\u24D0\uFF41\u1E9A\u00E0\u00E1\u00E2\u1EA7\u1EA5\u1EAB\u1EA9\u00E3\u0101\u0103\u1EB1\u1EAF\u1EB5\u1EB3\u0227\u01E1\u00E4\u01DF\u1EA3\u00E5\u01FB\u01CE\u0201\u0203\u1EA1\u1EAD\u1EB7\u1E01\u0105\u2C65\u0250'
189
+ },
190
+ {
191
+ 'base': 'aa',
192
+ 'letters': '\uA733'
193
+ },
194
+ {
195
+ 'base': 'ae',
196
+ 'letters': '\u00E6\u01FD\u01E3'
197
+ },
198
+ {
199
+ 'base': 'ao',
200
+ 'letters': '\uA735'
201
+ },
202
+ {
203
+ 'base': 'au',
204
+ 'letters': '\uA737'
205
+ },
206
+ {
207
+ 'base': 'av',
208
+ 'letters': '\uA739\uA73B'
209
+ },
210
+ {
211
+ 'base': 'ay',
212
+ 'letters': '\uA73D'
213
+ },
214
+ {
215
+ 'base': 'b',
216
+ 'letters': '\u0062\u24D1\uFF42\u1E03\u1E05\u1E07\u0180\u0183\u0253'
217
+ },
218
+ {
219
+ 'base': 'c',
220
+ 'letters': '\u0063\u24D2\uFF43\u0107\u0109\u010B\u010D\u00E7\u1E09\u0188\u023C\uA73F\u2184'
221
+ },
222
+ {
223
+ 'base': 'd',
224
+ 'letters': '\u0064\u24D3\uFF44\u1E0B\u010F\u1E0D\u1E11\u1E13\u1E0F\u0111\u018C\u0256\u0257\uA77A'
225
+ },
226
+ {
227
+ 'base': 'dz',
228
+ 'letters': '\u01F3\u01C6'
229
+ },
230
+ {
231
+ 'base': 'e',
232
+ 'letters': '\u0065\u24D4\uFF45\u00E8\u00E9\u00EA\u1EC1\u1EBF\u1EC5\u1EC3\u1EBD\u0113\u1E15\u1E17\u0115\u0117\u00EB\u1EBB\u011B\u0205\u0207\u1EB9\u1EC7\u0229\u1E1D\u0119\u1E19\u1E1B\u0247\u025B\u01DD'
233
+ },
234
+ {
235
+ 'base': 'f',
236
+ 'letters': '\u0066\u24D5\uFF46\u1E1F\u0192\uA77C'
237
+ },
238
+ {
239
+ 'base': 'g',
240
+ 'letters': '\u0067\u24D6\uFF47\u01F5\u011D\u1E21\u011F\u0121\u01E7\u0123\u01E5\u0260\uA7A1\u1D79\uA77F'
241
+ },
242
+ {
243
+ 'base': 'h',
244
+ 'letters': '\u0068\u24D7\uFF48\u0125\u1E23\u1E27\u021F\u1E25\u1E29\u1E2B\u1E96\u0127\u2C68\u2C76\u0265'
245
+ },
246
+ {
247
+ 'base': 'hv',
248
+ 'letters': '\u0195'
249
+ },
250
+ {
251
+ 'base': 'i',
252
+ 'letters': '\u0069\u24D8\uFF49\u00EC\u00ED\u00EE\u0129\u012B\u012D\u00EF\u1E2F\u1EC9\u01D0\u0209\u020B\u1ECB\u012F\u1E2D\u0268\u0131'
253
+ },
254
+ {
255
+ 'base': 'j',
256
+ 'letters': '\u006A\u24D9\uFF4A\u0135\u01F0\u0249'
257
+ },
258
+ {
259
+ 'base': 'k',
260
+ 'letters': '\u006B\u24DA\uFF4B\u1E31\u01E9\u1E33\u0137\u1E35\u0199\u2C6A\uA741\uA743\uA745\uA7A3'
261
+ },
262
+ {
263
+ 'base': 'l',
264
+ 'letters': '\u006C\u24DB\uFF4C\u0140\u013A\u013E\u1E37\u1E39\u013C\u1E3D\u1E3B\u017F\u0142\u019A\u026B\u2C61\uA749\uA781\uA747'
265
+ },
266
+ {
267
+ 'base': 'lj',
268
+ 'letters': '\u01C9'
269
+ },
270
+ {
271
+ 'base': 'm',
272
+ 'letters': '\u006D\u24DC\uFF4D\u1E3F\u1E41\u1E43\u0271\u026F'
273
+ },
274
+ {
275
+ 'base': 'n',
276
+ 'letters': '\u006E\u24DD\uFF4E\u01F9\u0144\u00F1\u1E45\u0148\u1E47\u0146\u1E4B\u1E49\u019E\u0272\u0149\uA791\uA7A5'
277
+ },
278
+ {
279
+ 'base': 'nj',
280
+ 'letters': '\u01CC'
281
+ },
282
+ {
283
+ 'base': 'o',
284
+ 'letters': '\u006F\u24DE\uFF4F\u00F2\u00F3\u00F4\u1ED3\u1ED1\u1ED7\u1ED5\u00F5\u1E4D\u022D\u1E4F\u014D\u1E51\u1E53\u014F\u022F\u0231\u00F6\u022B\u1ECF\u0151\u01D2\u020D\u020F\u01A1\u1EDD\u1EDB\u1EE1\u1EDF\u1EE3\u1ECD\u1ED9\u01EB\u01ED\u00F8\u01FF\u0254\uA74B\uA74D\u0275'
285
+ },
286
+ {
287
+ 'base': 'oi',
288
+ 'letters': '\u01A3'
289
+ },
290
+ {
291
+ 'base': 'ou',
292
+ 'letters': '\u0223'
293
+ },
294
+ {
295
+ 'base': 'oo',
296
+ 'letters': '\uA74F'
297
+ },
298
+ {
299
+ 'base': 'p',
300
+ 'letters': '\u0070\u24DF\uFF50\u1E55\u1E57\u01A5\u1D7D\uA751\uA753\uA755'
301
+ },
302
+ {
303
+ 'base': 'q',
304
+ 'letters': '\u0071\u24E0\uFF51\u024B\uA757\uA759'
305
+ },
306
+ {
307
+ 'base': 'r',
308
+ 'letters': '\u0072\u24E1\uFF52\u0155\u1E59\u0159\u0211\u0213\u1E5B\u1E5D\u0157\u1E5F\u024D\u027D\uA75B\uA7A7\uA783'
309
+ },
310
+ {
311
+ 'base': 's',
312
+ 'letters': '\u0073\u24E2\uFF53\u00DF\u015B\u1E65\u015D\u1E61\u0161\u1E67\u1E63\u1E69\u0219\u015F\u023F\uA7A9\uA785\u1E9B'
313
+ },
314
+ {
315
+ 'base': 't',
316
+ 'letters': '\u0074\u24E3\uFF54\u1E6B\u1E97\u0165\u1E6D\u021B\u0163\u1E71\u1E6F\u0167\u01AD\u0288\u2C66\uA787'
317
+ },
318
+ {
319
+ 'base': 'tz',
320
+ 'letters': '\uA729'
321
+ },
322
+ {
323
+ 'base': 'u',
324
+ 'letters': '\u0075\u24E4\uFF55\u00F9\u00FA\u00FB\u0169\u1E79\u016B\u1E7B\u016D\u00FC\u01DC\u01D8\u01D6\u01DA\u1EE7\u016F\u0171\u01D4\u0215\u0217\u01B0\u1EEB\u1EE9\u1EEF\u1EED\u1EF1\u1EE5\u1E73\u0173\u1E77\u1E75\u0289'
325
+ },
326
+ {
327
+ 'base': 'v',
328
+ 'letters': '\u0076\u24E5\uFF56\u1E7D\u1E7F\u028B\uA75F\u028C'
329
+ },
330
+ {
331
+ 'base': 'vy',
332
+ 'letters': '\uA761'
333
+ },
334
+ {
335
+ 'base': 'w',
336
+ 'letters': '\u0077\u24E6\uFF57\u1E81\u1E83\u0175\u1E87\u1E85\u1E98\u1E89\u2C73'
337
+ },
338
+ {
339
+ 'base': 'x',
340
+ 'letters': '\u0078\u24E7\uFF58\u1E8B\u1E8D'
341
+ },
342
+ {
343
+ 'base': 'y',
344
+ 'letters': '\u0079\u24E8\uFF59\u1EF3\u00FD\u0177\u1EF9\u0233\u1E8F\u00FF\u1EF7\u1E99\u1EF5\u01B4\u024F\u1EFF'
345
+ },
346
+ {
347
+ 'base': 'z',
348
+ 'letters': '\u007A\u24E9\uFF5A\u017A\u1E91\u017C\u017E\u1E93\u1E95\u01B6\u0225\u0240\u2C6C\uA763'
349
+ }
350
+ ]
351
+ };
352
+ export class UnicodeService {
353
+ constructor() {
354
+ this.defaultDiacriticsRemovalMap = diacriticsRemovalMap.default;
355
+ this.diacriticsMap = {};
356
+ this.defaultDiacriticsRemovalMap.forEach(value => value.letters.split('').forEach((char) => this.diacriticsMap[char] = value.base));
357
+ }
358
+ removeDiacritics(str) {
359
+ if (str === null || str === undefined) {
360
+ return str;
361
+ }
362
+ return str.replace(/[^\u0000-\u007E]/g, (a) => this.diacriticsMap[a] || a);
363
+ }
364
+ ngOnDestroy() {
365
+ this.diacriticsMap = {};
366
+ }
367
+ }
368
+ UnicodeService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: UnicodeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
369
+ UnicodeService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: UnicodeService, providedIn: 'root' });
370
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: UnicodeService, decorators: [{
371
+ type: Injectable,
372
+ args: [{
373
+ providedIn: 'root'
374
+ }]
375
+ }], ctorParameters: function () { return []; } });
376
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5pY29kZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGliLWFkZHJlc3MtYXV0b2NvbXBsZXRlLWJ5LWNvbXBvbmVudC9zcmMvbGliL3NlcnZpY2VzL3VuaWNvZGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDOztBQUV0RCxrRkFBa0Y7QUFFbEYsTUFBTSxvQkFBb0IsR0FBRztJQUMzQixTQUFTLEVBQUU7UUFDUDtZQUNJLE1BQU0sRUFBRSxHQUFHO1lBQ1gsU0FBUyxFQUFFLDhNQUE4TTtTQUM1TjtRQUNEO1lBQ0ksTUFBTSxFQUFFLElBQUk7WUFDWixTQUFTLEVBQUUsUUFBUTtTQUN0QjtRQUNEO1lBQ0ksTUFBTSxFQUFFLElBQUk7WUFDWixTQUFTLEVBQUUsb0JBQW9CO1NBQ2xDO1FBQ0Q7WUFDSSxNQUFNLEVBQUUsSUFBSTtZQUNaLFNBQVMsRUFBRSxRQUFRO1NBQ3RCO1FBQ0Q7WUFDSSxNQUFNLEVBQUUsSUFBSTtZQUNaLFNBQVMsRUFBRSxRQUFRO1NBQ3RCO1FBQ0Q7WUFDSSxNQUFNLEVBQUUsSUFBSTtZQUNaLFNBQVMsRUFBRSxjQUFjO1NBQzVCO1FBQ0Q7WUFDSSxNQUFNLEVBQUUsSUFBSTtZQUNaLFNBQVMsRUFBRSxRQUFRO1NBQ3RCO1FBQ0Q7WUFDSSxNQUFNLEVBQUUsR0FBRztZQUNYLFNBQVMsRUFBRSx3REFBd0Q7U0FDdEU7UUFDRDtZQUNJLE1BQU0sRUFBRSxHQUFHO1lBQ1gsU0FBUyxFQUFFLDBFQUEwRTtTQUN4RjtRQUNEO1lBQ0ksTUFBTSxFQUFFLEdBQUc7WUFDWCxTQUFTLEVBQUUsc0ZBQXNGO1NBQ3BHO1FBQ0Q7WUFDSSxNQUFNLEVBQUUsSUFBSTtZQUNaLFNBQVMsRUFBRSxjQUFjO1NBQzVCO1FBQ0Q7WUFDSSxNQUFNLEVBQUUsSUFBSTtZQUNaLFNBQVMsRUFBRSxjQUFj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QUM7OzJHQWxCVSxjQUFjOytHQUFkLGNBQWMsY0FGYixNQUFNOzJGQUVQLGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8vIGNvbnN0IGRpYWNyaXRpY3NSZW1vdmFsTWFwID0gcmVxdWlyZSgnLi4vLi4vYXNzZXRzL2RpYWNyaXRpY3NSZW1vdmFsTWFwLmpzb24nKTtcblxuY29uc3QgZGlhY3JpdGljc1JlbW92YWxNYXAgPSB7XG4gICdkZWZhdWx0JzogW1xuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ0EnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNDFcXHUyNEI2XFx1RkYyMVxcdTAwQzBcXHUwMEMxXFx1MDBDMlxcdTFFQTZcXHUxRUE0XFx1MUVBQVxcdTFFQThcXHUwMEMzXFx1MDEwMFxcdTAxMDJcXHUxRUIwXFx1MUVBRVxcdTFFQjRcXHUxRUIyXFx1MDIyNlxcdTAxRTBcXHUwMEM0XFx1MDFERVxcdTFFQTJcXHUwMEM1XFx1MDFGQVxcdTAxQ0RcXHUwMjAwXFx1MDIwMlxcdTFFQTBcXHUxRUFDXFx1MUVCNlxcdTFFMDBcXHUwMTA0XFx1MDIzQVxcdTJDNkYnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ0FBJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHVBNzMyJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdBRScsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDBDNlxcdTAxRkNcXHUwMUUyJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdBTycsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1QTczNCdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnQVUnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdUE3MzYnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ0FWJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHVBNzM4XFx1QTczQSdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnQVknLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdUE3M0MnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ0InLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNDJcXHUyNEI3XFx1RkYyMlxcdTFFMDJcXHUxRTA0XFx1MUUwNlxcdTAyNDNcXHUwMTgyXFx1MDE4MSdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnQycsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA0M1xcdTI0QjhcXHVGRjIzXFx1MDEwNlxcdTAxMDhcXHUwMTBBXFx1MDEwQ1xcdTAwQzdcXHUxRTA4XFx1MDE4N1xcdTAyM0JcXHVBNzNFJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdEJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDQ0XFx1MjRCOVxcdUZGMjRcXHUxRTBBXFx1MDEwRVxcdTFFMENcXHUxRTEwXFx1MUUxMlxcdTFFMEVcXHUwMTEwXFx1MDE4QlxcdTAxOEFcXHUwMTg5XFx1QTc3OSdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnRFonLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAxRjFcXHUwMUM0J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdEeicsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDFGMlxcdTAxQzUnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ0UnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNDVcXHUyNEJBXFx1RkYyNVxcdTAwQzhcXHUwMEM5XFx1MDBDQVxcdTFFQzBcXHUxRUJFXFx1MUVDNFxcdTFFQzJcXHUxRUJDXFx1MDExMlxcdTFFMTRcXHUxRTE2XFx1MDExNFxcdTAxMTZcXHUwMENCXFx1MUVCQVxcdTAxMUFcXHUwMjA0XFx1MDIwNlxcdTFFQjhcXHUxRUM2XFx1MDIyOFxcdTFFMUNcXHUwMTE4XFx1MUUxOFxcdTFFMUFcXHUwMTkwXFx1MDE4RSdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnRicsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA0NlxcdTI0QkJcXHVGRjI2XFx1MUUxRVxcdTAxOTFcXHVBNzdCJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdHJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDQ3XFx1MjRCQ1xcdUZGMjdcXHUwMUY0XFx1MDExQ1xcdTFFMjBcXHUwMTFFXFx1MDEyMFxcdTAxRTZcXHUwMTIyXFx1MDFFNFxcdTAxOTNcXHVBN0EwXFx1QTc3RFxcdUE3N0UnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ0gnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNDhcXHUyNEJEXFx1RkYyOFxcdTAxMjRcXHUxRTIyXFx1MUUyNlxcdTAyMUVcXHUxRTI0XFx1MUUyOFxcdTFFMkFcXHUwMTI2XFx1MkM2N1xcdTJDNzVcXHVBNzhEJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdJJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDQ5XFx1MjRCRVxcdUZGMjlcXHUwMENDXFx1MDBDRFxcdTAwQ0VcXHUwMTI4XFx1MDEyQVxcdTAxMkNcXHUwMTMwXFx1MDBDRlxcdTFFMkVcXHUxRUM4XFx1MDFDRlxcdTAyMDhcXHUwMjBBXFx1MUVDQVxcdTAxMkVcXHUxRTJDXFx1MDE5NydcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnSicsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA0QVxcdTI0QkZcXHVGRjJBXFx1MDEzNFxcdTAyNDgnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ0snLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNEJcXHUyNEMwXFx1RkYyQlxcdTFFMzBcXHUwMUU4XFx1MUUzMlxcdTAxMzZcXHUxRTM0XFx1MDE5OFxcdTJDNjlcXHVBNzQwXFx1QTc0MlxcdUE3NDRcXHVBN0EyJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdMJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDRDXFx1MjRDMVxcdUZGMkNcXHUwMTNGXFx1MDEzOVxcdTAxM0RcXHUxRTM2XFx1MUUzOFxcdTAxM0JcXHUxRTNDXFx1MUUzQVxcdTAxNDFcXHUwMjNEXFx1MkM2MlxcdTJDNjBcXHVBNzQ4XFx1QTc0NlxcdUE3ODAnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ0xKJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMUM3J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdMaicsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDFDOCdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnTScsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA0RFxcdTI0QzJcXHVGRjJEXFx1MUUzRVxcdTFFNDBcXHUxRTQyXFx1MkM2RVxcdTAxOUMnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ04nLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNEVcXHUyNEMzXFx1RkYyRVxcdTAxRjhcXHUwMTQzXFx1MDBEMVxcdTFFNDRcXHUwMTQ3XFx1MUU0NlxcdTAxNDVcXHUxRTRBXFx1MUU0OFxcdTAyMjBcXHUwMTlEXFx1QTc5MFxcdUE3QTQnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ05KJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMUNBJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdOaicsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDFDQidcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnTycsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA0RlxcdTI0QzRcXHVGRjJGXFx1MDBEMlxcdTAwRDNcXHUwMEQ0XFx1MUVEMlxcdTFFRDBcXHUxRUQ2XFx1MUVENFxcdTAwRDVcXHUxRTRDXFx1MDIyQ1xcdTFFNEVcXHUwMTRDXFx1MUU1MFxcdTFFNTJcXHUwMTRFXFx1MDIyRVxcdTAyMzBcXHUwMEQ2XFx1MDIyQVxcdTFFQ0VcXHUwMTUwXFx1MDFEMVxcdTAyMENcXHUwMjBFXFx1MDFBMFxcdTFFRENcXHUxRURBXFx1MUVFMFxcdTFFREVcXHUxRUUyXFx1MUVDQ1xcdTFFRDhcXHUwMUVBXFx1MDFFQ1xcdTAwRDhcXHUwMUZFXFx1MDE4NlxcdTAxOUZcXHVBNzRBXFx1QTc0QydcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnT0knLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAxQTInXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ09PJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHVBNzRFJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdPVScsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDIyMidcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnT0UnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwOENcXHUwMTUyJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdvZScsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA5Q1xcdTAxNTMnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ1AnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNTBcXHUyNEM1XFx1RkYzMFxcdTFFNTRcXHUxRTU2XFx1MDFBNFxcdTJDNjNcXHVBNzUwXFx1QTc1MlxcdUE3NTQnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ1EnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNTFcXHUyNEM2XFx1RkYzMVxcdUE3NTZcXHVBNzU4XFx1MDI0QSdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnUicsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA1MlxcdTI0QzdcXHVGRjMyXFx1MDE1NFxcdTFFNThcXHUwMTU4XFx1MDIxMFxcdTAyMTJcXHUxRTVBXFx1MUU1Q1xcdTAxNTZcXHUxRTVFXFx1MDI0Q1xcdTJDNjRcXHVBNzVBXFx1QTdBNlxcdUE3ODInXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ1MnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNTNcXHUyNEM4XFx1RkYzM1xcdTFFOUVcXHUwMTVBXFx1MUU2NFxcdTAxNUNcXHUxRTYwXFx1MDE2MFxcdTFFNjZcXHUxRTYyXFx1MUU2OFxcdTAyMThcXHUwMTVFXFx1MkM3RVxcdUE3QThcXHVBNzg0J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdUJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDU0XFx1MjRDOVxcdUZGMzRcXHUxRTZBXFx1MDE2NFxcdTFFNkNcXHUwMjFBXFx1MDE2MlxcdTFFNzBcXHUxRTZFXFx1MDE2NlxcdTAxQUNcXHUwMUFFXFx1MDIzRVxcdUE3ODYnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ1RaJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHVBNzI4J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdVJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDU1XFx1MjRDQVxcdUZGMzVcXHUwMEQ5XFx1MDBEQVxcdTAwREJcXHUwMTY4XFx1MUU3OFxcdTAxNkFcXHUxRTdBXFx1MDE2Q1xcdTAwRENcXHUwMURCXFx1MDFEN1xcdTAxRDVcXHUwMUQ5XFx1MUVFNlxcdTAxNkVcXHUwMTcwXFx1MDFEM1xcdTAyMTRcXHUwMjE2XFx1MDFBRlxcdTFFRUFcXHUxRUU4XFx1MUVFRVxcdTFFRUNcXHUxRUYwXFx1MUVFNFxcdTFFNzJcXHUwMTcyXFx1MUU3NlxcdTFFNzRcXHUwMjQ0J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdWJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDU2XFx1MjRDQlxcdUZGMzZcXHUxRTdDXFx1MUU3RVxcdTAxQjJcXHVBNzVFXFx1MDI0NSdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnVlknLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdUE3NjAnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ1cnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNTdcXHUyNENDXFx1RkYzN1xcdTFFODBcXHUxRTgyXFx1MDE3NFxcdTFFODZcXHUxRTg0XFx1MUU4OFxcdTJDNzInXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ1gnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNThcXHUyNENEXFx1RkYzOFxcdTFFOEFcXHUxRThDJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdZJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDU5XFx1MjRDRVxcdUZGMzlcXHUxRUYyXFx1MDBERFxcdTAxNzZcXHUxRUY4XFx1MDIzMlxcdTFFOEVcXHUwMTc4XFx1MUVGNlxcdTFFRjRcXHUwMUIzXFx1MDI0RVxcdTFFRkUnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ1onLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNUFcXHUyNENGXFx1RkYzQVxcdTAxNzlcXHUxRTkwXFx1MDE3QlxcdTAxN0RcXHUxRTkyXFx1MUU5NFxcdTAxQjVcXHUwMjI0XFx1MkM3RlxcdTJDNkJcXHVBNzYyJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdhJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDYxXFx1MjREMFxcdUZGNDFcXHUxRTlBXFx1MDBFMFxcdTAwRTFcXHUwMEUyXFx1MUVBN1xcdTFFQTVcXHUxRUFCXFx1MUVBOVxcdTAwRTNcXHUwMTAxXFx1MDEwM1xcdTFFQjFcXHUxRUFGXFx1MUVCNVxcdTFFQjNcXHUwMjI3XFx1MDFFMVxcdTAwRTRcXHUwMURGXFx1MUVBM1xcdTAwRTVcXHUwMUZCXFx1MDFDRVxcdTAyMDFcXHUwMjAzXFx1MUVBMVxcdTFFQURcXHUxRUI3XFx1MUUwMVxcdTAxMDVcXHUyQzY1XFx1MDI1MCdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnYWEnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdUE3MzMnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ2FlJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMEU2XFx1MDFGRFxcdTAxRTMnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ2FvJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHVBNzM1J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdhdScsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1QTczNydcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnYXYnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdUE3MzlcXHVBNzNCJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdheScsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1QTczRCdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnYicsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA2MlxcdTI0RDFcXHVGRjQyXFx1MUUwM1xcdTFFMDVcXHUxRTA3XFx1MDE4MFxcdTAxODNcXHUwMjUzJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdjJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDYzXFx1MjREMlxcdUZGNDNcXHUwMTA3XFx1MDEwOVxcdTAxMEJcXHUwMTBEXFx1MDBFN1xcdTFFMDlcXHUwMTg4XFx1MDIzQ1xcdUE3M0ZcXHUyMTg0J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdkJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDY0XFx1MjREM1xcdUZGNDRcXHUxRTBCXFx1MDEwRlxcdTFFMERcXHUxRTExXFx1MUUxM1xcdTFFMEZcXHUwMTExXFx1MDE4Q1xcdTAyNTZcXHUwMjU3XFx1QTc3QSdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnZHonLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAxRjNcXHUwMUM2J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdlJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDY1XFx1MjRENFxcdUZGNDVcXHUwMEU4XFx1MDBFOVxcdTAwRUFcXHUxRUMxXFx1MUVCRlxcdTFFQzVcXHUxRUMzXFx1MUVCRFxcdTAxMTNcXHUxRTE1XFx1MUUxN1xcdTAxMTVcXHUwMTE3XFx1MDBFQlxcdTFFQkJcXHUwMTFCXFx1MDIwNVxcdTAyMDdcXHUxRUI5XFx1MUVDN1xcdTAyMjlcXHUxRTFEXFx1MDExOVxcdTFFMTlcXHUxRTFCXFx1MDI0N1xcdTAyNUJcXHUwMUREJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdmJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDY2XFx1MjRENVxcdUZGNDZcXHUxRTFGXFx1MDE5MlxcdUE3N0MnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ2cnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNjdcXHUyNEQ2XFx1RkY0N1xcdTAxRjVcXHUwMTFEXFx1MUUyMVxcdTAxMUZcXHUwMTIxXFx1MDFFN1xcdTAxMjNcXHUwMUU1XFx1MDI2MFxcdUE3QTFcXHUxRDc5XFx1QTc3RidcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnaCcsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA2OFxcdTI0RDdcXHVGRjQ4XFx1MDEyNVxcdTFFMjNcXHUxRTI3XFx1MDIxRlxcdTFFMjVcXHUxRTI5XFx1MUUyQlxcdTFFOTZcXHUwMTI3XFx1MkM2OFxcdTJDNzZcXHUwMjY1J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdodicsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDE5NSdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnaScsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA2OVxcdTI0RDhcXHVGRjQ5XFx1MDBFQ1xcdTAwRURcXHUwMEVFXFx1MDEyOVxcdTAxMkJcXHUwMTJEXFx1MDBFRlxcdTFFMkZcXHUxRUM5XFx1MDFEMFxcdTAyMDlcXHUwMjBCXFx1MUVDQlxcdTAxMkZcXHUxRTJEXFx1MDI2OFxcdTAxMzEnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ2onLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNkFcXHUyNEQ5XFx1RkY0QVxcdTAxMzVcXHUwMUYwXFx1MDI0OSdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnaycsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA2QlxcdTI0REFcXHVGRjRCXFx1MUUzMVxcdTAxRTlcXHUxRTMzXFx1MDEzN1xcdTFFMzVcXHUwMTk5XFx1MkM2QVxcdUE3NDFcXHVBNzQzXFx1QTc0NVxcdUE3QTMnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ2wnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNkNcXHUyNERCXFx1RkY0Q1xcdTAxNDBcXHUwMTNBXFx1MDEzRVxcdTFFMzdcXHUxRTM5XFx1MDEzQ1xcdTFFM0RcXHUxRTNCXFx1MDE3RlxcdTAxNDJcXHUwMTlBXFx1MDI2QlxcdTJDNjFcXHVBNzQ5XFx1QTc4MVxcdUE3NDcnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ2xqJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMUM5J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdtJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDZEXFx1MjREQ1xcdUZGNERcXHUxRTNGXFx1MUU0MVxcdTFFNDNcXHUwMjcxXFx1MDI2RidcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnbicsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA2RVxcdTI0RERcXHVGRjRFXFx1MDFGOVxcdTAxNDRcXHUwMEYxXFx1MUU0NVxcdTAxNDhcXHUxRTQ3XFx1MDE0NlxcdTFFNEJcXHUxRTQ5XFx1MDE5RVxcdTAyNzJcXHUwMTQ5XFx1QTc5MVxcdUE3QTUnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ25qJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMUNDJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdvJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDZGXFx1MjRERVxcdUZGNEZcXHUwMEYyXFx1MDBGM1xcdTAwRjRcXHUxRUQzXFx1MUVEMVxcdTFFRDdcXHUxRUQ1XFx1MDBGNVxcdTFFNERcXHUwMjJEXFx1MUU0RlxcdTAxNERcXHUxRTUxXFx1MUU1M1xcdTAxNEZcXHUwMjJGXFx1MDIzMVxcdTAwRjZcXHUwMjJCXFx1MUVDRlxcdTAxNTFcXHUwMUQyXFx1MDIwRFxcdTAyMEZcXHUwMUExXFx1MUVERFxcdTFFREJcXHUxRUUxXFx1MUVERlxcdTFFRTNcXHUxRUNEXFx1MUVEOVxcdTAxRUJcXHUwMUVEXFx1MDBGOFxcdTAxRkZcXHUwMjU0XFx1QTc0QlxcdUE3NERcXHUwMjc1J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdvaScsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDFBMydcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAnb3UnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAyMjMnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ29vJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHVBNzRGJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdwJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDcwXFx1MjRERlxcdUZGNTBcXHUxRTU1XFx1MUU1N1xcdTAxQTVcXHUxRDdEXFx1QTc1MVxcdUE3NTNcXHVBNzU1J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdxJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDcxXFx1MjRFMFxcdUZGNTFcXHUwMjRCXFx1QTc1N1xcdUE3NTknXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ3InLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNzJcXHUyNEUxXFx1RkY1MlxcdTAxNTVcXHUxRTU5XFx1MDE1OVxcdTAyMTFcXHUwMjEzXFx1MUU1QlxcdTFFNURcXHUwMTU3XFx1MUU1RlxcdTAyNERcXHUwMjdEXFx1QTc1QlxcdUE3QTdcXHVBNzgzJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICdzJyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDczXFx1MjRFMlxcdUZGNTNcXHUwMERGXFx1MDE1QlxcdTFFNjVcXHUwMTVEXFx1MUU2MVxcdTAxNjFcXHUxRTY3XFx1MUU2M1xcdTFFNjlcXHUwMjE5XFx1MDE1RlxcdTAyM0ZcXHVBN0E5XFx1QTc4NVxcdTFFOUInXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ3QnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNzRcXHUyNEUzXFx1RkY1NFxcdTFFNkJcXHUxRTk3XFx1MDE2NVxcdTFFNkRcXHUwMjFCXFx1MDE2M1xcdTFFNzFcXHUxRTZGXFx1MDE2N1xcdTAxQURcXHUwMjg4XFx1MkM2NlxcdUE3ODcnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ3R6JyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHVBNzI5J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICd1JyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDc1XFx1MjRFNFxcdUZGNTVcXHUwMEY5XFx1MDBGQVxcdTAwRkJcXHUwMTY5XFx1MUU3OVxcdTAxNkJcXHUxRTdCXFx1MDE2RFxcdTAwRkNcXHUwMURDXFx1MDFEOFxcdTAxRDZcXHUwMURBXFx1MUVFN1xcdTAxNkZcXHUwMTcxXFx1MDFENFxcdTAyMTVcXHUwMjE3XFx1MDFCMFxcdTFFRUJcXHUxRUU5XFx1MUVFRlxcdTFFRURcXHUxRUYxXFx1MUVFNVxcdTFFNzNcXHUwMTczXFx1MUU3N1xcdTFFNzVcXHUwMjg5J1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICd2JyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDc2XFx1MjRFNVxcdUZGNTZcXHUxRTdEXFx1MUU3RlxcdTAyOEJcXHVBNzVGXFx1MDI4QydcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAndnknLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdUE3NjEnXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICAgICdiYXNlJzogJ3cnLFxuICAgICAgICAgICdsZXR0ZXJzJzogJ1xcdTAwNzdcXHUyNEU2XFx1RkY1N1xcdTFFODFcXHUxRTgzXFx1MDE3NVxcdTFFODdcXHUxRTg1XFx1MUU5OFxcdTFFODlcXHUyQzczJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgICAnYmFzZSc6ICd4JyxcbiAgICAgICAgICAnbGV0dGVycyc6ICdcXHUwMDc4XFx1MjRFN1xcdUZGNThcXHUxRThCXFx1MUU4RCdcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAneScsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA3OVxcdTI0RThcXHVGRjU5XFx1MUVGM1xcdTAwRkRcXHUwMTc3XFx1MUVGOVxcdTAyMzNcXHUxRThGXFx1MDBGRlxcdTFFRjdcXHUxRTk5XFx1MUVGNVxcdTAxQjRcXHUwMjRGXFx1MUVGRidcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgICAgJ2Jhc2UnOiAneicsXG4gICAgICAgICAgJ2xldHRlcnMnOiAnXFx1MDA3QVxcdTI0RTlcXHVGRjVBXFx1MDE3QVxcdTFFOTFcXHUwMTdDXFx1MDE3RVxcdTFFOTNcXHUxRTk1XFx1MDFCNlxcdTAyMjVcXHUwMjQwXFx1MkM2Q1xcdUE3NjMnXG4gICAgICB9XG4gIF1cbn07XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFVuaWNvZGVTZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcblxuICBwcml2YXRlIGRlZmF1bHREaWFjcml0aWNzUmVtb3ZhbE1hcDogYW55O1xuICBwcml2YXRlIGRpYWNyaXRpY3NNYXA6IE9iamVjdDtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmRlZmF1bHREaWFjcml0aWNzUmVtb3ZhbE1hcCA9IGRpYWNyaXRpY3NSZW1vdmFsTWFwLmRlZmF1bHQ7XG4gICAgdGhpcy5kaWFjcml0aWNzTWFwID0ge307XG4gICAgdGhpcy5kZWZhdWx0RGlhY3JpdGljc1JlbW92YWxNYXAuZm9yRWFjaCh2YWx1ZSA9PiB2YWx1ZS5sZXR0ZXJzLnNwbGl0KCcnKS5mb3JFYWNoKChjaGFyKSA9PiB0aGlzLmRpYWNyaXRpY3NNYXBbY2hhcl0gPSB2YWx1ZS5iYXNlKSk7XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlRGlhY3JpdGljcyhzdHI6IGFueSkge1xuICAgIGlmKHN0ciA9PT0gbnVsbCB8fCBzdHIgPT09IHVuZGVmaW5lZCkgeyByZXR1cm4gc3RyOyB9XG4gICAgcmV0dXJuIHN0ci5yZXBsYWNlKC9bXlxcdTAwMDAtXFx1MDA3RV0vZywgKGE6IHN0cmluZyB8IG51bWJlcikgPT4gdGhpcy5kaWFjcml0aWNzTWFwW2FdIHx8IGEpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kaWFjcml0aWNzTWFwID0ge307XG4gIH1cblxufVxuIl19