@libs-ui/components-inputs-multi-language 0.1.1-1
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.
- package/README.md +3 -0
- package/esm2022/index.mjs +4 -0
- package/esm2022/interfaces/multi-language.interface.mjs +2 -0
- package/esm2022/items/items.component.mjs +150 -0
- package/esm2022/libs-ui-components-inputs-multi-language.mjs +5 -0
- package/esm2022/multi-language.component.mjs +372 -0
- package/esm2022/pipes/display-language.pipe.mjs +25 -0
- package/esm2022/pipes/get-disable-key.pipe.mjs +17 -0
- package/esm2022/pipes/get-item.pipe.mjs +18 -0
- package/esm2022/utils/multi-language.mjs +415 -0
- package/fesm2022/libs-ui-components-inputs-multi-language.mjs +981 -0
- package/fesm2022/libs-ui-components-inputs-multi-language.mjs.map +1 -0
- package/index.d.ts +3 -0
- package/interfaces/multi-language.interface.d.ts +51 -0
- package/items/items.component.d.ts +42 -0
- package/multi-language.component.d.ts +69 -0
- package/package.json +36 -0
- package/pipes/display-language.pipe.d.ts +8 -0
- package/pipes/get-disable-key.pipe.d.ts +7 -0
- package/pipes/get-item.pipe.d.ts +8 -0
- package/utils/multi-language.d.ts +24 -0
|
@@ -0,0 +1,415 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
+
import { HttpParams } from '@angular/common/http';
|
|
3
|
+
import { signal } from '@angular/core';
|
|
4
|
+
import { returnDetailObject, returnListObject } from '@libs-ui/services-http-request';
|
|
5
|
+
import { get, set, UtilsCache } from '@libs-ui/utils';
|
|
6
|
+
export const currenciesSupport = () => {
|
|
7
|
+
// UtilsCache.KEY_CACHE_CURRENCIES_CMS_SUPPORT
|
|
8
|
+
return UtilsCache.Get('test_currencies', ['VND', 'USD', 'EUR']);
|
|
9
|
+
};
|
|
10
|
+
export const languageSupport = () => {
|
|
11
|
+
// UtilsCache.KEY_CACHE_LANGUAGE_CMS_SUPPORT
|
|
12
|
+
return UtilsCache.Get('test_lang', ['vi', 'en']);
|
|
13
|
+
};
|
|
14
|
+
export const currenciesOptions = (objectPattern = { key: 'key', label: 'code' }) => {
|
|
15
|
+
const data = [
|
|
16
|
+
{ symbol: '$', name: 'US Dollar', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'USD', name_plural: 'US dollars', key: 'USD' },
|
|
17
|
+
{ symbol: 'CA$', name: 'Canadian Dollar', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'CAD', name_plural: 'Canadian dollars', key: 'CAD' },
|
|
18
|
+
{ symbol: '€', name: 'Euro', symbol_native: '€', decimal_digits: 2, rounding: 0, code: 'EUR', name_plural: 'euros', key: 'EUR' },
|
|
19
|
+
{ symbol: 'AED', name: 'United Arab Emirates Dirham', symbol_native: 'د.إ.', decimal_digits: 2, rounding: 0, code: 'AED', name_plural: 'UAE dirhams', key: 'AED' },
|
|
20
|
+
{ symbol: 'Af', name: 'Afghan Afghani', symbol_native: '؋', decimal_digits: 0, rounding: 0, code: 'AFN', name_plural: 'Afghan Afghanis', key: 'AFN' },
|
|
21
|
+
{ symbol: 'ALL', name: 'Albanian Lek', symbol_native: 'Lek', decimal_digits: 0, rounding: 0, code: 'ALL', name_plural: 'Albanian lekë', key: 'ALL' },
|
|
22
|
+
{ symbol: 'AMD', name: 'Armenian Dram', symbol_native: 'դր.', decimal_digits: 0, rounding: 0, code: 'AMD', name_plural: 'Armenian drams', key: 'AMD' },
|
|
23
|
+
{ symbol: 'AR$', name: 'Argentine Peso', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'ARS', name_plural: 'Argentine pesos', key: 'ARS' },
|
|
24
|
+
{ symbol: 'AU$', name: 'Australian Dollar', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'AUD', name_plural: 'Australian dollars', key: 'AUD' },
|
|
25
|
+
{ symbol: 'man.', name: 'Azerbaijani Manat', symbol_native: 'ман.', decimal_digits: 2, rounding: 0, code: 'AZN', name_plural: 'Azerbaijani manats', key: 'AZN' },
|
|
26
|
+
{ symbol: 'KM', name: 'Bosnia-Herzegovina Convertible Mark', symbol_native: 'KM', decimal_digits: 2, rounding: 0, code: 'BAM', name_plural: 'Bosnia-Herzegovina convertible marks', key: 'BAM' },
|
|
27
|
+
{ symbol: 'Tk', name: 'Bangladeshi Taka', symbol_native: '৳', decimal_digits: 2, rounding: 0, code: 'BDT', name_plural: 'Bangladeshi takas', key: 'BDT' },
|
|
28
|
+
{ symbol: 'BGN', name: 'Bulgarian Lev', symbol_native: 'лв.', decimal_digits: 2, rounding: 0, code: 'BGN', name_plural: 'Bulgarian leva', key: 'BGN' },
|
|
29
|
+
{ symbol: 'BD', name: 'Bahraini Dinar', symbol_native: 'د.ب.', decimal_digits: 3, rounding: 0, code: 'BHD', name_plural: 'Bahraini dinars', key: 'BHD' },
|
|
30
|
+
{ symbol: 'FBu', name: 'Burundian Franc', symbol_native: 'FBu', decimal_digits: 0, rounding: 0, code: 'BIF', name_plural: 'Burundian francs', key: 'BIF' },
|
|
31
|
+
{ symbol: 'BN$', name: 'Brunei Dollar', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'BND', name_plural: 'Brunei dollars', key: 'BND' },
|
|
32
|
+
{ symbol: 'Bs', name: 'Bolivian Boliviano', symbol_native: 'Bs', decimal_digits: 2, rounding: 0, code: 'BOB', name_plural: 'Bolivian bolivianos', key: 'BOB' },
|
|
33
|
+
{ symbol: 'R$', name: 'Brazilian Real', symbol_native: 'R$', decimal_digits: 2, rounding: 0, code: 'BRL', name_plural: 'Brazilian reals', key: 'BRL' },
|
|
34
|
+
{ symbol: 'BWP', name: 'Botswanan Pula', symbol_native: 'P', decimal_digits: 2, rounding: 0, code: 'BWP', name_plural: 'Botswanan pulas', key: 'BWP' },
|
|
35
|
+
{ symbol: 'Br', name: 'Belarusian Ruble', symbol_native: 'руб.', decimal_digits: 2, rounding: 0, code: 'BYN', name_plural: 'Belarusian rubles', key: 'BYN' },
|
|
36
|
+
{ symbol: 'BZ$', name: 'Belize Dollar', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'BZD', name_plural: 'Belize dollars', key: 'BZD' },
|
|
37
|
+
{ symbol: 'CDF', name: 'Congolese Franc', symbol_native: 'FrCD', decimal_digits: 2, rounding: 0, code: 'CDF', name_plural: 'Congolese francs', key: 'CDF' },
|
|
38
|
+
{ symbol: 'CHF', name: 'Swiss Franc', symbol_native: 'CHF', decimal_digits: 2, rounding: 0.05, code: 'CHF', name_plural: 'Swiss francs', key: 'CHF' },
|
|
39
|
+
{ symbol: 'CL$', name: 'Chilean Peso', symbol_native: '$', decimal_digits: 0, rounding: 0, code: 'CLP', name_plural: 'Chilean pesos', key: 'CLP' },
|
|
40
|
+
{ symbol: 'CN¥', name: 'Chinese Yuan', symbol_native: 'CN¥', decimal_digits: 2, rounding: 0, code: 'CNY', name_plural: 'Chinese yuan', key: 'CNY' },
|
|
41
|
+
{ symbol: 'CO$', name: 'Colombian Peso', symbol_native: '$', decimal_digits: 0, rounding: 0, code: 'COP', name_plural: 'Colombian pesos', key: 'COP' },
|
|
42
|
+
{ symbol: '₡', name: 'Costa Rican Colón', symbol_native: '₡', decimal_digits: 0, rounding: 0, code: 'CRC', name_plural: 'Costa Rican colóns', key: 'CRC' },
|
|
43
|
+
{ symbol: 'CV$', name: 'Cape Verdean Escudo', symbol_native: 'CV$', decimal_digits: 2, rounding: 0, code: 'CVE', name_plural: 'Cape Verdean escudos', key: 'CVE' },
|
|
44
|
+
{ symbol: 'Kč', name: 'Czech Republic Koruna', symbol_native: 'Kč', decimal_digits: 2, rounding: 0, code: 'CZK', name_plural: 'Czech Republic korunas', key: 'CZK' },
|
|
45
|
+
{ symbol: 'Fdj', name: 'Djiboutian Franc', symbol_native: 'Fdj', decimal_digits: 0, rounding: 0, code: 'DJF', name_plural: 'Djiboutian francs', key: 'DJF' },
|
|
46
|
+
{ symbol: 'Dkr', name: 'Danish Krone', symbol_native: 'kr', decimal_digits: 2, rounding: 0, code: 'DKK', name_plural: 'Danish kroner', key: 'DKK' },
|
|
47
|
+
{ symbol: 'RD$', name: 'Dominican Peso', symbol_native: 'RD$', decimal_digits: 2, rounding: 0, code: 'DOP', name_plural: 'Dominican pesos', key: 'DOP' },
|
|
48
|
+
{ symbol: 'DA', name: 'Algerian Dinar', symbol_native: 'د.ج.', decimal_digits: 2, rounding: 0, code: 'DZD', name_plural: 'Algerian dinars', key: 'DZD' },
|
|
49
|
+
{ symbol: 'Ekr', name: 'Estonian Kroon', symbol_native: 'kr', decimal_digits: 2, rounding: 0, code: 'EEK', name_plural: 'Estonian kroons', key: 'EEK' },
|
|
50
|
+
{ symbol: 'EGP', name: 'Egyptian Pound', symbol_native: 'ج.م.', decimal_digits: 2, rounding: 0, code: 'EGP', name_plural: 'Egyptian pounds', key: 'EGP' },
|
|
51
|
+
{ symbol: 'Nfk', name: 'Eritrean Nakfa', symbol_native: 'Nfk', decimal_digits: 2, rounding: 0, code: 'ERN', name_plural: 'Eritrean nakfas', key: 'ERN' },
|
|
52
|
+
{ symbol: 'Br', name: 'Ethiopian Birr', symbol_native: 'Br', decimal_digits: 2, rounding: 0, code: 'ETB', name_plural: 'Ethiopian birrs', key: 'ETB' },
|
|
53
|
+
{ symbol: '£', name: 'British Pound Sterling', symbol_native: '£', decimal_digits: 2, rounding: 0, code: 'GBP', name_plural: 'British pounds sterling', key: 'GBP' },
|
|
54
|
+
{ symbol: 'GEL', name: 'Georgian Lari', symbol_native: 'GEL', decimal_digits: 2, rounding: 0, code: 'GEL', name_plural: 'Georgian laris', key: 'GEL' },
|
|
55
|
+
{ symbol: 'GH₵', name: 'Ghanaian Cedi', symbol_native: 'GH₵', decimal_digits: 2, rounding: 0, code: 'GHS', name_plural: 'Ghanaian cedis', key: 'GHS' },
|
|
56
|
+
{ symbol: 'FG', name: 'Guinean Franc', symbol_native: 'FG', decimal_digits: 0, rounding: 0, code: 'GNF', name_plural: 'Guinean francs', key: 'GNF' },
|
|
57
|
+
{ symbol: 'GTQ', name: 'Guatemalan Quetzal', symbol_native: 'Q', decimal_digits: 2, rounding: 0, code: 'GTQ', name_plural: 'Guatemalan quetzals', key: 'GTQ' },
|
|
58
|
+
{ symbol: 'HK$', name: 'Hong Kong Dollar', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'HKD', name_plural: 'Hong Kong dollars', key: 'HKD' },
|
|
59
|
+
{ symbol: 'HNL', name: 'Honduran Lempira', symbol_native: 'L', decimal_digits: 2, rounding: 0, code: 'HNL', name_plural: 'Honduran lempiras', key: 'HNL' },
|
|
60
|
+
{ symbol: 'kn', name: 'Croatian Kuna', symbol_native: 'kn', decimal_digits: 2, rounding: 0, code: 'HRK', name_plural: 'Croatian kunas', key: 'HRK' },
|
|
61
|
+
{ symbol: 'Ft', name: 'Hungarian Forint', symbol_native: 'Ft', decimal_digits: 0, rounding: 0, code: 'HUF', name_plural: 'Hungarian forints', key: 'HUF' },
|
|
62
|
+
{ symbol: 'Rp', name: 'Indonesian Rupiah', symbol_native: 'Rp', decimal_digits: 0, rounding: 0, code: 'IDR', name_plural: 'Indonesian rupiahs', key: 'IDR' },
|
|
63
|
+
{ symbol: '₪', name: 'Israeli New Sheqel', symbol_native: '₪', decimal_digits: 2, rounding: 0, code: 'ILS', name_plural: 'Israeli new sheqels', key: 'ILS' },
|
|
64
|
+
{ symbol: 'Rs', name: 'Indian Rupee', symbol_native: 'টকা', decimal_digits: 2, rounding: 0, code: 'INR', name_plural: 'Indian rupees', key: 'INR' },
|
|
65
|
+
{ symbol: 'IQD', name: 'Iraqi Dinar', symbol_native: 'د.ع.', decimal_digits: 0, rounding: 0, code: 'IQD', name_plural: 'Iraqi dinars', key: 'IQD' },
|
|
66
|
+
{ symbol: 'IRR', name: 'Iranian Rial', symbol_native: '﷼', decimal_digits: 0, rounding: 0, code: 'IRR', name_plural: 'Iranian rials', key: 'IRR' },
|
|
67
|
+
{ symbol: 'Ikr', name: 'Icelandic Króna', symbol_native: 'kr', decimal_digits: 0, rounding: 0, code: 'ISK', name_plural: 'Icelandic krónur', key: 'ISK' },
|
|
68
|
+
{ symbol: 'J$', name: 'Jamaican Dollar', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'JMD', name_plural: 'Jamaican dollars', key: 'JMD' },
|
|
69
|
+
{ symbol: 'JD', name: 'Jordanian Dinar', symbol_native: 'د.أ.', decimal_digits: 3, rounding: 0, code: 'JOD', name_plural: 'Jordanian dinars', key: 'JOD' },
|
|
70
|
+
{ symbol: '¥', name: 'Japanese Yen', symbol_native: '¥', decimal_digits: 0, rounding: 0, code: 'JPY', name_plural: 'Japanese yen', key: 'JPY' },
|
|
71
|
+
{ symbol: 'Ksh', name: 'Kenyan Shilling', symbol_native: 'Ksh', decimal_digits: 2, rounding: 0, code: 'KES', name_plural: 'Kenyan shillings', key: 'KES' },
|
|
72
|
+
{ symbol: 'KHR', name: 'Cambodian Riel', symbol_native: '៛', decimal_digits: 2, rounding: 0, code: 'KHR', name_plural: 'Cambodian riels', key: 'KHR' },
|
|
73
|
+
{ symbol: 'CF', name: 'Comorian Franc', symbol_native: 'FC', decimal_digits: 0, rounding: 0, code: 'KMF', name_plural: 'Comorian francs', key: 'KMF' },
|
|
74
|
+
{ symbol: '₩', name: 'South Korean Won', symbol_native: '₩', decimal_digits: 0, rounding: 0, code: 'KRW', name_plural: 'South Korean won', key: 'KRW' },
|
|
75
|
+
{ symbol: 'KD', name: 'Kuwaiti Dinar', symbol_native: 'د.ك.', decimal_digits: 3, rounding: 0, code: 'KWD', name_plural: 'Kuwaiti dinars', key: 'KWD' },
|
|
76
|
+
{ symbol: 'KZT', name: 'Kazakhstani Tenge', symbol_native: 'тңг.', decimal_digits: 2, rounding: 0, code: 'KZT', name_plural: 'Kazakhstani tenges', key: 'KZT' },
|
|
77
|
+
{ symbol: 'LB£', name: 'Lebanese Pound', symbol_native: 'ل.ل.', decimal_digits: 0, rounding: 0, code: 'LBP', name_plural: 'Lebanese pounds', key: 'LBP' },
|
|
78
|
+
{ symbol: 'SLRs', name: 'Sri Lankan Rupee', symbol_native: 'SL Re', decimal_digits: 2, rounding: 0, code: 'LKR', name_plural: 'Sri Lankan rupees', key: 'LKR' },
|
|
79
|
+
{ symbol: 'Lt', name: 'Lithuanian Litas', symbol_native: 'Lt', decimal_digits: 2, rounding: 0, code: 'LTL', name_plural: 'Lithuanian litai', key: 'LTL' },
|
|
80
|
+
{ symbol: 'Ls', name: 'Latvian Lats', symbol_native: 'Ls', decimal_digits: 2, rounding: 0, code: 'LVL', name_plural: 'Latvian lati', key: 'LVL' },
|
|
81
|
+
{ symbol: 'LD', name: 'Libyan Dinar', symbol_native: 'د.ل.', decimal_digits: 3, rounding: 0, code: 'LYD', name_plural: 'Libyan dinars', key: 'LYD' },
|
|
82
|
+
{ symbol: 'MAD', name: 'Moroccan Dirham', symbol_native: 'د.م.', decimal_digits: 2, rounding: 0, code: 'MAD', name_plural: 'Moroccan dirhams', key: 'MAD' },
|
|
83
|
+
{ symbol: 'MDL', name: 'Moldovan Leu', symbol_native: 'MDL', decimal_digits: 2, rounding: 0, code: 'MDL', name_plural: 'Moldovan lei', key: 'MDL' },
|
|
84
|
+
{ symbol: 'MGA', name: 'Malagasy Ariary', symbol_native: 'MGA', decimal_digits: 0, rounding: 0, code: 'MGA', name_plural: 'Malagasy Ariaries', key: 'MGA' },
|
|
85
|
+
{ symbol: 'MKD', name: 'Macedonian Denar', symbol_native: 'MKD', decimal_digits: 2, rounding: 0, code: 'MKD', name_plural: 'Macedonian denari', key: 'MKD' },
|
|
86
|
+
{ symbol: 'MMK', name: 'Myanma Kyat', symbol_native: 'K', decimal_digits: 0, rounding: 0, code: 'MMK', name_plural: 'Myanma kyats', key: 'MMK' },
|
|
87
|
+
{ symbol: 'MOP$', name: 'Macanese Pataca', symbol_native: 'MOP$', decimal_digits: 2, rounding: 0, code: 'MOP', name_plural: 'Macanese patacas', key: 'MOP' },
|
|
88
|
+
{ symbol: 'MURs', name: 'Mauritian Rupee', symbol_native: 'MURs', decimal_digits: 0, rounding: 0, code: 'MUR', name_plural: 'Mauritian rupees', key: 'MUR' },
|
|
89
|
+
{ symbol: 'MX$', name: 'Mexican Peso', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'MXN', name_plural: 'Mexican pesos', key: 'MXN' },
|
|
90
|
+
{ symbol: 'RM', name: 'Malaysian Ringgit', symbol_native: 'RM', decimal_digits: 2, rounding: 0, code: 'MYR', name_plural: 'Malaysian ringgits', key: 'MYR' },
|
|
91
|
+
{ symbol: 'MTn', name: 'Mozambican Metical', symbol_native: 'MTn', decimal_digits: 2, rounding: 0, code: 'MZN', name_plural: 'Mozambican meticals', key: 'MZN' },
|
|
92
|
+
{ symbol: 'N$', name: 'Namibian Dollar', symbol_native: 'N$', decimal_digits: 2, rounding: 0, code: 'NAD', name_plural: 'Namibian dollars', key: 'NAD' },
|
|
93
|
+
{ symbol: '₦', name: 'Nigerian Naira', symbol_native: '₦', decimal_digits: 2, rounding: 0, code: 'NGN', name_plural: 'Nigerian nairas', key: 'NGN' },
|
|
94
|
+
{ symbol: 'C$', name: 'Nicaraguan Córdoba', symbol_native: 'C$', decimal_digits: 2, rounding: 0, code: 'NIO', name_plural: 'Nicaraguan córdobas', key: 'NIO' },
|
|
95
|
+
{ symbol: 'Nkr', name: 'Norwegian Krone', symbol_native: 'kr', decimal_digits: 2, rounding: 0, code: 'NOK', name_plural: 'Norwegian kroner', key: 'NOK' },
|
|
96
|
+
{ symbol: 'NPRs', name: 'Nepalese Rupee', symbol_native: 'नेरू', decimal_digits: 2, rounding: 0, code: 'NPR', name_plural: 'Nepalese rupees', key: 'NPR' },
|
|
97
|
+
{ symbol: 'NZ$', name: 'New Zealand Dollar', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'NZD', name_plural: 'New Zealand dollars', key: 'NZD' },
|
|
98
|
+
{ symbol: 'OMR', name: 'Omani Rial', symbol_native: 'ر.ع.', decimal_digits: 3, rounding: 0, code: 'OMR', name_plural: 'Omani rials', key: 'OMR' },
|
|
99
|
+
{ symbol: 'B/.', name: 'Panamanian Balboa', symbol_native: 'B/.', decimal_digits: 2, rounding: 0, code: 'PAB', name_plural: 'Panamanian balboas', key: 'PAB' },
|
|
100
|
+
{ symbol: 'S/.', name: 'Peruvian Nuevo Sol', symbol_native: 'S/.', decimal_digits: 2, rounding: 0, code: 'PEN', name_plural: 'Peruvian nuevos soles', key: 'PEN' },
|
|
101
|
+
{ symbol: '₱', name: 'Philippine Peso', symbol_native: '₱', decimal_digits: 2, rounding: 0, code: 'PHP', name_plural: 'Philippine pesos', key: 'PHP' },
|
|
102
|
+
{ symbol: 'PKRs', name: 'Pakistani Rupee', symbol_native: '₨', decimal_digits: 0, rounding: 0, code: 'PKR', name_plural: 'Pakistani rupees', key: 'PKR' },
|
|
103
|
+
{ symbol: 'zł', name: 'Polish Zloty', symbol_native: 'zł', decimal_digits: 2, rounding: 0, code: 'PLN', name_plural: 'Polish zlotys', key: 'PLN' },
|
|
104
|
+
{ symbol: '₲', name: 'Paraguayan Guarani', symbol_native: '₲', decimal_digits: 0, rounding: 0, code: 'PYG', name_plural: 'Paraguayan guaranis', key: 'PYG' },
|
|
105
|
+
{ symbol: 'QR', name: 'Qatari Rial', symbol_native: 'ر.ق.', decimal_digits: 2, rounding: 0, code: 'QAR', name_plural: 'Qatari rials', key: 'QAR' },
|
|
106
|
+
{ symbol: 'RON', name: 'Romanian Leu', symbol_native: 'RON', decimal_digits: 2, rounding: 0, code: 'RON', name_plural: 'Romanian lei', key: 'RON' },
|
|
107
|
+
{ symbol: 'din.', name: 'Serbian Dinar', symbol_native: 'дин.', decimal_digits: 0, rounding: 0, code: 'RSD', name_plural: 'Serbian dinars', key: 'RSD' },
|
|
108
|
+
{ symbol: 'RUB', name: 'Russian Ruble', symbol_native: '₽.', decimal_digits: 2, rounding: 0, code: 'RUB', name_plural: 'Russian rubles', key: 'RUB' },
|
|
109
|
+
{ symbol: 'RWF', name: 'Rwandan Franc', symbol_native: 'FR', decimal_digits: 0, rounding: 0, code: 'RWF', name_plural: 'Rwandan francs', key: 'RWF' },
|
|
110
|
+
{ symbol: 'SR', name: 'Saudi Riyal', symbol_native: 'ر.س.', decimal_digits: 2, rounding: 0, code: 'SAR', name_plural: 'Saudi riyals', key: 'SAR' },
|
|
111
|
+
{ symbol: 'SDG', name: 'Sudanese Pound', symbol_native: 'SDG', decimal_digits: 2, rounding: 0, code: 'SDG', name_plural: 'Sudanese pounds', key: 'SDG' },
|
|
112
|
+
{ symbol: 'Skr', name: 'Swedish Krona', symbol_native: 'kr', decimal_digits: 2, rounding: 0, code: 'SEK', name_plural: 'Swedish kronor', key: 'SEK' },
|
|
113
|
+
{ symbol: 'S$', name: 'Singapore Dollar', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'SGD', name_plural: 'Singapore dollars', key: 'SGD' },
|
|
114
|
+
{ symbol: 'Ssh', name: 'Somali Shilling', symbol_native: 'Ssh', decimal_digits: 0, rounding: 0, code: 'SOS', name_plural: 'Somali shillings', key: 'SOS' },
|
|
115
|
+
{ symbol: 'SY£', name: 'Syrian Pound', symbol_native: 'ل.س.', decimal_digits: 0, rounding: 0, code: 'SYP', name_plural: 'Syrian pounds', key: 'SYP' },
|
|
116
|
+
{ symbol: '฿', name: 'Thai Baht', symbol_native: '฿', decimal_digits: 2, rounding: 0, code: 'THB', name_plural: 'Thai baht', key: 'THB' },
|
|
117
|
+
{ symbol: 'DT', name: 'Tunisian Dinar', symbol_native: 'د.ت.', decimal_digits: 3, rounding: 0, code: 'TND', name_plural: 'Tunisian dinars', key: 'TND' },
|
|
118
|
+
{ symbol: 'T$', name: 'Tongan Paʻanga', symbol_native: 'T$', decimal_digits: 2, rounding: 0, code: 'TOP', name_plural: 'Tongan paʻanga', key: 'TOP' },
|
|
119
|
+
{ symbol: 'TL', name: 'Turkish Lira', symbol_native: 'TL', decimal_digits: 2, rounding: 0, code: 'TRY', name_plural: 'Turkish Lira', key: 'TRY' },
|
|
120
|
+
{ symbol: 'TT$', name: 'Trinidad and Tobago Dollar', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'TTD', name_plural: 'Trinidad and Tobago dollars', key: 'TTD' },
|
|
121
|
+
{ symbol: 'NT$', name: 'New Taiwan Dollar', symbol_native: 'NT$', decimal_digits: 2, rounding: 0, code: 'TWD', name_plural: 'New Taiwan dollars', key: 'TWD' },
|
|
122
|
+
{ symbol: 'TSh', name: 'Tanzanian Shilling', symbol_native: 'TSh', decimal_digits: 0, rounding: 0, code: 'TZS', name_plural: 'Tanzanian shillings', key: 'TZS' },
|
|
123
|
+
{ symbol: '₴', name: 'Ukrainian Hryvnia', symbol_native: '₴', decimal_digits: 2, rounding: 0, code: 'UAH', name_plural: 'Ukrainian hryvnias', key: 'UAH' },
|
|
124
|
+
{ symbol: 'USh', name: 'Ugandan Shilling', symbol_native: 'USh', decimal_digits: 0, rounding: 0, code: 'UGX', name_plural: 'Ugandan shillings', key: 'UGX' },
|
|
125
|
+
{ symbol: '$U', name: 'Uruguayan Peso', symbol_native: '$', decimal_digits: 2, rounding: 0, code: 'UYU', name_plural: 'Uruguayan pesos', key: 'UYU' },
|
|
126
|
+
{ symbol: 'UZS', name: 'Uzbekistan Som', symbol_native: 'UZS', decimal_digits: 0, rounding: 0, code: 'UZS', name_plural: 'Uzbekistan som', key: 'UZS' },
|
|
127
|
+
{ symbol: 'Bs.F.', name: 'Venezuelan Bolívar', symbol_native: 'Bs.F.', decimal_digits: 2, rounding: 0, code: 'VEF', name_plural: 'Venezuelan bolívars', key: 'VEF' },
|
|
128
|
+
{ symbol: '₫', name: 'Vietnamese Dong', symbol_native: '₫', decimal_digits: 0, rounding: 0, code: 'VND', name_plural: 'Vietnamese dong', key: 'VND' },
|
|
129
|
+
{ symbol: 'FCFA', name: 'CFA Franc BEAC', symbol_native: 'FCFA', decimal_digits: 0, rounding: 0, code: 'XAF', name_plural: 'CFA francs BEAC', key: 'XAF' },
|
|
130
|
+
{ symbol: 'CFA', name: 'CFA Franc BCEAO', symbol_native: 'CFA', decimal_digits: 0, rounding: 0, code: 'XOF', name_plural: 'CFA francs BCEAO', key: 'XOF' },
|
|
131
|
+
{ symbol: 'YR', name: 'Yemeni Rial', symbol_native: 'ر.ي.', decimal_digits: 0, rounding: 0, code: 'YER', name_plural: 'Yemeni rials', key: 'YER' },
|
|
132
|
+
{ symbol: 'R', name: 'South African Rand', symbol_native: 'R', decimal_digits: 2, rounding: 0, code: 'ZAR', name_plural: 'South African rand', key: 'ZAR' },
|
|
133
|
+
{ symbol: 'ZK', name: 'Zambian Kwacha', symbol_native: 'ZK', decimal_digits: 0, rounding: 0, code: 'ZMK', name_plural: 'Zambian kwachas', key: 'ZMK' },
|
|
134
|
+
{ symbol: 'ZWL$', name: 'Zimbabwean Dollar', symbol_native: 'ZWL$', decimal_digits: 0, rounding: 0, code: 'ZWL', name_plural: 'Zimbabwean Dollar', key: 'ZWL' },
|
|
135
|
+
];
|
|
136
|
+
const dataurrenciesSupportData = [];
|
|
137
|
+
currenciesSupport().forEach((key) => {
|
|
138
|
+
const found = data.find((item) => item.key === key);
|
|
139
|
+
if (found) {
|
|
140
|
+
dataurrenciesSupportData.push(found);
|
|
141
|
+
}
|
|
142
|
+
});
|
|
143
|
+
return convertObjectOfArray(objectPattern, dataurrenciesSupportData);
|
|
144
|
+
};
|
|
145
|
+
export const langOptions = (objectPattern = { key: 'key', label: 'nativeName' }) => {
|
|
146
|
+
const data = [
|
|
147
|
+
{ name: 'Abkhaz', nativeName: 'аҧсуа', key: 'ab' },
|
|
148
|
+
{ name: 'Afar', nativeName: 'Afaraf', key: 'aa' },
|
|
149
|
+
{ name: 'Afrikaans', nativeName: 'Afrikaans', key: 'af' },
|
|
150
|
+
{ name: 'Akan', nativeName: 'Akan', key: 'ak' },
|
|
151
|
+
{ name: 'Albanian', nativeName: 'Shqip', key: 'sq' },
|
|
152
|
+
{ name: 'Amharic', nativeName: 'አማርኛ', key: 'am' },
|
|
153
|
+
{ name: 'Arabic', nativeName: 'العربية', key: 'ar' },
|
|
154
|
+
{ name: 'Aragonese', nativeName: 'Aragonés', key: 'an' },
|
|
155
|
+
{ name: 'Armenian', nativeName: 'Հայերեն', key: 'hy' },
|
|
156
|
+
{ name: 'Assamese', nativeName: 'অসমীয়া', key: 'as' },
|
|
157
|
+
{ name: 'Avaric', nativeName: 'авар мацӀ, магӀарул мацӀ', key: 'av' },
|
|
158
|
+
{ name: 'Avestan', nativeName: 'avesta', key: 'ae' },
|
|
159
|
+
{ name: 'Aymara', nativeName: 'aymar aru', key: 'ay' },
|
|
160
|
+
{ name: 'Azerbaijani', nativeName: 'azərbaycan dili', key: 'az' },
|
|
161
|
+
{ name: 'Bambara', nativeName: 'bamanankan', key: 'bm' },
|
|
162
|
+
{ name: 'Bashkir', nativeName: 'башҡорт теле', key: 'ba' },
|
|
163
|
+
{ name: 'Basque', nativeName: 'euskara, euskera', key: 'eu' },
|
|
164
|
+
{ name: 'Belarusian', nativeName: 'Беларуская', key: 'be' },
|
|
165
|
+
{ name: 'Bengali', nativeName: 'বাংলা', key: 'bn' },
|
|
166
|
+
{ name: 'Bihari', nativeName: 'भोजपुरी', key: 'bh' },
|
|
167
|
+
{ name: 'Bislama', nativeName: 'Bislama', key: 'bi' },
|
|
168
|
+
{ name: 'Bosnian', nativeName: 'bosanski jezik', key: 'bs' },
|
|
169
|
+
{ name: 'Breton', nativeName: 'brezhoneg', key: 'br' },
|
|
170
|
+
{ name: 'Bulgarian', nativeName: 'български език', key: 'bg' },
|
|
171
|
+
{ name: 'Burmese', nativeName: 'ဗမာစာ', key: 'my' },
|
|
172
|
+
{ name: 'Catalan; Valencian', nativeName: 'Català', key: 'ca' },
|
|
173
|
+
{ name: 'Chamorro', nativeName: 'Chamoru', key: 'ch' },
|
|
174
|
+
{ name: 'Chechen', nativeName: 'нохчийн мотт', key: 'ce' },
|
|
175
|
+
{ name: 'Chichewa; Chewa; Nyanja', nativeName: 'chiCheŵa, chinyanja', key: 'ny' },
|
|
176
|
+
{ name: 'Chinese', nativeName: '中文 (Zhōngwén), 汉语, 漢語', key: 'zh' },
|
|
177
|
+
{ name: 'Chuvash', nativeName: 'чӑваш чӗлхи', key: 'cv' },
|
|
178
|
+
{ name: 'Cornish', nativeName: 'Kernewek', key: 'kw' },
|
|
179
|
+
{ name: 'Corsican', nativeName: 'corsu, lingua corsa', key: 'co' },
|
|
180
|
+
{ name: 'Cree', nativeName: 'ᓀᐦᐃᔭᐍᐏᐣ', key: 'cr' },
|
|
181
|
+
{ name: 'Croatian', nativeName: 'hrvatski', key: 'hr' },
|
|
182
|
+
{ name: 'Czech', nativeName: 'česky, čeština', key: 'cs' },
|
|
183
|
+
{ name: 'Danish', nativeName: 'dansk', key: 'da' },
|
|
184
|
+
{ name: 'Divehi; Dhivehi; Maldivian;', nativeName: 'ދިވެހި', key: 'dv' },
|
|
185
|
+
{ name: 'Dutch', nativeName: 'Nederlands, Vlaams', key: 'nl' },
|
|
186
|
+
{ name: 'English', nativeName: 'English', key: 'en' },
|
|
187
|
+
{ name: 'Esperanto', nativeName: 'Esperanto', key: 'eo' },
|
|
188
|
+
{ name: 'Estonian', nativeName: 'eesti, eesti keel', key: 'et' },
|
|
189
|
+
{ name: 'Ewe', nativeName: 'Eʋegbe', key: 'ee' },
|
|
190
|
+
{ name: 'Faroese', nativeName: 'føroyskt', key: 'fo' },
|
|
191
|
+
{ name: 'Fijian', nativeName: 'vosa Vakaviti', key: 'fj' },
|
|
192
|
+
{ name: 'Finnish', nativeName: 'suomi, suomen kieli', key: 'fi' },
|
|
193
|
+
{ name: 'French', nativeName: 'français, langue française', key: 'fr' },
|
|
194
|
+
{ name: 'Fula; Fulah; Pulaar; Pular', nativeName: 'Fulfulde, Pulaar, Pular', key: 'ff' },
|
|
195
|
+
{ name: 'Galician', nativeName: 'Galego', key: 'gl' },
|
|
196
|
+
{ name: 'Georgian', nativeName: 'ქართული', key: 'ka' },
|
|
197
|
+
{ name: 'German', nativeName: 'Deutsch', key: 'de' },
|
|
198
|
+
{ name: 'Greek, Modern', nativeName: 'Ελληνικά', key: 'el' },
|
|
199
|
+
{ name: 'Guaraní', nativeName: 'Avañeẽ', key: 'gn' },
|
|
200
|
+
{ name: 'Gujarati', nativeName: 'ગુજરાતી', key: 'gu' },
|
|
201
|
+
{ name: 'Haitian; Haitian Creole', nativeName: 'Kreyòl ayisyen', key: 'ht' },
|
|
202
|
+
{ name: 'Hausa', nativeName: 'Hausa, هَوُسَ', key: 'ha' },
|
|
203
|
+
{ name: 'Hebrew (modern)', nativeName: 'עברית', key: 'he' },
|
|
204
|
+
{ name: 'Herero', nativeName: 'Otjiherero', key: 'hz' },
|
|
205
|
+
{ name: 'Hindi', nativeName: 'हिन्दी, हिंदी', key: 'hi' },
|
|
206
|
+
{ name: 'Hiri Motu', nativeName: 'Hiri Motu', key: 'ho' },
|
|
207
|
+
{ name: 'Hungarian', nativeName: 'Magyar', key: 'hu' },
|
|
208
|
+
{ name: 'Interlingua', nativeName: 'Interlingua', key: 'ia' },
|
|
209
|
+
{ name: 'Indonesian', nativeName: 'Bahasa Indonesia', key: 'id' },
|
|
210
|
+
{ name: 'Interlingue', nativeName: 'Originally called Occidental; then Interlingue after WWII', key: 'ie' },
|
|
211
|
+
{ name: 'Irish', nativeName: 'Gaeilge', key: 'ga' },
|
|
212
|
+
{ name: 'Igbo', nativeName: 'Asụsụ Igbo', key: 'ig' },
|
|
213
|
+
{ name: 'Inupiaq', nativeName: 'Iñupiaq, Iñupiatun', key: 'ik' },
|
|
214
|
+
{ name: 'Ido', nativeName: 'Ido', key: 'io' },
|
|
215
|
+
{ name: 'Icelandic', nativeName: 'Íslenska', key: 'is' },
|
|
216
|
+
{ name: 'Italian', nativeName: 'Italiano', key: 'it' },
|
|
217
|
+
{ name: 'Inuktitut', nativeName: 'ᐃᓄᒃᑎᑐᑦ', key: 'iu' },
|
|
218
|
+
{ name: 'Japanese', nativeName: '日本語 (にほんご/にっぽんご)', key: 'ja' },
|
|
219
|
+
{ name: 'Javanese', nativeName: 'basa Jawa', key: 'jv' },
|
|
220
|
+
{ name: 'Kalaallisut, Greenlandic', nativeName: 'kalaallisut, kalaallit oqaasii', key: 'kl' },
|
|
221
|
+
{ name: 'Kannada', nativeName: 'ಕನ್ನಡ', key: 'kn' },
|
|
222
|
+
{ name: 'Kanuri', nativeName: 'Kanuri', key: 'kr' },
|
|
223
|
+
{ name: 'Kashmiri', nativeName: 'कश्मीरी, كشميري', key: 'ks' },
|
|
224
|
+
{ name: 'Kazakh', nativeName: 'Қазақ тілі', key: 'kk' },
|
|
225
|
+
{ name: 'Khmer', nativeName: 'ភាសាខ្មែរ', key: 'km' },
|
|
226
|
+
{ name: 'Kikuyu, Gikuyu', nativeName: 'Gĩkũyũ', key: 'ki' },
|
|
227
|
+
{ name: 'Kinyarwanda', nativeName: 'Ikinyarwanda', key: 'rw' },
|
|
228
|
+
{ name: 'Kirghiz, Kyrgyz', nativeName: 'кыргыз тили', key: 'ky' },
|
|
229
|
+
{ name: 'Komi', nativeName: 'коми кыв', key: 'kv' },
|
|
230
|
+
{ name: 'Kongo', nativeName: 'KiKongo', key: 'kg' },
|
|
231
|
+
{ name: 'Korean', nativeName: '한국어 (韓國語), 조선말 (朝鮮語)', key: 'ko' },
|
|
232
|
+
{ name: 'Kurdish', nativeName: 'Kurdî, كوردی', key: 'ku' },
|
|
233
|
+
{ name: 'Kwanyama, Kuanyama', nativeName: 'Kuanyama', key: 'kj' },
|
|
234
|
+
{ name: 'Latin', nativeName: 'latine, lingua latina', key: 'la' },
|
|
235
|
+
{ name: 'Luxembourgish, Letzeburgesch', nativeName: 'Lëtzebuergesch', key: 'lb' },
|
|
236
|
+
{ name: 'Luganda', nativeName: 'Luganda', key: 'lg' },
|
|
237
|
+
{ name: 'Limburgish, Limburgan, Limburger', nativeName: 'Limburgs', key: 'li' },
|
|
238
|
+
{ name: 'Lingala', nativeName: 'Lingála', key: 'ln' },
|
|
239
|
+
{ name: 'Lao', nativeName: 'ພາສາລາວ', key: 'lo' },
|
|
240
|
+
{ name: 'Lithuanian', nativeName: 'lietuvių kalba', key: 'lt' },
|
|
241
|
+
{ name: 'Luba-Katanga', nativeName: 'Luba-Katanga', key: 'lu' },
|
|
242
|
+
{ name: 'Latvian', nativeName: 'latviešu valoda', key: 'lv' },
|
|
243
|
+
{ name: 'Manx', nativeName: 'Gaelg, Gailck', key: 'gv' },
|
|
244
|
+
{ name: 'Macedonian', nativeName: 'македонски јазик', key: 'mk' },
|
|
245
|
+
{ name: 'Malagasy', nativeName: 'Malagasy fiteny', key: 'mg' },
|
|
246
|
+
{ name: 'Malay', nativeName: 'bahasa Melayu, بهاس ملايو', key: 'ms' },
|
|
247
|
+
{ name: 'Malayalam', nativeName: 'മലയാളം', key: 'ml' },
|
|
248
|
+
{ name: 'Maltese', nativeName: 'Malti', key: 'mt' },
|
|
249
|
+
{ name: 'Māori', nativeName: 'te reo Māori', key: 'mi' },
|
|
250
|
+
{ name: 'Marathi (Marāṭhī)', nativeName: 'मराठी', key: 'mr' },
|
|
251
|
+
{ name: 'Marshallese', nativeName: 'Kajin M̧ajeļ', key: 'mh' },
|
|
252
|
+
{ name: 'Mongolian', nativeName: 'монгол', key: 'mn' },
|
|
253
|
+
{ name: 'Nauru', nativeName: 'Ekakairũ Naoero', key: 'na' },
|
|
254
|
+
{ name: 'Navajo, Navaho', nativeName: 'Diné bizaad, Dinékʼehǰí', key: 'nv' },
|
|
255
|
+
{ name: 'Norwegian Bokmål', nativeName: 'Norsk bokmål', key: 'nb' },
|
|
256
|
+
{ name: 'North Ndebele', nativeName: 'isiNdebele', key: 'nd' },
|
|
257
|
+
{ name: 'Nepali', nativeName: 'नेपाली', key: 'ne' },
|
|
258
|
+
{ name: 'Ndonga', nativeName: 'Owambo', key: 'ng' },
|
|
259
|
+
{ name: 'Norwegian Nynorsk', nativeName: 'Norsk nynorsk', key: 'nn' },
|
|
260
|
+
{ name: 'Norwegian', nativeName: 'Norsk', key: 'no' },
|
|
261
|
+
{ name: 'Nuosu', nativeName: 'ꆈꌠ꒿ Nuosuhxop', key: 'ii' },
|
|
262
|
+
{ name: 'South Ndebele', nativeName: 'isiNdebele', key: 'nr' },
|
|
263
|
+
{ name: 'Occitan', nativeName: 'Occitan', key: 'oc' },
|
|
264
|
+
{ name: 'Ojibwe, Ojibwa', nativeName: 'ᐊᓂᔑᓈᐯᒧᐎᓐ', key: 'oj' },
|
|
265
|
+
{ name: 'Old Church Slavonic, Church Slavic, Church Slavonic, Old Bulgarian, Old Slavonic', nativeName: 'ѩзыкъ словѣньскъ', key: 'cu' },
|
|
266
|
+
{ name: 'Oromo', nativeName: 'Afaan Oromoo', key: 'om' },
|
|
267
|
+
{ name: 'Oriya', nativeName: 'ଓଡ଼ିଆ', key: 'or' },
|
|
268
|
+
{ name: 'Ossetian, Ossetic', nativeName: 'ирон æвзаг', key: 'os' },
|
|
269
|
+
{ name: 'Panjabi, Punjabi', nativeName: 'ਪੰਜਾਬੀ, پنجابی', key: 'pa' },
|
|
270
|
+
{ name: 'Pāli', nativeName: 'पाऴि', key: 'pi' },
|
|
271
|
+
{ name: 'Persian', nativeName: 'فارسی', key: 'fa' },
|
|
272
|
+
{ name: 'Polish', nativeName: 'polski', key: 'pl' },
|
|
273
|
+
{ name: 'Pashto, Pushto', nativeName: 'پښتو', key: 'ps' },
|
|
274
|
+
{ name: 'Portuguese', nativeName: 'Português', key: 'pt' },
|
|
275
|
+
{ name: 'Quechua', nativeName: 'Runa Simi, Kichwa', key: 'qu' },
|
|
276
|
+
{ name: 'Romansh', nativeName: 'rumantsch grischun', key: 'rm' },
|
|
277
|
+
{ name: 'Kirundi', nativeName: 'kiRundi', key: 'rn' },
|
|
278
|
+
{ name: 'Romanian, Moldavian, Moldovan', nativeName: 'română', key: 'ro' },
|
|
279
|
+
{ name: 'Russian', nativeName: 'русский язык', key: 'ru' },
|
|
280
|
+
{ name: 'Sanskrit (Saṁskṛta)', nativeName: 'संस्कृतम्', key: 'sa' },
|
|
281
|
+
{ name: 'Sardinian', nativeName: 'sardu', key: 'sc' },
|
|
282
|
+
{ name: 'Sindhi', nativeName: 'सिन्धी, سنڌي، سندھی', key: 'sd' },
|
|
283
|
+
{ name: 'Northern Sami', nativeName: 'Davvisámegiella', key: 'se' },
|
|
284
|
+
{ name: 'Samoan', nativeName: 'gagana faa Samoa', key: 'sm' },
|
|
285
|
+
{ name: 'Sango', nativeName: 'yângâ tî sängö', key: 'sg' },
|
|
286
|
+
{ name: 'Serbian', nativeName: 'српски језик', key: 'sr' },
|
|
287
|
+
{ name: 'Scottish Gaelic; Gaelic', nativeName: 'Gàidhlig', key: 'gd' },
|
|
288
|
+
{ name: 'Shona', nativeName: 'chiShona', key: 'sn' },
|
|
289
|
+
{ name: 'Sinhala, Sinhalese', nativeName: 'සිංහල', key: 'si' },
|
|
290
|
+
{ name: 'Slovak', nativeName: 'slovenčina', key: 'sk' },
|
|
291
|
+
{ name: 'Slovene', nativeName: 'slovenščina', key: 'sl' },
|
|
292
|
+
{ name: 'Somali', nativeName: 'Soomaaliga, af Soomaali', key: 'so' },
|
|
293
|
+
{ name: 'Southern Sotho', nativeName: 'Sesotho', key: 'st' },
|
|
294
|
+
{ name: 'Spanish; Castilian', nativeName: 'español, castellano', key: 'es' },
|
|
295
|
+
{ name: 'Sundanese', nativeName: 'Basa Sunda', key: 'su' },
|
|
296
|
+
{ name: 'Swahili', nativeName: 'Kiswahili', key: 'sw' },
|
|
297
|
+
{ name: 'Swati', nativeName: 'SiSwati', key: 'ss' },
|
|
298
|
+
{ name: 'Swedish', nativeName: 'svenska', key: 'sv' },
|
|
299
|
+
{ name: 'Tamil', nativeName: 'தமிழ்', key: 'ta' },
|
|
300
|
+
{ name: 'Telugu', nativeName: 'తెలుగు', key: 'te' },
|
|
301
|
+
{ name: 'Tajik', nativeName: 'тоҷикӣ, toğikī, تاجیکی', key: 'tg' },
|
|
302
|
+
{ name: 'Thai', nativeName: 'ไทย', key: 'th' },
|
|
303
|
+
{ name: 'Tigrinya', nativeName: 'ትግርኛ', key: 'ti' },
|
|
304
|
+
{ name: 'Tibetan Standard, Tibetan, Central', nativeName: 'བོད་ཡིག', key: 'bo' },
|
|
305
|
+
{ name: 'Turkmen', nativeName: 'Türkmen, Түркмен', key: 'tk' },
|
|
306
|
+
{ name: 'Tagalog', nativeName: 'Wikang Tagalog, ᜏᜒᜃᜅ᜔ ᜆᜄᜎᜓᜄ᜔', key: 'tl' },
|
|
307
|
+
{ name: 'Tswana', nativeName: 'Setswana', key: 'tn' },
|
|
308
|
+
{ name: 'Tonga (Tonga Islands)', nativeName: 'faka Tonga', key: 'to' },
|
|
309
|
+
{ name: 'Turkish', nativeName: 'Türkçe', key: 'tr' },
|
|
310
|
+
{ name: 'Tsonga', nativeName: 'Xitsonga', key: 'ts' },
|
|
311
|
+
{ name: 'Tatar', nativeName: 'татарча, tatarça, تاتارچا', key: 'tt' },
|
|
312
|
+
{ name: 'Twi', nativeName: 'Twi', key: 'tw' },
|
|
313
|
+
{ name: 'Tahitian', nativeName: 'Reo Tahiti', key: 'ty' },
|
|
314
|
+
{ name: 'Uighur, Uyghur', nativeName: 'Uyƣurqə, ئۇيغۇرچە', key: 'ug' },
|
|
315
|
+
{ name: 'Ukrainian', nativeName: 'українська', key: 'uk' },
|
|
316
|
+
{ name: 'Urdu', nativeName: 'اردو', key: 'ur' },
|
|
317
|
+
{ name: 'Uzbek', nativeName: 'zbek, Ўзбек, أۇزبېك', key: 'uz' },
|
|
318
|
+
{ name: 'Venda', nativeName: 'Tshivenḓa', key: 've' },
|
|
319
|
+
{ name: 'Vietnamese', nativeName: 'Tiếng Việt', key: 'vi' },
|
|
320
|
+
{ name: 'Volapük', nativeName: 'Volapük', key: 'vo' },
|
|
321
|
+
{ name: 'Walloon', nativeName: 'Walon', key: 'wa' },
|
|
322
|
+
{ name: 'Welsh', nativeName: 'Cymraeg', key: 'cy' },
|
|
323
|
+
{ name: 'Wolof', nativeName: 'Wollof', key: 'wo' },
|
|
324
|
+
{ name: 'Western Frisian', nativeName: 'Frysk', key: 'fy' },
|
|
325
|
+
{ name: 'Xhosa', nativeName: 'isiXhosa', key: 'xh' },
|
|
326
|
+
{ name: 'Yiddish', nativeName: 'ייִדיש', key: 'yi' },
|
|
327
|
+
{ name: 'Yoruba', nativeName: 'Yorùbá', key: 'yo' },
|
|
328
|
+
{ name: 'Zhuang, Chuang', nativeName: 'Saɯ cueŋƅ, Saw cuengh', key: 'za' },
|
|
329
|
+
];
|
|
330
|
+
const languageSupportData = [];
|
|
331
|
+
languageSupport().forEach((key) => {
|
|
332
|
+
const found = data.find((item) => item.key === key);
|
|
333
|
+
if (found) {
|
|
334
|
+
languageSupportData.push(found);
|
|
335
|
+
}
|
|
336
|
+
});
|
|
337
|
+
return convertObjectOfArray(objectPattern, languageSupportData);
|
|
338
|
+
};
|
|
339
|
+
export const convertObjectOfArray = (objectPattern, data) => {
|
|
340
|
+
if (!objectPattern || !Object.keys(objectPattern).length) {
|
|
341
|
+
return data;
|
|
342
|
+
}
|
|
343
|
+
return data.map((item) => {
|
|
344
|
+
return convertObject(objectPattern, item);
|
|
345
|
+
});
|
|
346
|
+
};
|
|
347
|
+
const convertObject = (objectPattern, data) => {
|
|
348
|
+
// dữ liệu đầu vào là object
|
|
349
|
+
if (!objectPattern || !Object.keys(objectPattern).length) {
|
|
350
|
+
return data;
|
|
351
|
+
}
|
|
352
|
+
const keys = Object.keys(objectPattern);
|
|
353
|
+
const objectConvert = {};
|
|
354
|
+
keys.forEach((key) => {
|
|
355
|
+
const valKey = get(objectPattern, key);
|
|
356
|
+
if (!valKey || !(typeof valKey === 'string')) {
|
|
357
|
+
return;
|
|
358
|
+
}
|
|
359
|
+
const keysObject = valKey.split('.');
|
|
360
|
+
const value = getDataObject(keysObject, data);
|
|
361
|
+
set(objectConvert, key, value);
|
|
362
|
+
});
|
|
363
|
+
return objectConvert;
|
|
364
|
+
};
|
|
365
|
+
const getDataObject = (keysObject, object) => {
|
|
366
|
+
let value = object;
|
|
367
|
+
const length = keysObject.length;
|
|
368
|
+
for (let i = 0; i < length; i++) {
|
|
369
|
+
const key = keysObject[i];
|
|
370
|
+
if (!key) {
|
|
371
|
+
return undefined;
|
|
372
|
+
}
|
|
373
|
+
const valueKey = get(value, key);
|
|
374
|
+
if (!valueKey) {
|
|
375
|
+
return undefined;
|
|
376
|
+
}
|
|
377
|
+
value = valueKey;
|
|
378
|
+
}
|
|
379
|
+
return value;
|
|
380
|
+
};
|
|
381
|
+
export const httpRequestDetail = (options) => {
|
|
382
|
+
return {
|
|
383
|
+
objectInstance: returnDetailObject(new HttpParams({ fromObject: { fieldKey: 'key' } }), options),
|
|
384
|
+
functionName: 'detailByData',
|
|
385
|
+
argumentsValue: [''],
|
|
386
|
+
guideAutoUpdateArgumentsValue: {
|
|
387
|
+
paging: {},
|
|
388
|
+
detailById: {
|
|
389
|
+
fieldUpdate: '[0]',
|
|
390
|
+
fieldGetValue: '',
|
|
391
|
+
},
|
|
392
|
+
},
|
|
393
|
+
};
|
|
394
|
+
};
|
|
395
|
+
export const listConfigItem = (options) => {
|
|
396
|
+
return {
|
|
397
|
+
type: 'text',
|
|
398
|
+
httpRequestData: signal({
|
|
399
|
+
objectInstance: returnListObject(options),
|
|
400
|
+
functionName: 'list',
|
|
401
|
+
argumentsValue: [''],
|
|
402
|
+
}),
|
|
403
|
+
configTemplateText: signal({
|
|
404
|
+
fieldKey: 'key',
|
|
405
|
+
getValue: (item) => `${item.label}`,
|
|
406
|
+
}),
|
|
407
|
+
};
|
|
408
|
+
};
|
|
409
|
+
export const validRequired = () => {
|
|
410
|
+
return {
|
|
411
|
+
message: '',
|
|
412
|
+
isRequired: false,
|
|
413
|
+
};
|
|
414
|
+
};
|
|
415
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktbGFuZ3VhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzLXVpL2NvbXBvbmVudHMvaW5wdXRzL211bHRpLWxhbmd1YWdlL3NyYy91dGlscy9tdWx0aS1sYW5ndWFnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1REFBdUQ7QUFDdkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHdkMsT0FBTyxFQUFzQixrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzFHLE9BQU8sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR3RELE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLEdBQUcsRUFBRTtJQUNwQyw4Q0FBOEM7SUFDOUMsT0FBTyxVQUFVLENBQUMsR0FBRyxDQUFDLGlCQUFpQixFQUFFLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0FBQ2xFLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxHQUFHLEVBQUU7SUFDbEMsNENBQTRDO0lBQzVDLE9BQU8sVUFBVSxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztBQUNuRCxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLGdCQUFnRCxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUU7SUFDakgsTUFBTSxJQUFJLEdBQUc7UUFDWCxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFFLGNBQWMs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c2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbmltcG9ydCB7IEh0dHBQYXJhbXMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElWYWxpZFJlcXVpcmVkIH0gZnJvbSAnQGxpYnMtdWkvY29tcG9uZW50cy1pbnB1dHMtdmFsaWQnO1xuaW1wb3J0IHsgSUxpc3RDb25maWdJdGVtIH0gZnJvbSAnQGxpYnMtdWkvY29tcG9uZW50cy1saXN0JztcbmltcG9ydCB7IElIdHRwUmVxdWVzdENvbmZpZywgcmV0dXJuRGV0YWlsT2JqZWN0LCByZXR1cm5MaXN0T2JqZWN0IH0gZnJvbSAnQGxpYnMtdWkvc2VydmljZXMtaHR0cC1yZXF1ZXN0JztcbmltcG9ydCB7IGdldCwgc2V0LCBVdGlsc0NhY2hlIH0gZnJvbSAnQGxpYnMtdWkvdXRpbHMnO1xuaW1wb3J0IHsgSU9wdGlvbiB9IGZyb20gJy4uL2ludGVyZmFjZXMvbXVsdGktbGFuZ3VhZ2UuaW50ZXJmYWNlJztcblxuZXhwb3J0IGNvbnN0IGN1cnJlbmNpZXNTdXBwb3J0ID0gKCkgPT4ge1xuICAvLyBVdGlsc0NhY2hlLktFWV9DQUNIRV9DVVJSRU5DSUVTX0NNU19TVVBQT1JUXG4gIHJldHVybiBVdGlsc0NhY2hlLkdldCgndGVzdF9jdXJyZW5jaWVzJywgWydWTkQnLCAnVVNEJywgJ0VVUiddKTtcbn07XG5cbmV4cG9ydCBjb25zdCBsYW5ndWFnZVN1cHBvcnQgPSAoKSA9PiB7XG4gIC8vIFV0aWxzQ2FjaGUuS0VZX0NBQ0hFX0xBTkdVQUdFX0NNU19TVVBQT1JUXG4gIHJldHVybiBVdGlsc0NhY2hlLkdldCgndGVzdF9sYW5nJywgWyd2aScsICdlbiddKTtcbn07XG5cbmV4cG9ydCBjb25zdCBjdXJyZW5jaWVzT3B0aW9ucyA9IChvYmplY3RQYXR0ZXJuOiB7IGtleTogc3RyaW5nOyBsYWJlbDogc3RyaW5nIH0gPSB7IGtleTogJ2tleScsIGxhYmVsOiAnY29kZScgfSkgPT4ge1xuICBjb25zdCBkYXRhID0gW1xuICAgIHsgc3ltYm9sOiAnJCcsIG5hbWU6ICdVUyBEb2xsYXInLCBzeW1ib2xfbmF0aXZlOiAnJCcsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ1VTRCcsIG5hbWVfcGx1cmFsOiAnVVMgZG9sbGFycycsIGtleTogJ1VTRCcgfSxcbiAgICB7IHN5bWJvbDogJ0NBJCcsIG5hbWU6ICdDYW5hZGlhbiBEb2xsYXInLCBzeW1ib2xfbmF0aXZlOiAnJCcsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ0NBRCcsIG5hbWVfcGx1cmFsOiAnQ2FuYWRpYW4gZG9sbGFycycsIGtleTogJ0NBRCcgfSxcbiAgICB7IHN5bWJvbDogJ+KCrCcsIG5hbWU6ICdFdXJvJywgc3ltYm9sX25hdGl2ZTogJ+KCrCcsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ0VVUicsIG5hbWVfcGx1cmFsOiAnZXVyb3MnLCBrZXk6ICdFVVInIH0sXG4gICAgeyBzeW1ib2w6ICdBRUQnLCBuYW1lOiAnVW5pdGVkIEFyYWIgRW1pcmF0ZXMgRGlyaGFtJywgc3ltYm9sX25hdGl2ZTogJ9ivLtilLuKAjycsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ0FFRCcsIG5hbWVfcGx1cmFsOiAnVUFFIGRpcmhhbXMnLCBrZXk6ICdBRUQnIH0sXG4gICAgeyBzeW1ib2w6ICdBZicsIG5hbWU6ICdBZmdoYW4gQWZnaGFuaScsIHN5bWJvbF9uYXRpdmU6ICfYiycsIGRlY2ltYWxfZGlnaXRzOiAwLCByb3VuZGluZzogMCwgY29kZTogJ0FGTicsIG5hbWVfcGx1cmFsOiAnQWZnaGFuIEFmZ2hhbmlzJywga2V5OiAnQUZOJyB9LFxuICAgIHsgc3ltYm9sOiAnQUxMJywgbmFtZTogJ0FsYmFuaWFuIExlaycsIHN5bWJvbF9uYXRpdmU6ICdMZWsnLCBkZWNpbWFsX2RpZ2l0czogMCwgcm91bmRpbmc6IDAsIGNvZGU6ICdBTEwnLCBuYW1lX3BsdXJhbDogJ0FsYmFuaWFuIGxla8OrJywga2V5OiAnQUxMJyB9LFxuICAgIHsgc3ltYm9sOiAnQU1EJywgbmFtZTogJ0FybWVuaWFuIERyYW0nLCBzeW1ib2xfbmF0aXZlOiAn1aTWgC4nLCBkZWNpbWFsX2RpZ2l0czogMCwgcm91bmRpbmc6IDAsIGNvZGU6ICdBTUQnLCBuYW1lX3BsdXJhbDogJ0FybWVuaWFuIGRyYW1zJywga2V5OiAnQU1EJyB9LFxuICAgIHsgc3ltYm9sOiAnQVIkJywgbmFtZTogJ0FyZ2VudGluZSBQZXNvJywgc3ltYm9sX25hdGl2ZTogJyQnLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAsIGNvZGU6ICdBUlMnLCBuYW1lX3BsdXJhbDogJ0FyZ2VudGluZSBwZXNvcycsIGtleTogJ0FSUycgfSxcbiAgICB7IHN5bWJvbDogJ0FVJCcsIG5hbWU6ICdBdXN0cmFsaWFuIERvbGxhcicsIHN5bWJvbF9uYXRpdmU6ICckJywgZGVjaW1hbF9kaWdpdHM6IDIsIHJvdW5kaW5nOiAwLCBjb2RlOiAnQVVEJywgbmFtZV9wbHVyYWw6ICdBdXN0cmFsaWFuIGRvbGxhcnMnLCBrZXk6ICdBVUQnIH0sXG4gICAgeyBzeW1ib2w6ICdtYW4uJywgbmFtZTogJ0F6ZXJiYWlqYW5pIE1hbmF0Jywgc3ltYm9sX25hdGl2ZTogJ9C80LDQvS4nLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAsIGNvZGU6ICdBWk4nLCBuYW1lX3BsdXJhbDogJ0F6ZXJiYWlqYW5pIG1hbmF0cycsIGtleTogJ0FaTicgfSxcbiAgICB7IHN5bWJvbDogJ0tNJywgbmFtZTogJ0Jvc25pYS1IZXJ6ZWdvdmluYSBDb252ZXJ0aWJsZSBNYXJrJywgc3ltYm9sX25hdGl2ZTogJ0tNJywgZGVjaW1hbF9kaWdpdHM6IDIsIHJvdW5kaW5nOiAwLCBjb2RlOiAnQkFNJywgbmFtZV9wbHVyYWw6ICdCb3NuaWEtSGVyemVnb3ZpbmEgY29udmVydGlibGUgbWFya3MnLCBrZXk6ICdCQU0nIH0sXG4gICAgeyBzeW1ib2w6ICdUaycsIG5hbWU6ICdCYW5nbGFkZXNoaSBUYWthJywgc3ltYm9sX25hdGl2ZTogJ+CnsycsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ0JEVCcsIG5hbWVfcGx1cmFsOiAnQmFuZ2xhZGVzaGkgdGFrYXMnLCBrZXk6ICdCRFQnIH0sXG4gICAgeyBzeW1ib2w6ICdCR04nLCBuYW1lOiAnQnVsZ2FyaWFuIExldicsIHN5bWJvbF9uYXRpdmU6ICfQu9CyLicsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ0JHTicsIG5hbWVfcGx1cmFsOiAnQnVsZ2FyaWFuIGxldmEnLCBrZXk6ICdCR04nIH0sXG4gICAgeyBzeW1ib2w6ICdCRCcsIG5hbWU6ICdCYWhyYWluaSBEaW5hcicsIHN5bWJvbF9uYXRpdmU6ICfYry7YqC7igI8nLCBkZWNpbWFsX2RpZ2l0czogMywgcm91bmRpbmc6IDAsIGNvZGU6ICdCSEQnLCBuYW1lX3BsdXJhbDogJ0JhaHJhaW5pIGRpbmFycycsIGtleTogJ0JIRCcgfSxcbiAgICB7IHN5bWJvbDogJ0ZCdScsIG5hbWU6ICdCdXJ1bmRpYW4gRnJhbmMnLCBzeW1ib2xfbmF0aXZlOiAnRkJ1JywgZGVjaW1hbF9kaWdpdHM6IDAsIHJvdW5kaW5nOiAwLCBjb2RlOiAnQklGJywgbmFtZV9wbHVyYWw6ICdCdXJ1bmRpYW4gZnJhbmNzJywga2V5OiAnQklGJyB9LFxuICAgIHsgc3ltYm9sOiAnQk4kJywgbmFtZTogJ0JydW5laSBEb2xsYXInLCBzeW1ib2xfbmF0aXZlOiAnJCcsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ0JORCcsIG5hbWVfcGx1cmFsOiAnQnJ1bmVpIGRvbGxhcnMnLCBrZXk6ICdCTkQnIH0sXG4gICAgeyBzeW1ib2w6ICdCcycsIG5hbWU6ICdCb2xpdmlhbiBCb2xpdmlhbm8nLCBzeW1ib2xfbmF0aXZlOiAnQnMnLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAsIGNvZGU6ICdCT0InLCBuYW1lX3BsdXJhbDogJ0JvbGl2aWFuIGJvbGl2aWFub3MnLCBrZXk6ICdCT0InIH0sXG4gICAgeyBzeW1ib2w6ICdSJCcsIG5hbWU6ICdCcmF6aWxpYW4gUmVhbCcsIHN5bWJvbF9uYXRpdmU6ICdSJCcsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ0JSTCcsIG5hbWVfcGx1cmFsOiAnQnJhemlsaWFuIHJlYWxzJywga2V5OiAnQlJMJyB9LFxuICAgIHsgc3ltYm9sOiAnQldQJywgbmFtZTogJ0JvdHN3YW5hbiBQdWxhJywgc3ltYm9sX25hdGl2ZTogJ1AnLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAsIGNvZGU6ICdCV1AnLCBuYW1lX3BsdXJhbDogJ0JvdHN3YW5hbiBwdWxhcycsIGtleTogJ0JXUCcgfSxcbiAgICB7IHN5bWJvbDogJ0JyJywgbmFtZTogJ0JlbGFydXNpYW4gUnVibGUnLCBzeW1ib2xfbmF0aXZlOiAn0YDRg9CxLicsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ0JZTicsIG5hbWVfcGx1cmFsOiAnQmVsYXJ1c2lhbiBydWJsZXMnLCBrZXk6ICdCWU4nIH0sXG4gICAgeyBzeW1ib2w6ICdCWiQnLCBuYW1lOiAnQmVsaXplIERvbGxhcicsIHN5bWJvbF9uYXRpdmU6ICckJywgZGVjaW1hbF9kaWdpdHM6IDIsIHJvdW5kaW5nOiAwLCBjb2RlOiAnQlpEJywgbmFtZV9wbHVyYWw6ICdCZWxpemUgZG9sbGFycycsIGtleTogJ0JaRCcgfSxcbiAgICB7IHN5bWJvbDogJ0NERicsIG5hbWU6ICdDb25nb2xlc2UgRnJhbmMnLCBzeW1ib2xfbmF0aXZlOiAnRnJDRCcsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ0NERicsIG5hbWVfcGx1cmFsOiAnQ29uZ29sZXNlIGZyYW5jcycsIGtleTogJ0NERicgfSxcbiAgICB7IHN5bWJvbDogJ0NIRicsIG5hbWU6ICdTd2lzcyBGcmFuYycsIHN5bWJvbF9uYXRpdmU6ICdDSEYnLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAuMDUsIGNvZGU6ICdDSEYnLCBuYW1lX3BsdXJhbDogJ1N3aXNzIGZyYW5jcycsIGtleTogJ0NIRicgfSxcbiAgICB7IHN5bWJvbDogJ0NMJCcsIG5hbWU6ICdDaGlsZWFuIFBlc28nLCBzeW1ib2xfbmF0aXZlOiAnJCcsIGRlY2ltYWxfZGlnaXRzOiAwLCByb3VuZGluZzogMCwgY29kZTogJ0NMUCcsIG5hbWVfcGx1cmFsOiAnQ2hpbGVhbiBwZXNvcycsIGtleTogJ0NMUCcgfSxcbiAgICB7IHN5bWJvbDogJ0NOwqUnLCBuYW1lOiAnQ2hpbmVzZSBZdWFuJywgc3ltYm9sX25hdGl2ZTogJ0NOwqUnLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAsIGNvZGU6ICdDTlknLCBuYW1lX3BsdXJhbDogJ0NoaW5lc2UgeXVhbicsIGtleTogJ0NOWScgfSxcbiAgICB7IHN5bWJvbDogJ0NPJCcsIG5hbWU6ICdDb2xvbWJpYW4gUGVzbycsIHN5bWJvbF9uYXRpdmU6ICckJywgZGVjaW1hbF9kaWdpdHM6IDAsIHJvdW5kaW5nOiAwLCBjb2RlOiAnQ09QJywgbmFtZV9wbHVyYWw6ICdDb2xvbWJpYW4gcGVzb3MnLCBrZXk6ICdDT1AnIH0sXG4gICAgeyBzeW1ib2w6ICfigqEnLCBuYW1lOiAnQ29zdGEgUmljYW4gQ29sw7NuJywgc3ltYm9sX25hdGl2ZTogJ+KCoScsIGRlY2ltYWxfZGlnaXRzOiAwLCByb3VuZGluZzogMCwgY29kZTogJ0NSQycsIG5hbWVfcGx1cmFsOiAnQ29zdGEgUmljYW4gY29sw7NucycsIGtleTogJ0NSQycgfSxcbiAgICB7IHN5bWJvbDogJ0NWJCcsIG5hbWU6ICdDYXBlIFZlcmRlYW4gRXNjdWRvJywgc3ltYm9sX25hdGl2ZTogJ0NWJCcsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ0NWRScsIG5hbWVfcGx1cmFsOiAnQ2FwZSBWZXJkZWFuIGVzY3Vkb3MnLCBrZXk6ICdDVkUnIH0sXG4gICAgeyBzeW1ib2w6ICdLxI0nLCBuYW1lOiAnQ3plY2ggUmVwdWJsaWMgS29ydW5hJywgc3ltYm9sX25hdGl2ZTogJ0vEjScsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ0NaSycsIG5hbWVfcGx1cmFsOiAnQ3plY2ggUmVwdWJsaWMga29ydW5hcycsIGtleTogJ0NaSycgfSxcbiAgICB7IHN5bWJvbDogJ0ZkaicsIG5hbWU6ICdEamlib3V0aWFuIEZyYW5jJywgc3ltYm9sX25hdGl2ZTogJ0ZkaicsIGRlY2ltYWxfZGlnaXRzOiAwLCByb3VuZGluZzogMCwgY29kZTogJ0RKRicsIG5hbWVfcGx1cmFsOiAnRGppYm91dGlhbiBmcmFuY3MnLCBrZXk6ICdESkYnIH0sXG4gICAgeyBzeW1ib2w6ICdEa3InLCBuYW1lOiAnRGFuaXNoIEtyb25lJywgc3ltYm9sX25hdGl2ZTogJ2tyJywgZGVjaW1hbF9kaWdpdHM6IDIsIHJvdW5kaW5nOiAwLCBjb2RlOiAnREtLJywgbmFtZV9wbHVyYWw6ICdEYW5pc2gga3JvbmVyJywga2V5OiAnREtLJyB9LFxuICAgIHsgc3ltYm9sOiAnUkQkJywgbmFtZTogJ0RvbWluaWNhbiBQZXNvJywgc3ltYm9sX25hdGl2ZTogJ1JEJCcsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ0RPUCcsIG5hbWVfcGx1cmFsOiAnRG9taW5pY2FuIHBlc29zJywga2V5OiAnRE9QJyB9LFxuICAgIHsgc3ltYm9sOiAnREEnLCBuYW1lOiAnQWxnZXJpYW4gRGluYXInLCBzeW1ib2xfbmF0aXZlOiAn2K8u2Kwu4oCPJywgZGVjaW1hbF9kaWdpdHM6IDIsIHJvdW5kaW5nOiAwLCBjb2RlOiAnRFpEJywgbmFtZV9wbHVyYWw6ICdBbGdlcmlhbiBkaW5hcnMnLCBrZXk6ICdEWkQnIH0sXG4gICAgeyBzeW1ib2w6ICdFa3InLCBuYW1lOiAnRXN0b25pYW4gS3Jvb24nLCBzeW1ib2xfbmF0aXZlOiAna3InLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAsIGNvZGU6ICdFRUsnLCBuYW1lX3BsdXJhbDogJ0VzdG9uaWFuIGtyb29ucycsIGtleTogJ0VFSycgfSxcbiAgICB7IHN5bWJvbDogJ0VHUCcsIG5hbWU6ICdFZ3lwdGlhbiBQb3VuZCcsIHN5bWJvbF9uYXRpdmU6ICfYrC7ZhS7igI8nLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAsIGNvZGU6ICdFR1AnLCBuYW1lX3BsdXJhbDogJ0VneXB0aWFuIHBvdW5kcycsIGtleTogJ0VHUCcgfSxcbiAgICB7IHN5bWJvbDogJ05maycsIG5hbWU6ICdFcml0cmVhbiBOYWtmYScsIHN5bWJvbF9uYXRpdmU6ICdOZmsnLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAsIGNvZGU6ICdFUk4nLCBuYW1lX3BsdXJhbDogJ0VyaXRyZWFuIG5ha2ZhcycsIGtleTogJ0VSTicgfSxcbiAgICB7IHN5bWJvbDogJ0JyJywgbmFtZTogJ0V0aGlvcGlhbiBCaXJyJywgc3ltYm9sX25hdGl2ZTogJ0JyJywgZGVjaW1hbF9kaWdpdHM6IDIsIHJvdW5kaW5nOiAwLCBjb2RlOiAnRVRCJywgbmFtZV9wbHVyYWw6ICdFdGhpb3BpYW4gYmlycnMnLCBrZXk6ICdFVEInIH0sXG4gICAgeyBzeW1ib2w6ICfCoycsIG5hbWU6ICdCcml0aXNoIFBvdW5kIFN0ZXJsaW5nJywgc3ltYm9sX25hdGl2ZTogJ8KjJywgZGVjaW1hbF9kaWdpdHM6IDIsIHJvdW5kaW5nOiAwLCBjb2RlOiAnR0JQJywgbmFtZV9wbHVyYWw6ICdCcml0aXNoIHBvdW5kcyBzdGVybGluZycsIGtleTogJ0dCUCcgfSxcbiAgICB7IHN5bWJvbDogJ0dFTCcsIG5hbWU6ICdHZW9yZ2lhbiBMYXJpJywgc3ltYm9sX25hdGl2ZTogJ0dFTCcsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ0dFTCcsIG5hbWVfcGx1cmFsOiAnR2VvcmdpYW4gbGFyaXMnLCBrZXk6ICdHRUwnIH0sXG4gICAgeyBzeW1ib2w6ICdHSOKCtScsIG5hbWU6ICdHaGFuYWlhbiBDZWRpJywgc3ltYm9sX25hdGl2ZTogJ0dI4oK1JywgZGVjaW1hbF9kaWdpdHM6IDIsIHJvdW5kaW5nOiAwLCBjb2RlOiAnR0hTJywgbmFtZV9wbHVyYWw6ICdHaGFuYWlhbiBjZWRpcycsIGtleTogJ0dIUycgfSxcbiAgICB7IHN5bWJvbDogJ0ZHJywgbmFtZTogJ0d1aW5lYW4gRnJhbmMnLCBzeW1ib2xfbmF0aXZlOiAnRkcnLCBkZWNpbWFsX2RpZ2l0czogMCwgcm91bmRpbmc6IDAsIGNvZGU6ICdHTkYnLCBuYW1lX3BsdXJhbDogJ0d1aW5lYW4gZnJhbmNzJywga2V5OiAnR05GJyB9LFxuICAgIHsgc3ltYm9sOiAnR1RRJywgbmFtZTogJ0d1YXRlbWFsYW4gUXVldHphbCcsIHN5bWJvbF9uYXRpdmU6ICdRJywgZGVjaW1hbF9kaWdpdHM6IDIsIHJvdW5kaW5nOiAwLCBjb2RlOiAnR1RRJywgbmFtZV9wbHVyYWw6ICdHdWF0ZW1hbGFuIHF1ZXR6YWxzJywga2V5OiAnR1RRJyB9LFxuICAgIHsgc3ltYm9sOiAnSEskJywgbmFtZTogJ0hvbmcgS29uZyBEb2xsYXInLCBzeW1ib2xfbmF0aXZlOiAnJCcsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ0hLRCcsIG5hbWVfcGx1cmFsOiAnSG9uZyBLb25nIGRvbGxhcnMnLCBrZXk6ICdIS0QnIH0sXG4gICAgeyBzeW1ib2w6ICdITkwnLCBuYW1lOiAnSG9uZHVyYW4gTGVtcGlyYScsIHN5bWJvbF9uYXRpdmU6ICdMJywgZGVjaW1hbF9kaWdpdHM6IDIsIHJvdW5kaW5nOiAwLCBjb2RlOiAnSE5MJywgbmFtZV9wbHVyYWw6ICdIb25kdXJhbiBsZW1waXJhcycsIGtleTogJ0hOTCcgfSxcbiAgICB7IHN5bWJvbDogJ2tuJywgbmFtZTogJ0Nyb2F0aWFuIEt1bmEnLCBzeW1ib2xfbmF0aXZlOiAna24nLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAsIGNvZGU6ICdIUksnLCBuYW1lX3BsdXJhbDogJ0Nyb2F0aWFuIGt1bmFzJywga2V5OiAnSFJLJyB9LFxuICAgIHsgc3ltYm9sOiAnRnQnLCBuYW1lOiAnSHVuZ2FyaWFuIEZvcmludCcsIHN5bWJvbF9uYXRpdmU6ICdGdCcsIGRlY2ltYWxfZGlnaXRzOiAwLCByb3VuZGluZzogMCwgY29kZTogJ0hVRicsIG5hbWVfcGx1cmFsOiAnSHVuZ2FyaWFuIGZvcmludHMnLCBrZXk6ICdIVUYnIH0sXG4gICAgeyBzeW1ib2w6ICdScCcsIG5hbWU6ICdJbmRvbmVzaWFuIFJ1cGlhaCcsIHN5bWJvbF9uYXRpdmU6ICdScCcsIGRlY2ltYWxfZGlnaXRzOiAwLCByb3VuZGluZzogMCwgY29kZTogJ0lEUicsIG5hbWVfcGx1cmFsOiAnSW5kb25lc2lhbiBydXBpYWhzJywga2V5OiAnSURSJyB9LFxuICAgIHsgc3ltYm9sOiAn4oKqJywgbmFtZTogJ0lzcmFlbGkgTmV3IFNoZXFlbCcsIHN5bWJvbF9uYXRpdmU6ICfigqonLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAsIGNvZGU6ICdJTFMnLCBuYW1lX3BsdXJhbDogJ0lzcmFlbGkgbmV3IHNoZXFlbHMnLCBrZXk6ICdJTFMnIH0sXG4gICAgeyBzeW1ib2w6ICdScycsIG5hbWU6ICdJbmRpYW4gUnVwZWUnLCBzeW1ib2xfbmF0aXZlOiAn4Kaf4KaV4Ka+JywgZGVjaW1hbF9kaWdpdHM6IDIsIHJvdW5kaW5nOiAwLCBjb2RlOiAnSU5SJywgbmFtZV9wbHVyYWw6ICdJbmRpYW4gcnVwZWVzJywga2V5OiAnSU5SJyB9LFxuICAgIHsgc3ltYm9sOiAnSVFEJywgbmFtZTogJ0lyYXFpIERpbmFyJywgc3ltYm9sX25hdGl2ZTogJ9ivLti5LuKAjycsIGRlY2ltYWxfZGlnaXRzOiAwLCByb3VuZGluZzogMCwgY29kZTogJ0lRRCcsIG5hbWVfcGx1cmFsOiAnSXJhcWkgZGluYXJzJywga2V5OiAnSVFEJyB9LFxuICAgIHsgc3ltYm9sOiAnSVJSJywgbmFtZTogJ0lyYW5pYW4gUmlhbCcsIHN5bWJvbF9uYXRpdmU6ICfvt7wnLCBkZWNpbWFsX2RpZ2l0czogMCwgcm91bmRpbmc6IDAsIGNvZGU6ICdJUlInLCBuYW1lX3BsdXJhbDogJ0lyYW5pYW4gcmlhbHMnLCBrZXk6ICdJUlInIH0sXG4gICAgeyBzeW1ib2w6ICdJa3InLCBuYW1lOiAnSWNlbGFuZGljIEtyw7NuYScsIHN5bWJvbF9uYXRpdmU6ICdrcicsIGRlY2ltYWxfZGlnaXRzOiAwLCByb3VuZGluZzogMCwgY29kZTogJ0lTSycsIG5hbWVfcGx1cmFsOiAnSWNlbGFuZGljIGtyw7NudXInLCBrZXk6ICdJU0snIH0sXG4gICAgeyBzeW1ib2w6ICdKJCcsIG5hbWU6ICdKYW1haWNhbiBEb2xsYXInLCBzeW1ib2xfbmF0aXZlOiAnJCcsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ0pNRCcsIG5hbWVfcGx1cmFsOiAnSmFtYWljYW4gZG9sbGFycycsIGtleTogJ0pNRCcgfSxcbiAgICB7IHN5bWJvbDogJ0pEJywgbmFtZTogJ0pvcmRhbmlhbiBEaW5hcicsIHN5bWJvbF9uYXRpdmU6ICfYry7Yoy7igI8nLCBkZWNpbWFsX2RpZ2l0czogMywgcm91bmRpbmc6IDAsIGNvZGU6ICdKT0QnLCBuYW1lX3BsdXJhbDogJ0pvcmRhbmlhbiBkaW5hcnMnLCBrZXk6ICdKT0QnIH0sXG4gICAgeyBzeW1ib2w6ICfCpScsIG5hbWU6ICdKYXBhbmVzZSBZZW4nLCBzeW1ib2xfbmF0aXZlOiAn77+lJywgZGVjaW1hbF9kaWdpdHM6IDAsIHJvdW5kaW5nOiAwLCBjb2RlOiAnSlBZJywgbmFtZV9wbHVyYWw6ICdKYXBhbmVzZSB5ZW4nLCBrZXk6ICdKUFknIH0sXG4gICAgeyBzeW1ib2w6ICdLc2gnLCBuYW1lOiAnS2VueWFuIFNoaWxsaW5nJywgc3ltYm9sX25hdGl2ZTogJ0tzaCcsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ0tFUycsIG5hbWVfcGx1cmFsOiAnS2VueWFuIHNoaWxsaW5ncycsIGtleTogJ0tFUycgfSxcbiAgICB7IHN5bWJvbDogJ0tIUicsIG5hbWU6ICdDYW1ib2RpYW4gUmllbCcsIHN5bWJvbF9uYXRpdmU6ICfhn5snLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAsIGNvZGU6ICdLSFInLCBuYW1lX3BsdXJhbDogJ0NhbWJvZGlhbiByaWVscycsIGtleTogJ0tIUicgfSxcbiAgICB7IHN5bWJvbDogJ0NGJywgbmFtZTogJ0NvbW9yaWFuIEZyYW5jJywgc3ltYm9sX25hdGl2ZTogJ0ZDJywgZGVjaW1hbF9kaWdpdHM6IDAsIHJvdW5kaW5nOiAwLCBjb2RlOiAnS01GJywgbmFtZV9wbHVyYWw6ICdDb21vcmlhbiBmcmFuY3MnLCBrZXk6ICdLTUYnIH0sXG4gICAgeyBzeW1ib2w6ICfigqknLCBuYW1lOiAnU291dGggS29yZWFuIFdvbicsIHN5bWJvbF9uYXRpdmU6ICfigqknLCBkZWNpbWFsX2RpZ2l0czogMCwgcm91bmRpbmc6IDAsIGNvZGU6ICdLUlcnLCBuYW1lX3BsdXJhbDogJ1NvdXRoIEtvcmVhbiB3b24nLCBrZXk6ICdLUlcnIH0sXG4gICAgeyBzeW1ib2w6ICdLRCcsIG5hbWU6ICdLdXdhaXRpIERpbmFyJywgc3ltYm9sX25hdGl2ZTogJ9ivLtmDLuKAjycsIGRlY2ltYWxfZGlnaXRzOiAzLCByb3VuZGluZzogMCwgY29kZTogJ0tXRCcsIG5hbWVfcGx1cmFsOiAnS3V3YWl0aSBkaW5hcnMnLCBrZXk6ICdLV0QnIH0sXG4gICAgeyBzeW1ib2w6ICdLWlQnLCBuYW1lOiAnS2F6YWtoc3RhbmkgVGVuZ2UnLCBzeW1ib2xfbmF0aXZlOiAn0YLSo9CzLicsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ0taVCcsIG5hbWVfcGx1cmFsOiAnS2F6YWtoc3RhbmkgdGVuZ2VzJywga2V5OiAnS1pUJyB9LFxuICAgIHsgc3ltYm9sOiAnTELCoycsIG5hbWU6ICdMZWJhbmVzZSBQb3VuZCcsIHN5bWJvbF9uYXRpdmU6ICfZhC7ZhC7igI8nLCBkZWNpbWFsX2RpZ2l0czogMCwgcm91bmRpbmc6IDAsIGNvZGU6ICdMQlAnLCBuYW1lX3BsdXJhbDogJ0xlYmFuZXNlIHBvdW5kcycsIGtleTogJ0xCUCcgfSxcbiAgICB7IHN5bWJvbDogJ1NMUnMnLCBuYW1lOiAnU3JpIExhbmthbiBSdXBlZScsIHN5bWJvbF9uYXRpdmU6ICdTTCBSZScsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ0xLUicsIG5hbWVfcGx1cmFsOiAnU3JpIExhbmthbiBydXBlZXMnLCBrZXk6ICdMS1InIH0sXG4gICAgeyBzeW1ib2w6ICdMdCcsIG5hbWU6ICdMaXRodWFuaWFuIExpdGFzJywgc3ltYm9sX25hdGl2ZTogJ0x0JywgZGVjaW1hbF9kaWdpdHM6IDIsIHJvdW5kaW5nOiAwLCBjb2RlOiAnTFRMJywgbmFtZV9wbHVyYWw6ICdMaXRodWFuaWFuIGxpdGFpJywga2V5OiAnTFRMJyB9LFxuICAgIHsgc3ltYm9sOiAnTHMnLCBuYW1lOiAnTGF0dmlhbiBMYXRzJywgc3ltYm9sX25hdGl2ZTogJ0xzJywgZGVjaW1hbF9kaWdpdHM6IDIsIHJvdW5kaW5nOiAwLCBjb2RlOiAnTFZMJywgbmFtZV9wbHVyYWw6ICdMYXR2aWFuIGxhdGknLCBrZXk6ICdMVkwnIH0sXG4gICAgeyBzeW1ib2w6ICdMRCcsIG5hbWU6ICdMaWJ5YW4gRGluYXInLCBzeW1ib2xfbmF0aXZlOiAn2K8u2YQu4oCPJywgZGVjaW1hbF9kaWdpdHM6IDMsIHJvdW5kaW5nOiAwLCBjb2RlOiAnTFlEJywgbmFtZV9wbHVyYWw6ICdMaWJ5YW4gZGluYXJzJywga2V5OiAnTFlEJyB9LFxuICAgIHsgc3ltYm9sOiAnTUFEJywgbmFtZTogJ01vcm9jY2FuIERpcmhhbScsIHN5bWJvbF9uYXRpdmU6ICfYry7ZhS7igI8nLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAsIGNvZGU6ICdNQUQnLCBuYW1lX3BsdXJhbDogJ01vcm9jY2FuIGRpcmhhbXMnLCBrZXk6ICdNQUQnIH0sXG4gICAgeyBzeW1ib2w6ICdNREwnLCBuYW1lOiAnTW9sZG92YW4gTGV1Jywgc3ltYm9sX25hdGl2ZTogJ01ETCcsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ01ETCcsIG5hbWVfcGx1cmFsOiAnTW9sZG92YW4gbGVpJywga2V5OiAnTURMJyB9LFxuICAgIHsgc3ltYm9sOiAnTUdBJywgbmFtZTogJ01hbGFnYXN5IEFyaWFyeScsIHN5bWJvbF9uYXRpdmU6ICdNR0EnLCBkZWNpbWFsX2RpZ2l0czogMCwgcm91bmRpbmc6IDAsIGNvZGU6ICdNR0EnLCBuYW1lX3BsdXJhbDogJ01hbGFnYXN5IEFyaWFyaWVzJywga2V5OiAnTUdBJyB9LFxuICAgIHsgc3ltYm9sOiAnTUtEJywgbmFtZTogJ01hY2Vkb25pYW4gRGVuYXInLCBzeW1ib2xfbmF0aXZlOiAnTUtEJywgZGVjaW1hbF9kaWdpdHM6IDIsIHJvdW5kaW5nOiAwLCBjb2RlOiAnTUtEJywgbmFtZV9wbHVyYWw6ICdNYWNlZG9uaWFuIGRlbmFyaScsIGtleTogJ01LRCcgfSxcbiAgICB7IHN5bWJvbDogJ01NSycsIG5hbWU6ICdNeWFubWEgS3lhdCcsIHN5bWJvbF9uYXRpdmU6ICdLJywgZGVjaW1hbF9kaWdpdHM6IDAsIHJvdW5kaW5nOiAwLCBjb2RlOiAnTU1LJywgbmFtZV9wbHVyYWw6ICdNeWFubWEga3lhdHMnLCBrZXk6ICdNTUsnIH0sXG4gICAgeyBzeW1ib2w6ICdNT1AkJywgbmFtZTogJ01hY2FuZXNlIFBhdGFjYScsIHN5bWJvbF9uYXRpdmU6ICdNT1AkJywgZGVjaW1hbF9kaWdpdHM6IDIsIHJvdW5kaW5nOiAwLCBjb2RlOiAnTU9QJywgbmFtZV9wbHVyYWw6ICdNYWNhbmVzZSBwYXRhY2FzJywga2V5OiAnTU9QJyB9LFxuICAgIHsgc3ltYm9sOiAnTVVScycsIG5hbWU6ICdNYXVyaXRpYW4gUnVwZWUnLCBzeW1ib2xfbmF0aXZlOiAnTVVScycsIGRlY2ltYWxfZGlnaXRzOiAwLCByb3VuZGluZzogMCwgY29kZTogJ01VUicsIG5hbWVfcGx1cmFsOiAnTWF1cml0aWFuIHJ1cGVlcycsIGtleTogJ01VUicgfSxcbiAgICB7IHN5bWJvbDogJ01YJCcsIG5hbWU6ICdNZXhpY2FuIFBlc28nLCBzeW1ib2xfbmF0aXZlOiAnJCcsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ01YTicsIG5hbWVfcGx1cmFsOiAnTWV4aWNhbiBwZXNvcycsIGtleTogJ01YTicgfSxcbiAgICB7IHN5bWJvbDogJ1JNJywgbmFtZTogJ01hbGF5c2lhbiBSaW5nZ2l0Jywgc3ltYm9sX25hdGl2ZTogJ1JNJywgZGVjaW1hbF9kaWdpdHM6IDIsIHJvdW5kaW5nOiAwLCBjb2RlOiAnTVlSJywgbmFtZV9wbHVyYWw6ICdNYWxheXNpYW4gcmluZ2dpdHMnLCBrZXk6ICdNWVInIH0sXG4gICAgeyBzeW1ib2w6ICdNVG4nLCBuYW1lOiAnTW96YW1iaWNhbiBNZXRpY2FsJywgc3ltYm9sX25hdGl2ZTogJ01UbicsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ01aTicsIG5hbWVfcGx1cmFsOiAnTW96YW1iaWNhbiBtZXRpY2FscycsIGtleTogJ01aTicgfSxcbiAgICB7IHN5bWJvbDogJ04kJywgbmFtZTogJ05hbWliaWFuIERvbGxhcicsIHN5bWJvbF9uYXRpdmU6ICdOJCcsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ05BRCcsIG5hbWVfcGx1cmFsOiAnTmFtaWJpYW4gZG9sbGFycycsIGtleTogJ05BRCcgfSxcbiAgICB7IHN5bWJvbDogJ+KCpicsIG5hbWU6ICdOaWdlcmlhbiBOYWlyYScsIHN5bWJvbF9uYXRpdmU6ICfigqYnLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAsIGNvZGU6ICdOR04nLCBuYW1lX3BsdXJhbDogJ05pZ2VyaWFuIG5haXJhcycsIGtleTogJ05HTicgfSxcbiAgICB7IHN5bWJvbDogJ0MkJywgbmFtZTogJ05pY2FyYWd1YW4gQ8OzcmRvYmEnLCBzeW1ib2xfbmF0aXZlOiAnQyQnLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAsIGNvZGU6ICdOSU8nLCBuYW1lX3BsdXJhbDogJ05pY2FyYWd1YW4gY8OzcmRvYmFzJywga2V5OiAnTklPJyB9LFxuICAgIHsgc3ltYm9sOiAnTmtyJywgbmFtZTogJ05vcndlZ2lhbiBLcm9uZScsIHN5bWJvbF9uYXRpdmU6ICdrcicsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ05PSycsIG5hbWVfcGx1cmFsOiAnTm9yd2VnaWFuIGtyb25lcicsIGtleTogJ05PSycgfSxcbiAgICB7IHN5bWJvbDogJ05QUnMnLCBuYW1lOiAnTmVwYWxlc2UgUnVwZWUnLCBzeW1ib2xfbmF0aXZlOiAn4KSo4KWH4KSw4KWCJywgZGVjaW1hbF9kaWdpdHM6IDIsIHJvdW5kaW5nOiAwLCBjb2RlOiAnTlBSJywgbmFtZV9wbHVyYWw6ICdOZXBhbGVzZSBydXBlZXMnLCBrZXk6ICdOUFInIH0sXG4gICAgeyBzeW1ib2w6ICdOWiQnLCBuYW1lOiAnTmV3IFplYWxhbmQgRG9sbGFyJywgc3ltYm9sX25hdGl2ZTogJyQnLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAsIGNvZGU6ICdOWkQnLCBuYW1lX3BsdXJhbDogJ05ldyBaZWFsYW5kIGRvbGxhcnMnLCBrZXk6ICdOWkQnIH0sXG4gICAgeyBzeW1ib2w6ICdPTVInLCBuYW1lOiAnT21hbmkgUmlhbCcsIHN5bWJvbF9uYXRpdmU6ICfYsS7YuS7igI8nLCBkZWNpbWFsX2RpZ2l0czogMywgcm91bmRpbmc6IDAsIGNvZGU6ICdPTVInLCBuYW1lX3BsdXJhbDogJ09tYW5pIHJpYWxzJywga2V5OiAnT01SJyB9LFxuICAgIHsgc3ltYm9sOiAnQi8uJywgbmFtZTogJ1BhbmFtYW5pYW4gQmFsYm9hJywgc3ltYm9sX25hdGl2ZTogJ0IvLicsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ1BBQicsIG5hbWVfcGx1cmFsOiAnUGFuYW1hbmlhbiBiYWxib2FzJywga2V5OiAnUEFCJyB9LFxuICAgIHsgc3ltYm9sOiAnUy8uJywgbmFtZTogJ1BlcnV2aWFuIE51ZXZvIFNvbCcsIHN5bWJvbF9uYXRpdmU6ICdTLy4nLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAsIGNvZGU6ICdQRU4nLCBuYW1lX3BsdXJhbDogJ1BlcnV2aWFuIG51ZXZvcyBzb2xlcycsIGtleTogJ1BFTicgfSxcbiAgICB7IHN5bWJvbDogJ+KCsScsIG5hbWU6ICdQaGlsaXBwaW5lIFBlc28nLCBzeW1ib2xfbmF0aXZlOiAn4oKxJywgZGVjaW1hbF9kaWdpdHM6IDIsIHJvdW5kaW5nOiAwLCBjb2RlOiAnUEhQJywgbmFtZV9wbHVyYWw6ICdQaGlsaXBwaW5lIHBlc29zJywga2V5OiAnUEhQJyB9LFxuICAgIHsgc3ltYm9sOiAnUEtScycsIG5hbWU6ICdQYWtpc3RhbmkgUnVwZWUnLCBzeW1ib2xfbmF0aXZlOiAn4oKoJywgZGVjaW1hbF9kaWdpdHM6IDAsIHJvdW5kaW5nOiAwLCBjb2RlOiAnUEtSJywgbmFtZV9wbHVyYWw6ICdQYWtpc3RhbmkgcnVwZWVzJywga2V5OiAnUEtSJyB9LFxuICAgIHsgc3ltYm9sOiAnesWCJywgbmFtZTogJ1BvbGlzaCBabG90eScsIHN5bWJvbF9uYXRpdmU6ICd6xYInLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAsIGNvZGU6ICdQTE4nLCBuYW1lX3BsdXJhbDogJ1BvbGlzaCB6bG90eXMnLCBrZXk6ICdQTE4nIH0sXG4gICAgeyBzeW1ib2w6ICfigrInLCBuYW1lOiAnUGFyYWd1YXlhbiBHdWFyYW5pJywgc3ltYm9sX25hdGl2ZTogJ+KCsicsIGRlY2ltYWxfZGlnaXRzOiAwLCByb3VuZGluZzogMCwgY29kZTogJ1BZRycsIG5hbWVfcGx1cmFsOiAnUGFyYWd1YXlhbiBndWFyYW5pcycsIGtleTogJ1BZRycgfSxcbiAgICB7IHN5bWJvbDogJ1FSJywgbmFtZTogJ1FhdGFyaSBSaWFsJywgc3ltYm9sX25hdGl2ZTogJ9ixLtmCLuKAjycsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ1FBUicsIG5hbWVfcGx1cmFsOiAnUWF0YXJpIHJpYWxzJywga2V5OiAnUUFSJyB9LFxuICAgIHsgc3ltYm9sOiAnUk9OJywgbmFtZTogJ1JvbWFuaWFuIExldScsIHN5bWJvbF9uYXRpdmU6ICdST04nLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAsIGNvZGU6ICdST04nLCBuYW1lX3BsdXJhbDogJ1JvbWFuaWFuIGxlaScsIGtleTogJ1JPTicgfSxcbiAgICB7IHN5bWJvbDogJ2Rpbi4nLCBuYW1lOiAnU2VyYmlhbiBEaW5hcicsIHN5bWJvbF9uYXRpdmU6ICfQtNC40L0uJywgZGVjaW1hbF9kaWdpdHM6IDAsIHJvdW5kaW5nOiAwLCBjb2RlOiAnUlNEJywgbmFtZV9wbHVyYWw6ICdTZXJiaWFuIGRpbmFycycsIGtleTogJ1JTRCcgfSxcbiAgICB7IHN5bWJvbDogJ1JVQicsIG5hbWU6ICdSdXNzaWFuIFJ1YmxlJywgc3ltYm9sX25hdGl2ZTogJ+KCvS4nLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAsIGNvZGU6ICdSVUInLCBuYW1lX3BsdXJhbDogJ1J1c3NpYW4gcnVibGVzJywga2V5OiAnUlVCJyB9LFxuICAgIHsgc3ltYm9sOiAnUldGJywgbmFtZTogJ1J3YW5kYW4gRnJhbmMnLCBzeW1ib2xfbmF0aXZlOiAnRlInLCBkZWNpbWFsX2RpZ2l0czogMCwgcm91bmRpbmc6IDAsIGNvZGU6ICdSV0YnLCBuYW1lX3BsdXJhbDogJ1J3YW5kYW4gZnJhbmNzJywga2V5OiAnUldGJyB9LFxuICAgIHsgc3ltYm9sOiAnU1InLCBuYW1lOiAnU2F1ZGkgUml5YWwnLCBzeW1ib2xfbmF0aXZlOiAn2LEu2LMu4oCPJywgZGVjaW1hbF9kaWdpdHM6IDIsIHJvdW5kaW5nOiAwLCBjb2RlOiAnU0FSJywgbmFtZV9wbHVyYWw6ICdTYXVkaSByaXlhbHMnLCBrZXk6ICdTQVInIH0sXG4gICAgeyBzeW1ib2w6ICdTREcnLCBuYW1lOiAnU3VkYW5lc2UgUG91bmQnLCBzeW1ib2xfbmF0aXZlOiAnU0RHJywgZGVjaW1hbF9kaWdpdHM6IDIsIHJvdW5kaW5nOiAwLCBjb2RlOiAnU0RHJywgbmFtZV9wbHVyYWw6ICdTdWRhbmVzZSBwb3VuZHMnLCBrZXk6ICdTREcnIH0sXG4gICAgeyBzeW1ib2w6ICdTa3InLCBuYW1lOiAnU3dlZGlzaCBLcm9uYScsIHN5bWJvbF9uYXRpdmU6ICdrcicsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ1NFSycsIG5hbWVfcGx1cmFsOiAnU3dlZGlzaCBrcm9ub3InLCBrZXk6ICdTRUsnIH0sXG4gICAgeyBzeW1ib2w6ICdTJCcsIG5hbWU6ICdTaW5nYXBvcmUgRG9sbGFyJywgc3ltYm9sX25hdGl2ZTogJyQnLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAsIGNvZGU6ICdTR0QnLCBuYW1lX3BsdXJhbDogJ1NpbmdhcG9yZSBkb2xsYXJzJywga2V5OiAnU0dEJyB9LFxuICAgIHsgc3ltYm9sOiAnU3NoJywgbmFtZTogJ1NvbWFsaSBTaGlsbGluZycsIHN5bWJvbF9uYXRpdmU6ICdTc2gnLCBkZWNpbWFsX2RpZ2l0czogMCwgcm91bmRpbmc6IDAsIGNvZGU6ICdTT1MnLCBuYW1lX3BsdXJhbDogJ1NvbWFsaSBzaGlsbGluZ3MnLCBrZXk6ICdTT1MnIH0sXG4gICAgeyBzeW1ib2w6ICdTWcKjJywgbmFtZTogJ1N5cmlhbiBQb3VuZCcsIHN5bWJvbF9uYXRpdmU6ICfZhC7Ysy7igI8nLCBkZWNpbWFsX2RpZ2l0czogMCwgcm91bmRpbmc6IDAsIGNvZGU6ICdTWVAnLCBuYW1lX3BsdXJhbDogJ1N5cmlhbiBwb3VuZHMnLCBrZXk6ICdTWVAnIH0sXG4gICAgeyBzeW1ib2w6ICfguL8nLCBuYW1lOiAnVGhhaSBCYWh0Jywgc3ltYm9sX25hdGl2ZTogJ+C4vycsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ1RIQicsIG5hbWVfcGx1cmFsOiAnVGhhaSBiYWh0Jywga2V5OiAnVEhCJyB9LFxuICAgIHsgc3ltYm9sOiAnRFQnLCBuYW1lOiAnVHVuaXNpYW4gRGluYXInLCBzeW1ib2xfbmF0aXZlOiAn2K8u2Kou4oCPJywgZGVjaW1hbF9kaWdpdHM6IDMsIHJvdW5kaW5nOiAwLCBjb2RlOiAnVE5EJywgbmFtZV9wbHVyYWw6ICdUdW5pc2lhbiBkaW5hcnMnLCBrZXk6ICdUTkQnIH0sXG4gICAgeyBzeW1ib2w6ICdUJCcsIG5hbWU6ICdUb25nYW4gUGHKu2FuZ2EnLCBzeW1ib2xfbmF0aXZlOiAnVCQnLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAsIGNvZGU6ICdUT1AnLCBuYW1lX3BsdXJhbDogJ1RvbmdhbiBwYcq7YW5nYScsIGtleTogJ1RPUCcgfSxcbiAgICB7IHN5bWJvbDogJ1RMJywgbmFtZTogJ1R1cmtpc2ggTGlyYScsIHN5bWJvbF9uYXRpdmU6ICdUTCcsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ1RSWScsIG5hbWVfcGx1cmFsOiAnVHVya2lzaCBMaXJhJywga2V5OiAnVFJZJyB9LFxuICAgIHsgc3ltYm9sOiAnVFQkJywgbmFtZTogJ1RyaW5pZGFkIGFuZCBUb2JhZ28gRG9sbGFyJywgc3ltYm9sX25hdGl2ZTogJyQnLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAsIGNvZGU6ICdUVEQnLCBuYW1lX3BsdXJhbDogJ1RyaW5pZGFkIGFuZCBUb2JhZ28gZG9sbGFycycsIGtleTogJ1RURCcgfSxcbiAgICB7IHN5bWJvbDogJ05UJCcsIG5hbWU6ICdOZXcgVGFpd2FuIERvbGxhcicsIHN5bWJvbF9uYXRpdmU6ICdOVCQnLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAsIGNvZGU6ICdUV0QnLCBuYW1lX3BsdXJhbDogJ05ldyBUYWl3YW4gZG9sbGFycycsIGtleTogJ1RXRCcgfSxcbiAgICB7IHN5bWJvbDogJ1RTaCcsIG5hbWU6ICdUYW56YW5pYW4gU2hpbGxpbmcnLCBzeW1ib2xfbmF0aXZlOiAnVFNoJywgZGVjaW1hbF9kaWdpdHM6IDAsIHJvdW5kaW5nOiAwLCBjb2RlOiAnVFpTJywgbmFtZV9wbHVyYWw6ICdUYW56YW5pYW4gc2hpbGxpbmdzJywga2V5OiAnVFpTJyB9LFxuICAgIHsgc3ltYm9sOiAn4oK0JywgbmFtZTogJ1VrcmFpbmlhbiBIcnl2bmlhJywgc3ltYm9sX25hdGl2ZTogJ+KCtCcsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ1VBSCcsIG5hbWVfcGx1cmFsOiAnVWtyYWluaWFuIGhyeXZuaWFzJywga2V5OiAnVUFIJyB9LFxuICAgIHsgc3ltYm9sOiAnVVNoJywgbmFtZTogJ1VnYW5kYW4gU2hpbGxpbmcnLCBzeW1ib2xfbmF0aXZlOiAnVVNoJywgZGVjaW1hbF9kaWdpdHM6IDAsIHJvdW5kaW5nOiAwLCBjb2RlOiAnVUdYJywgbmFtZV9wbHVyYWw6ICdVZ2FuZGFuIHNoaWxsaW5ncycsIGtleTogJ1VHWCcgfSxcbiAgICB7IHN5bWJvbDogJyRVJywgbmFtZTogJ1VydWd1YXlhbiBQZXNvJywgc3ltYm9sX25hdGl2ZTogJyQnLCBkZWNpbWFsX2RpZ2l0czogMiwgcm91bmRpbmc6IDAsIGNvZGU6ICdVWVUnLCBuYW1lX3BsdXJhbDogJ1VydWd1YXlhbiBwZXNvcycsIGtleTogJ1VZVScgfSxcbiAgICB7IHN5bWJvbDogJ1VaUycsIG5hbWU6ICdVemJla2lzdGFuIFNvbScsIHN5bWJvbF9uYXRpdmU6ICdVWlMnLCBkZWNpbWFsX2RpZ2l0czogMCwgcm91bmRpbmc6IDAsIGNvZGU6ICdVWlMnLCBuYW1lX3BsdXJhbDogJ1V6YmVraXN0YW4gc29tJywga2V5OiAnVVpTJyB9LFxuICAgIHsgc3ltYm9sOiAnQnMuRi4nLCBuYW1lOiAnVmVuZXp1ZWxhbiBCb2zDrXZhcicsIHN5bWJvbF9uYXRpdmU6ICdCcy5GLicsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ1ZFRicsIG5hbWVfcGx1cmFsOiAnVmVuZXp1ZWxhbiBib2zDrXZhcnMnLCBrZXk6ICdWRUYnIH0sXG4gICAgeyBzeW1ib2w6ICfigqsnLCBuYW1lOiAnVmlldG5hbWVzZSBEb25nJywgc3ltYm9sX25hdGl2ZTogJ+KCqycsIGRlY2ltYWxfZGlnaXRzOiAwLCByb3VuZGluZzogMCwgY29kZTogJ1ZORCcsIG5hbWVfcGx1cmFsOiAnVmlldG5hbWVzZSBkb25nJywga2V5OiAnVk5EJyB9LFxuICAgIHsgc3ltYm9sOiAnRkNGQScsIG5hbWU6ICdDRkEgRnJhbmMgQkVBQycsIHN5bWJvbF9uYXRpdmU6ICdGQ0ZBJywgZGVjaW1hbF9kaWdpdHM6IDAsIHJvdW5kaW5nOiAwLCBjb2RlOiAnWEFGJywgbmFtZV9wbHVyYWw6ICdDRkEgZnJhbmNzIEJFQUMnLCBrZXk6ICdYQUYnIH0sXG4gICAgeyBzeW1ib2w6ICdDRkEnLCBuYW1lOiAnQ0ZBIEZyYW5jIEJDRUFPJywgc3ltYm9sX25hdGl2ZTogJ0NGQScsIGRlY2ltYWxfZGlnaXRzOiAwLCByb3VuZGluZzogMCwgY29kZTogJ1hPRicsIG5hbWVfcGx1cmFsOiAnQ0ZBIGZyYW5jcyBCQ0VBTycsIGtleTogJ1hPRicgfSxcbiAgICB7IHN5bWJvbDogJ1lSJywgbmFtZTogJ1llbWVuaSBSaWFsJywgc3ltYm9sX25hdGl2ZTogJ9ixLtmKLuKAjycsIGRlY2ltYWxfZGlnaXRzOiAwLCByb3VuZGluZzogMCwgY29kZTogJ1lFUicsIG5hbWVfcGx1cmFsOiAnWWVtZW5pIHJpYWxzJywga2V5OiAnWUVSJyB9LFxuICAgIHsgc3ltYm9sOiAnUicsIG5hbWU6ICdTb3V0aCBBZnJpY2FuIFJhbmQnLCBzeW1ib2xfbmF0aXZlOiAnUicsIGRlY2ltYWxfZGlnaXRzOiAyLCByb3VuZGluZzogMCwgY29kZTogJ1pBUicsIG5hbWVfcGx1cmFsOiAnU291dGggQWZyaWNhbiByYW5kJywga2V5OiAnWkFSJyB9LFxuICAgIHsgc3ltYm9sOiAnWksnLCBuYW1lOiAnWmFtYmlhbiBLd2FjaGEnLCBzeW1ib2xfbmF0aXZlOiAnWksnLCBkZWNpbWFsX2RpZ2l0czogMCwgcm91bmRpbmc6IDAsIGNvZGU6ICdaTUsnLCBuYW1lX3BsdXJhbDogJ1phbWJpYW4ga3dhY2hhcycsIGtleTogJ1pNSycgfSxcbiAgICB7IHN5bWJvbDogJ1pXTCQnLCBuYW1lOiAnWmltYmFid2VhbiBEb2xsYXInLCBzeW1ib2xfbmF0aXZlOiAnWldMJCcsIGRlY2ltYWxfZGlnaXRzOiAwLCByb3VuZGluZzogMCwgY29kZTogJ1pXTCcsIG5hbWVfcGx1cmFsOiAnWmltYmFid2VhbiBEb2xsYXInLCBrZXk6ICdaV0wnIH0sXG4gIF07XG4gIGNvbnN0IGRhdGF1cnJlbmNpZXNTdXBwb3J0RGF0YTogQXJyYXk8dW5rbm93bj4gPSBbXTtcbiAgY3VycmVuY2llc1N1cHBvcnQoKS5mb3JFYWNoKChrZXk6IHN0cmluZykgPT4ge1xuICAgIGNvbnN0IGZvdW5kID0gZGF0YS5maW5kKChpdGVtKSA9PiBpdGVtLmtleSA9PT0ga2V5KTtcbiAgICBpZiAoZm91bmQpIHtcbiAgICAgIGRhdGF1cnJlbmNpZXNTdXBwb3J0RGF0YS5wdXNoKGZvdW5kKTtcbiAgICB9XG4gIH0pO1xuICByZXR1cm4gY29udmVydE9iamVjdE9mQXJyYXkob2JqZWN0UGF0dGVybiwgZGF0YXVycmVuY2llc1N1cHBvcnREYXRhKSBhcyBBcnJheTxJT3B0aW9uPjtcbn07XG5cbmV4cG9ydCBjb25zdCBsYW5nT3B0aW9ucyA9IChvYmplY3RQYXR0ZXJuOiB7IGtleTogc3RyaW5nOyBsYWJlbDogc3RyaW5nIH0gPSB7IGtleTogJ2tleScsIGxhYmVsOiAnbmF0aXZlTmFtZScgfSkgPT4ge1xuICBjb25zdCBkYXRhID0gW1xuICAgIHsgbmFtZTogJ0Fia2hheicsIG5hdGl2ZU5hbWU6ICfQsNKn0YHRg9CwJywga2V5OiAnYWInIH0sXG4gICAgeyBuYW1lOiAnQWZhcicsIG5hdGl2ZU5hbWU6ICdBZmFyYWYnLCBrZXk6ICdhYScgfSxcbiAgICB7IG5hbWU6ICdBZnJpa2FhbnMnLCBuYXRpdmVOYW1lOiAnQWZyaWthYW5zJywga2V5OiAnYWYnIH0sXG4gICAgeyBuYW1lOiAnQWthbicsIG5hdGl2ZU5hbWU6ICdBa2FuJywga2V5OiAnYWsnIH0sXG4gICAgeyBuYW1lOiAnQWxiYW5pYW4nLCBuYXRpdmVOYW1lOiAnU2hxaXAnLCBrZXk6ICdzcScgfSxcbiAgICB7IG5hbWU6ICdBbWhhcmljJywgbmF0aXZlTmFtZTogJ+GKoOGIm+GIreGKmycsIGtleTogJ2FtJyB9LFxuICAgIHsgbmFtZTogJ0FyYWJpYycsIG5hdGl2ZU5hbWU6ICfYp9mE2LnYsdio2YrYqScsIGtleTogJ2FyJyB9LFxuICAgIHsgbmFtZTogJ0FyYWdvbmVzZScsIG5hdGl2ZU5hbWU6ICdBcmFnb27DqXMnLCBrZXk6ICdhbicgfSxcbiAgICB7IG5hbWU6ICdBcm1lbmlhbicsIG5hdGl2ZU5hbWU6ICfVgNWh1bXVpdaA1aXVticsIGtleTogJ2h5JyB9LFxuICAgIHsgbmFtZTogJ0Fzc2FtZXNlJywgbmF0aXZlTmFtZTogJ+CmheCmuOCmruCngOCmr+CmvOCmvicsIGtleTogJ2FzJyB9LFxuICAgIHsgbmFtZTogJ0F2YXJpYycsIG5hdGl2ZU5hbWU6ICfQsNCy0LDRgCDQvNCw0YbTgCwg0LzQsNCz04DQsNGA0YPQuyDQvNCw0YbTgCcsIGtleTogJ2F2JyB9LFxuICAgIHsgbmFtZTogJ0F2ZXN0YW4nLCBuYXRpdmVOYW1lOiAnYXZlc3RhJywga2V5OiAnYWUnIH0sXG4gICAgeyBuYW1lOiAnQXltYXJhJywgbmF0aXZlTmFtZTogJ2F5bWFyIGFydScsIGtleTogJ2F5JyB9LFxuICAgIHsgbmFtZTogJ0F6ZXJiYWlqYW5pJywgbmF0aXZlTmFtZTogJ2F6yZlyYmF5Y2FuIGRpbGknLCBrZXk6ICdheicgfSxcbiAgICB7IG5hbWU6ICdCYW1iYXJhJywgbmF0aXZlTmFtZTogJ2JhbWFuYW5rYW4nLCBrZXk6ICdibScgfSxcbiAgICB7IG5hbWU6ICdCYXNoa2lyJywgbmF0aXZlTmFtZTogJ9Cx0LDRiNKh0L7RgNGCINGC0LXQu9C1Jywga2V5OiAnYmEnIH0sXG4gICAgeyBuYW1lOiAnQmFzcXVlJywgbmF0aXZlTmFtZTogJ2V1c2thcmEsIGV1c2tlcmEnLCBrZXk6ICdldScgfSxcbiAgICB7IG5hbWU6ICdCZWxhcnVzaWFuJywgbmF0aXZlTmFtZTogJ9CR0LXQu9Cw0YDRg9GB0LrQsNGPJywga2V5OiAnYmUnIH0sXG4gICAgeyBuYW1lOiAnQmVuZ2FsaScsIG5hdGl2ZU5hbWU6ICfgpqzgpr7gpoLgprLgpr4nLCBrZXk6ICdibicgfSxcbiAgICB7IG5hbWU6ICdCaWhhcmknLCBuYXRpdmVOYW1lOiAn4KSt4KWL4KSc4KSq4KWB4KSw4KWAJywga2V5OiAnYmgnIH0sXG4gICAgeyBuYW1lOiAnQmlzbGFtYScsIG5hdGl2ZU5hbWU6ICdCaXNsYW1hJywga2V5OiAnYmknIH0sXG4gICAgeyBuYW1lOiAnQm9zbmlhbicsIG5hdGl2ZU5hbWU6ICdib3NhbnNraSBqZXppaycsIGtleTogJ2JzJyB9LFxuICAgIHsgbmFtZTogJ0JyZXRvbicsIG5hdGl2ZU5hbWU6ICdicmV6aG9uZWcnLCBrZXk6ICdicicgfSxcbiAgICB7IG5hbWU6ICdCdWxnYXJpYW4nLCBuYXRpdmVOYW1lOiAn0LHRitC70LPQsNGA0YHQutC4INC10LfQuNC6Jywga2V5OiAnYmcnIH0sXG4gICAgeyBuYW1lOiAnQnVybWVzZScsIG5hdGl2ZU5hbWU6ICfhgJfhgJnhgKzhgIXhgKwnLCBrZXk6ICdteScgfSxcbiAgICB7IG5hbWU6ICdDYXRhbGFuOyBWYWxlbmNpYW4nLCBuYXRpdmVOYW1lOiAnQ2F0YWzDoCcsIGtleTogJ2NhJyB9LFxuICAgIHsgbmFtZTogJ0NoYW1vcnJvJywgbmF0aXZlTmFtZTogJ0NoYW1vcnUnLCBrZXk6ICdjaCcgfSxcbiAgICB7IG5hbWU6ICdDaGVjaGVuJywgbmF0aXZlTmFtZTogJ9C90L7RhdGH0LjQudC9INC80L7RgtGCJywga2V5OiAnY2UnIH0sXG4gICAgeyBuYW1lOiAnQ2hpY2hld2E7IENoZXdhOyBOeWFuamEnLCBuYXRpdmVOYW1lOiAnY2hpQ2hlxbVhLCBjaGlueWFuamEnLCBrZXk6ICdueScgfSxcbiAgICB7IG5hbWU6ICdDaGluZXNlJywgbmF0aXZlTmFtZTogJ+S4reaWhyAoWmjFjW5nd8OpbiksIOaxieivrSwg5ryi6KqeJywga2V5OiAnemgnIH0sXG4gICAgeyBuYW1lOiAnQ2h1dmFzaCcsIG5hdGl2ZU5hbWU6ICfRh9OR0LLQsNGIINGH05fQu9GF0LgnLCBrZXk6ICdjdicgfSxcbiAgICB7IG5hbWU6ICdDb3JuaXNoJywgbmF0aXZlTmFtZTogJ0tlcm5ld2VrJywga2V5OiAna3cnIH0sXG4gICAgeyBuYW1lOiAnQ29yc2ljYW4nLCBuYXRpdmVOYW1lOiAnY29yc3UsIGxpbmd1YSBjb3JzYScsIGtleTogJ2NvJyB9LFxuICAgIHsgbmFtZTogJ0NyZWUnLCBuYXRpdmVOYW1lOiAn4ZOA4ZCm4ZCD4ZSt4ZCN4ZCP4ZCjJywga2V5OiAnY3InIH0sXG4gICAgeyBuYW1lOiAnQ3JvYXRpYW4nLCBuYXRpdmVOYW1lOiAnaHJ2YXRza2knLCBrZXk6ICdocicgfSxcbiAgICB7IG5hbWU6ICdDemVjaCcsIG5hdGl2ZU5hbWU6ICfEjWVza3ksIMSNZcWhdGluYScsIGtleTogJ2NzJyB9LFxuICAgIHsgbmFtZTogJ0RhbmlzaCcsIG5hdGl2ZU5hbWU6ICdkYW5zaycsIGtleTogJ2RhJyB9LFxuICAgIHsgbmFtZTogJ0RpdmVoaTsgRGhpdmVoaTsgTWFsZGl2aWFuOycsIG5hdGl2ZU5hbWU6ICfei96o3ojerN6A3qgnLCBrZXk6ICdkdicgfSxcbiAgICB7IG5hbWU6ICdEdXRjaCcsIG5hdGl2ZU5hbWU6ICdOZWRlcmxhbmRzLCBWbGFhbXMnLCBrZXk6ICdubCcgfSxcbiAgICB7IG5hbWU6ICdFbmdsaXNoJywgbmF0aXZlTmFtZTogJ0VuZ2xpc2gnLCBrZXk6ICdlbicgfSxcbiAgICB7IG5hbWU6ICdFc3BlcmFudG8nLCBuYXRpdmVOYW1lOiAnRXNwZXJhbnRvJywga2V5OiAnZW8nIH0sXG4gICAgeyBuYW1lOiAnRXN0b25pYW4nLCBuYXRpdmVOYW1lOiAnZWVzdGksIGVlc3RpIGtlZWwnLCBrZXk6ICdldCcgfSxcbiAgICB7IG5hbWU6ICdFd2UnLCBuYXRpdmVOYW1lOiAnRcqLZWdiZScsIGtleTogJ2VlJyB9LFxuICAgIHsgbmFtZTogJ0Zhcm9lc2UnLCBuYXRpdmVOYW1lOiAnZsO4cm95c2t0Jywga2V5OiAnZm8nIH0sXG4gICAgeyBuYW1lOiAnRmlqaWFuJywgbmF0aXZlTmFtZTogJ3Zvc2EgVmFrYXZpdGknLCBrZXk6ICdmaicgfSxcbiAgICB7IG5hbWU6ICdGaW5uaXNoJywgbmF0aXZlTmFtZTogJ3N1b21pLCBzdW9tZW4ga2llbGknLCBrZXk6ICdmaScgfSxcbiAgICB7IG5hbWU6ICdGcmVuY2gnLCBuYXRpdmVOYW1lOiAnZnJhbsOnYWlzLCBsYW5ndWUgZnJhbsOnYWlzZScsIGtleTogJ2ZyJyB9LFxuICAgIHsgbmFtZTogJ0Z1bGE7IEZ1bGFoOyBQdWxhYXI7IFB1bGFyJywgbmF0aXZlTmFtZTogJ0Z1bGZ1bGRlLCBQdWxhYXIsIFB1bGFyJywga2V5OiAnZmYnIH0sXG4gICAgeyBuYW1lOiAnR2FsaWNpYW4nLCBuYXRpdmVOYW1lOiAnR2FsZWdvJywga2V5OiAnZ2wnIH0sXG4gICAgeyBuYW1lOiAnR2VvcmdpYW4nLCBuYXRpdmVOYW1lOiAn4YOl4YOQ4YOg4YOX4YOj4YOa4YOYJywga2V5OiAna2EnIH0sXG4gICAgeyBuYW1lOiAnR2VybWFuJywgbmF0aXZlTmFtZTogJ0RldXRzY2gnLCBrZXk6ICdkZScgfSxcbiAgICB7IG5hbWU6ICdHcmVlaywgTW9kZXJuJywgbmF0aXZlTmFtZTogJ86VzrvOu863zr3Ouc66zqwnLCBrZXk6ICdlbCcgfSxcbiAgICB7IG5hbWU6ICdHdWFyYW7DrScsIG5hdGl2ZU5hbWU6ICdBdmHDsWXhur0nLCBrZXk6ICdnbicgfSxcbiAgICB7IG5hbWU6ICdHdWphcmF0aScsIG5hdGl2ZU5hbWU6ICfgqpfgq4HgqpzgqrDgqr7gqqTgq4AnLCBrZXk6ICdndScgfSxcbiAgICB7IG5hbWU6ICdIYWl0aWFuOyBIYWl0aWFuIENyZW9sZScsIG5hdGl2ZU5hbWU6ICdLcmV5w7JsIGF5aXN5ZW4nLCBrZXk6ICdodCcgfSxcbiAgICB7IG5hbWU6ICdIYXVzYScsIG5hdGl2ZU5hbWU6ICdIYXVzYSwg2YfZjtmI2Y/Ys9mOJywga2V5OiAnaGEnIH0sXG4gICAgeyBuYW1lOiAnSGVicmV3IChtb2Rlcm4pJywgbmF0aXZlTmFtZTogJ9ei15HXqNeZ16onLCBrZXk6ICdoZScgfSxcbiAgICB7IG5hbWU6ICdIZXJlcm8nLCBuYXRpdmVOYW1lOiAnT3RqaWhlcmVybycsIGtleTogJ2h6JyB9LFxuICAgIHsgbmFtZTogJ0hpbmRpJywgbmF0aXZlTmFtZTogJ+CkueCkv+CkqOCljeCkpuClgCwg4KS54KS/4KSC4KSm4KWAJywga2V5OiAnaGknIH0sXG4gICAgeyBuYW1lOiAnSGlyaSBNb3R1JywgbmF0aXZlTmFtZTogJ0hpcmkgTW90dScsIGtleTogJ2hvJyB9LFxuICAgIHsgbmFtZTogJ0h1bmdhcmlhbicsIG5hdGl2ZU5hbWU6ICdNYWd5YXInLCBrZXk6ICdodScgfSxcbiAgICB7IG5hbWU6ICdJbnRlcmxpbmd1YScsIG5hdGl2ZU5hbWU6ICdJbnRlcmxpbmd1YScsIGtleTogJ2lhJyB9LFxuICAgIHsgbmFtZTogJ0luZG9uZXNpYW4nLCBuYXRpdmVOYW1lOiAnQmFoYXNhIEluZG9uZXNpYScsIGtleTogJ2lkJyB9LFxuICAgIHsgbmFtZTogJ0ludGVybGluZ3VlJywgbmF0aXZlTmFtZTogJ09yaWdpbmFsbHkgY2FsbGVkIE9jY2lkZW50YWw7IHRoZW4gSW50ZXJsaW5ndWUgYWZ0ZXIgV1dJSScsIGtleTogJ2llJyB9LFxuICAgIHsgbmFtZTogJ0lyaXNoJywgbmF0aXZlTmFtZTogJ0dhZWlsZ2UnLCBrZXk6ICdnYScgfSxcbiAgICB7IG5hbWU6ICdJZ2JvJywgbmF0aXZlTmFtZTogJ0Fz4bulc+G7pSBJZ2JvJywga2V5OiAnaWcnIH0sXG4gICAgeyBuYW1lOiAnSW51cGlhcScsIG5hdGl2ZU5hbWU6ICdJw7F1cGlhcSwgScOxdXBpYXR1bicsIGtleTogJ2lrJyB9LFxuICAgIHsgbmFtZTogJ0lkbycsIG5hdGl2ZU5hbWU6ICdJZG8nLCBrZXk6ICdpbycgfSxcbiAgICB7IG5hbWU6ICdJY2VsYW5kaWMnLCBuYXRpdmVOYW1lOiAnw41zbGVuc2thJywga2V5OiAnaXMnIH0sXG4gICAgeyBuYW1lOiAnSXRhbGlhbicsIG5hdGl2ZU5hbWU6ICdJdGFsaWFubycsIGtleTogJ2l0JyB9LFxuICAgIHsgbmFtZTogJ0ludWt0aXR1dCcsIG5hdGl2ZU5hbWU6ICfhkIPhk4ThkoPhkY7hkZDhkaYnLCBrZXk6ICdpdScgfSxcbiAgICB7IG5hbWU6ICdKYXBhbmVzZScsIG5hdGl2ZU5hbWU6ICfml6XmnKzoqp4gKOOBq+OBu+OCk+OBlO+8j+OBq+OBo+OBveOCk+OBlCknLCBrZXk6ICdqYScgfSxcbiAgICB7IG5hbWU6ICdKYXZhbmVzZScsIG5hdGl2ZU5hbWU6ICdiYXNhIEphd2EnLCBrZXk6ICdqdicgfSxcbiAgICB7IG5hbWU6ICdLYWxhYWxsaXN1dCwgR3JlZW5sYW5kaWMnLCBuYXRpdmVOYW1lOiAna2FsYWFsbGlzdXQsIGthbGFhbGxpdCBvcWFhc2lpJywga2V5OiAna2wnIH0sXG4gICAgeyBuYW1lOiAnS2FubmFkYScsIG5hdGl2ZU5hbWU6ICfgspXgsqjgs43gsqjgsqEnLCBrZXk6ICdrbicgfSxcbiAgICB7IG5hbWU6ICdLYW51cmknLCBuYXRpdmVOYW1lOiAnS2FudXJpJywga2V5OiAna3InIH0sXG4gICAgeyBuYW1lOiAnS2FzaG1pcmknLCBuYXRpdmVOYW1lOiAn4KSV4KS24KWN4KSu4KWA4KSw4KWALCDZg9i02YXZitix2YrigI4nLCBrZXk6ICdrcycgfSxcbiAgICB7IG5hbWU6ICdLYXpha2gnLCBuYXRpdmVOYW1lOiAn0prQsNC30LDSmyDRgtGW0LvRlicsIGtleTogJ2trJyB9LFxuICAgIHsgbmFtZTogJ0tobWVyJywgbmF0aXZlTmFtZTogJ+Gel+GetuGen+GetuGegeGfkuGemOGfguGemicsIGtleTogJ2ttJyB9LFxuICAgIHsgbmFtZTogJ0tpa3V5dSwgR2lrdXl1JywgbmF0aXZlTmFtZTogJ0fEqWvFqXnFqScsIGtleTogJ2tpJyB9LFxuICAgIHsgbmFtZTogJ0tpbnlhcndhbmRhJywgbmF0aXZlTmFtZTogJ0lraW55YXJ3YW5kYScsIGtleTogJ3J3JyB9LFxuICAgIHsgbmFtZTogJ0tpcmdoaXosIEt5cmd5eicsIG5hdGl2ZU5hbWU6ICfQutGL0YDQs9GL0Lcg0YLQuNC70LgnLCBrZXk6ICdreScgfSxcbiAgICB7IG5hbWU6ICdLb21pJywgbmF0aXZlTmFtZTogJ9C60L7QvNC4INC60YvQsicsIGtleTogJ2t2JyB9LFxuICAgIHsgbmFtZTogJ0tvbmdvJywgbmF0aXZlTmFtZTogJ0tpS29uZ28nLCBrZXk6ICdrZycgfSxcbiAgICB7IG5hbWU6ICdLb3JlYW4nLCBuYXRpdmVOYW1lOiAn7ZWc6rWt7Ja0ICjpn5PlnIvoqp4pLCDsobDshKDrp5AgKOacnemuruiqniknLCBrZXk6ICdrbycgfSxcbiAgICB7IG5hbWU6ICdLdXJkaXNoJywgbmF0aXZlTmFtZTogJ0t1cmTDriwg2YPZiNix2K/bjOKAjicsIGtleTogJ2t1JyB9LFxuICAgIHsgbmFtZTogJ0t3YW55YW1hLCBLdWFueWFtYScsIG5hdGl2ZU5hbWU6ICdLdWFueWFtYScsIGtleTogJ2tqJyB9LFxuICAgIHsgbmFtZTogJ0xhdGluJywgbmF0aXZlTmFtZTogJ2xhdGluZSwgbGluZ3VhIGxhdGluYScsIGtleTogJ2xhJyB9LFxuICAgIHsgbmFtZTogJ0x1eGVtYm91cmdpc2gsIExldHplYnVyZ2VzY2gnLCBuYXRpdmVOYW1lOiAnTMOrdHplYnVlcmdlc2NoJywga2V5OiAnbGInIH0sXG4gICAgeyBuYW1lOiAnTHVnYW5kYScsIG5hdGl2ZU5hbWU6ICdMdWdhbmRhJywga2V5OiAnbGcnIH0sXG4gICAgeyBuYW1lOiAnTGltYnVyZ2lzaCwgTGltYnVyZ2FuLCBMaW1idXJnZXInLCBuYXRpdmVOYW1lOiAnTGltYnVyZ3MnLCBrZXk6ICdsaScgfSxcbiAgICB7IG5hbWU6ICdMaW5nYWxhJywgbmF0aXZlTmFtZTogJ0xpbmfDoWxhJywga2V5OiAnbG4nIH0sXG4gICAgeyBuYW1lOiAnTGFvJywgbmF0aXZlTmFtZTogJ+C6nuC6suC6quC6suC6peC6suC6pycsIGtleTogJ2xvJyB9LFxuICAgIHsgbmFtZTogJ0xpdGh1YW5pYW4nLCBuYXRpdmVOYW1lOiAnbGlldHV2acWzIGthbGJhJywga2V5OiAnbHQnIH0sXG4gICAgeyBuYW1lOiAnTHViYS1LYXRhbmdhJywgbmF0aXZlTmFtZTogJ0x1YmEtS2F0YW5nYScsIGtleTogJ2x1JyB9LFxuICAgIHsgbmFtZTogJ0xhdHZpYW4nLCBuYXRpdmVOYW1lOiAnbGF0dmllxaF1IHZhbG9kYScsIGtleTogJ2x2JyB9LFxuICAgIHsgbmFtZTogJ01hbngnLCBuYXRpdmVOYW1lOiAnR2FlbGcsIEdhaWxjaycsIGtleTogJ2d2JyB9LFxuICAgIHsgbmFtZTogJ01hY2Vkb25pYW4nLCBuYXRpdmVOYW1lOiAn0LzQsNC60LXQtNC+0L3RgdC60Lgg0ZjQsNC30LjQuicsIGtleTogJ21rJyB9LFxuICAgIHsgbmFtZTogJ01hbGFnYXN5JywgbmF0aXZlTmFtZTogJ01hbGFnYXN5IGZpdGVueScsIGtleTogJ21nJyB9LFxuICAgIHsgbmFtZTogJ01hbGF5JywgbmF0aXZlTmFtZTogJ2JhaGFzYSBNZWxheXUsINio2YfYp9izINmF2YTYp9mK2YjigI4nLCBrZXk6ICdtcycgfSxcbiAgICB7IG5hbWU6ICdNYWxheWFsYW0nLCBuYXRpdmVOYW1lOiAn4LSu4LSy4LSv4LS+4LSz4LSCJywga2V5OiAnbWwnIH0sXG4gICAgeyBuYW1lOiAnTWFsdGVzZScsIG5hdGl2ZU5hbWU6ICdNYWx0aScsIGtleTogJ210JyB9LFxuICAgIHsgbmFtZTogJ03EgW9yaScsIG5hdGl2ZU5hbWU6ICd0ZSByZW8gTcSBb3JpJywga2V5OiAnbWknIH0sXG4gICAgeyBuYW1lOiAnTWFyYXRoaSAoTWFyxIHhua1oxKspJywgbmF0aXZlTmFtZTogJ+CkruCksOCkvuCkoOClgCcsIGtleTogJ21yJyB9LFxuICAgIHsgbmFtZTogJ01hcnNoYWxsZXNlJywgbmF0aXZlTmFtZTogJ0thamluIE3Mp2FqZcS8Jywga2V5OiAnbWgnIH0sXG4gICAgeyBuYW1lOiAnTW9uZ29saWFuJywgbmF0aXZlTmFtZTogJ9C80L7QvdCz0L7QuycsIGtleTogJ21uJyB9LFxuICAgIHsgbmFtZTogJ05hdXJ1JywgbmF0aXZlTmFtZTogJ0VrYWthaXLFqSBOYW9lcm8nLCBrZXk6ICduYScgfSxcbiAgICB7IG5hbWU6ICdOYXZham8sIE5hdmFobycsIG5hdGl2ZU5hbWU6ICdEaW7DqSBiaXphYWQsIERpbsOpa8q8ZWjHsMOtJywga2V5OiAnbnYnIH0sXG4gICAgeyBuYW1lOiAnTm9yd2VnaWFuIEJva23DpWwnLCBuYXRpdmVOYW1lOiAnTm9yc2sgYm9rbcOlbCcsIGtleTogJ25iJyB9LFxuICAgIHsgbmFtZTogJ05vcnRoIE5kZWJlbGUnLCBuYXRpdmVOYW1lOiAnaXNpTmRlYmVsZScsIGtleTogJ25kJyB9LFxuICAgIHsgbmFtZTogJ05lcGFsaScsIG5hdGl2ZU5hbWU6ICfgpKjgpYfgpKrgpL7gpLLgpYAnLCBrZXk6ICduZScgfSxcbiAgICB7IG5hbWU6ICdOZG9uZ2EnLCBuYXRpdmVOYW1lOiAnT3dhbWJvJywga2V5OiAnbmcnIH0sXG4gICAgeyBuYW1lOiAnTm9yd2VnaWFuIE55bm9yc2snLCBuYXRpdmVOYW1lOiAnTm9yc2sgbnlub3JzaycsIGtleTogJ25uJyB9LFxuICAgIHsgbmFtZTogJ05vcndlZ2lhbicsIG5hdGl2ZU5hbWU6ICdOb3JzaycsIGtleTogJ25vJyB9LFxuICAgIHsgbmFtZTogJ051b3N1JywgbmF0aXZlTmFtZTogJ+qGiOqMoOqSvyBOdW9zdWh4b3AnLCBrZXk6ICdpaScgfSxcbiAgICB7IG5hbWU6ICdTb3V0aCBOZGViZWxlJywgbmF0aXZlTmFtZTogJ2lzaU5kZWJlbGUnLCBrZXk6ICducicgfSxcbiAgICB7IG5hbWU6ICdPY2NpdGFuJywgbmF0aXZlTmFtZTogJ09jY2l0YW4nLCBrZXk6ICdvYycgfSxcbiAgICB7IG5hbWU6ICdPamlid2UsIE9qaWJ3YScsIG5hdGl2ZU5hbWU6ICfhkIrhk4LhlJHhk4jhkK/hkqfhkI7hk5AnLCBrZXk6ICdvaicgfSxcbiAgICB7IG5hbWU6ICdPbGQgQ2h1cmNoIFNsYXZvbmljLCBDaHVyY2ggU2xhdmljLCBDaHVyY2ggU2xhdm9uaWMsIE9sZCBCdWxnYXJpYW4sIE9sZCBTbGF2b25pYycsIG5hdGl2ZU5hbWU6ICfRqdC30YvQutGKINGB0LvQvtCy0aPQvdGM0YHQutGKJywga2V5OiAnY3UnIH0sXG4gICAgeyBuYW1lOiAnT3JvbW8nLCBuYXRpdmVOYW1lOiAnQWZhYW4gT3JvbW9vJywga2V5OiAnb20nIH0sXG4gICAgeyBuYW1lOiAnT3JpeWEnLCBuYXRpdmVOYW1lOiAn4KyT4Kyh4Ky84Ky/4KyGJywga2V5OiAnb3InIH0sXG4gICAgeyBuYW1lOiAnT3NzZXRpYW4sIE9zc2V0aWMnLCBuYXRpdmVOYW1lOiAn0LjRgNC+0L0gw6bQstC30LDQsycsIGtleTogJ29zJyB9LFxuICAgIHsgbmFtZTogJ1BhbmphYmksIFB1bmphYmknLCBuYXRpdmVOYW1lOiAn4Kiq4Kmw4Kic4Ki+4Kis4KmALCDZvtmG2KzYp9io24zigI4nLCBrZXk6ICdwYScgfSxcbiAgICB7IG5hbWU6ICdQxIFsaScsIG5hdGl2ZU5hbWU6ICfgpKrgpL7gpLTgpL8nLCBrZXk6ICdwaScgfSxcbiAgICB7IG5hbWU6ICdQZXJzaWFuJywgbmF0aXZlTmFtZTogJ9mB2KfYsdiz24wnLCBrZXk6ICdmYScgfSxcbiAgICB7IG5hbWU6ICdQb2xpc2gnLCBuYXRpdmVOYW1lOiAncG9sc2tpJywga2V5OiAncGwnIH0sXG4gICAgeyBuYW1lOiAnUGFzaHRvLCBQdXNodG8nLCBuYXRpdmVOYW1lOiAn2b7amtiq2YgnLCBrZXk6ICdwcycgfSxcbiAgICB7IG5hbWU6ICdQb3J0dWd1ZXNlJywgbmF0aXZlTmFtZTogJ1BvcnR1Z3XDqnMnLCBrZXk6ICdwdCcgfSxcbiAgICB7IG5hbWU6ICdRdWVjaHVhJywgbmF0aXZlTmFtZTogJ1J1bmEgU2ltaSwgS2ljaHdhJywga2V5OiAncXUnIH0sXG4gICAgeyBuYW1lOiAnUm9tYW5zaCcsIG5hdGl2ZU5hbWU6ICdydW1hbnRzY2ggZ3Jpc2NodW4nLCBrZXk6ICdybScgfSxcbiAgICB7IG5hbWU6ICdLaXJ1bmRpJywgbmF0aXZlTmFtZTogJ2tpUnVuZGknLCBrZXk6ICdybicgfSxcbiAgICB7IG5hbWU6ICdSb21hbmlhbiwgTW9sZGF2aWFuLCBNb2xkb3ZhbicsIG5hdGl2ZU5hbWU6ICdyb23Dom7EgycsIGtleTogJ3JvJyB9LFxuICAgIHsgbmFtZTogJ1J1c3NpYW4nLCBuYXRpdmVOYW1lOiAn0YDRg9GB0YHQutC40Lkg0Y/Qt9GL0LonLCBrZXk6ICdydScgfSxcbiAgICB7IG5hbWU6ICdTYW5za3JpdCAoU2HhuYFza+G5m3RhKScsIG5hdGl2ZU5hbWU6ICfgpLjgpILgpLjgpY3gpJXgpYPgpKTgpK7gpY0nLCBrZXk6ICdzYScgfSxcbiAgICB7IG5hbWU6ICdTYXJkaW5pYW4nLCBuYXRpdmVOYW1lOiAnc2FyZHUnLCBrZXk6ICdzYycgfSxcbiAgICB7IG5hbWU6ICdTaW5kaGknLCBuYXRpdmVOYW1lOiAn4KS44KS/4KSo4KWN4KSn4KWALCDYs9mG2ozZitiMINiz2YbYr9q+24zigI4nLCBrZXk6ICdzZCcgfSxcbiAgICB7IG5hbWU6ICdOb3J0aGVybiBTYW1pJywgbmF0aXZlTmFtZTogJ0RhdnZpc8OhbWVnaWVsbGEnLCBrZXk6ICdzZScgfSxcbiAgICB7IG5hbWU6ICdTYW1vYW4nLCBuYXRpdmVOYW1lOiAnZ2FnYW5hIGZhYSBTYW1vYScsIGtleTogJ3NtJyB9LFxuICAgIHsgbmFtZTogJ1NhbmdvJywgbmF0aXZlTmFtZTogJ3nDom5nw6IgdMOuIHPDpG5nw7YnLCBrZXk6ICdzZycgfSxcbiAgICB7IG5hbWU6ICdTZXJiaWFuJywgbmF0aXZlTmFtZTogJ9GB0YDQv9GB0LrQuCDRmNC10LfQuNC6Jywga2V5OiAnc3InIH0sXG4gICAgeyBuYW1lOiAnU2NvdHRpc2ggR2FlbGljOyBHYWVsaWMnLCBuYXRpdmVOYW1lOiAnR8OgaWRobGlnJywga2V5OiAnZ2QnIH0sXG4gICAgeyBuYW1lOiAnU2hvbmEnLCBuYXRpdmVOYW1lOiAnY2hpU2hvbmEnLCBrZXk6ICdzbicgfSxcbiAgICB7IG5hbWU6ICdTaW5oYWxhLCBTaW5oYWxlc2UnLCBuYXRpdmVOYW1lOiAn4LeD4LeS4LaC4LeE4La9Jywga2V5OiAnc2knIH0sXG4gICAgeyBuYW1lOiAnU2xvdmFrJywgbmF0aXZlTmFtZTogJ3Nsb3ZlbsSNaW5hJywga2V5OiAnc2snIH0sXG4gICAgeyBuYW1lOiAnU2xvdmVuZScsIG5hdGl2ZU5hbWU6ICdzbG92ZW7FocSNaW5hJywga2V5OiAnc2wnIH0sXG4gICAgeyBuYW1lOiAnU29tYWxpJywgbmF0aXZlTmFtZTogJ1Nvb21hYWxpZ2EsIGFmIFNvb21hYWxpJywga2V5OiAnc28nIH0sXG4gICAgeyBuYW1lOiAnU291dGhlcm4gU290aG8nLCBuYXRpdmVOYW1lOiAnU2Vzb3RobycsIGtleTogJ3N0JyB9LFxuICAgIHsgbmFtZTogJ1NwYW5pc2g7IENhc3RpbGlhbicsIG5hdGl2ZU5hbWU6ICdlc3Bhw7FvbCwgY2FzdGVsbGFubycsIGtleTogJ2VzJyB9LFxuICAgIHsgbmFtZTogJ1N1bmRhbmVzZScsIG5hdGl2ZU5hbWU6ICdCYXNhIFN1bmRhJywga2V5OiAnc3UnIH0sXG4gICAgeyBuYW1lOiAnU3dhaGlsaScsIG5hdGl2ZU5hbWU6ICdLaXN3YWhpbGknLCBrZXk6ICdzdycgfSxcbiAgICB7IG5hbWU6ICdTd2F0aScsIG5hdGl2ZU5hbWU6ICdTaVN3YXRpJywga2V5OiAnc3MnIH0sXG4gICAgeyBuYW1lOiAnU3dlZGlzaCcsIG5hdGl2ZU5hbWU6ICdzdmVuc2thJywga2V5OiAnc3YnIH0sXG4gICAgeyBuYW1lOiAnVGFtaWwnLCBuYXRpdmVOYW1lOiAn4K6k4K6u4K6/4K604K+NJywga2V5OiAndGEnIH0sXG4gICAgeyBuYW1lOiAnVGVsdWd1JywgbmF0aXZlTmFtZTogJ+CwpOCxhuCwsuCxgeCwl+CxgScsIGtleTogJ3RlJyB9LFxuICAgIHsgbmFtZTogJ1RhamlrJywgbmF0aXZlTmFtZTogJ9GC0L7St9C40LrToywgdG/En2lrxKssINiq2KfYrNuM2qnbjOKAjicsIGtleTogJ3RnJyB9LFxuICAgIHsgbmFtZTogJ1RoYWknLCBuYXRpdmVOYW1lOiAn4LmE4LiX4LiiJywga2V5OiAndGgnIH0sXG4gICAgeyBuYW1lOiAnVGlncmlueWEnLCBuYXRpdmVOYW1lOiAn4Ym14YyN4Yit4YqbJywga2V5OiAndGknIH0sXG4gICAgeyBuYW1lOiAnVGliZXRhbiBTdGFuZGFyZCwgVGliZXRhbiwgQ2VudHJhbCcsIG5hdGl2ZU5hbWU6ICfgvZbgvbzgvZHgvIvgvaHgvbLgvYInLCBrZXk6ICdibycgfSxcbiAgICB7IG5hbWU6ICdUdXJrbWVuJywgbmF0aXZlTmFtZTogJ1TDvHJrbWVuLCDQotKv0YDQutC80LXQvScsIGtleTogJ3RrJyB9LFxuICAgIHsgbmFtZTogJ1RhZ2Fsb2cnLCBuYXRpdmVOYW1lOiAnV2lrYW5nIFRhZ2Fsb2csIOGcj+GckuGcg+GcheGclCDhnIbhnIThnI7hnJPhnIThnJQnLCBrZXk6ICd0bCcgfSxcbiAgICB7IG5hbWU6ICdUc3dhbmEnLCBuYXRpdmVOYW1lOiAnU2V0c3dhbmEnLCBrZXk6ICd0bicgfSxcbiAgICB7IG5hbWU6ICdUb25nYSAoVG9uZ2EgSXNsYW5kcyknLCBuYXRpdmVOYW1lOiAnZmFrYSBUb25nYScsIGtleTogJ3RvJyB9LFxuICAgIHsgbmFtZTogJ1R1cmtpc2gnLCBuYXRpdmVOYW1lOiAnVMO8cmvDp2UnLCBrZXk6ICd0cicgfSxcbiAgICB7IG5hbWU6ICdUc29uZ2EnLCBuYXRpdmVOYW1lOiAnWGl0c29uZ2EnLCBrZXk6ICd0cycgfSxcbiAgICB7IG5hbWU6ICdUYXRhcicsIG5hdGl2ZU5hbWU6ICfRgtCw0YLQsNGA0YfQsCwgdGF0YXLDp2EsINiq2KfYqtin2LHahtin4oCOJywga2V5OiAndHQnIH0sXG4gICAgeyBuYW1lOiAnVHdpJywgbmF0aXZlTmFtZTogJ1R3aScsIGtleTogJ3R3JyB9LFxuICAgIHsgbmFtZTogJ1RhaGl0aWFuJywgbmF0aXZlTmFtZTogJ1JlbyBUYWhpdGknLCBrZXk6ICd0eScgfSxcbiAgICB7IG5hbWU6ICdVaWdodXIsIFV5Z2h1cicsIG5hdGl2ZU5hbWU6ICdVecajdXJxyZksINim24fZiti624fYsdqG25XigI4nLCBrZXk6ICd1ZycgfSxcbiAgICB7IG5hbWU6ICdVa3JhaW5pYW4nLCBuYXRpdmVOYW1lOiAn0YPQutGA0LDRl9C90YHRjNC60LAnLCBrZXk6ICd1aycgfSxcbiAgICB7IG5hbWU6ICdVcmR1JywgbmF0aXZlTmFtZTogJ9in2LHYr9mIJywga2V5OiAndXInIH0sXG4gICAgeyBuYW1lOiAnVXpiZWsnLCBuYXRpdmVOYW1lOiAnemJlaywg0I7Qt9Cx0LXQuiwg2KPbh9iy2KjbkNmD4oCOJywga2V5OiAndXonIH0sXG4gICAgeyBuYW1lOiAnVmVuZGEnLCBuYXRpdmVOYW1lOiAnVHNoaXZlbuG4k2EnLCBrZXk6ICd2ZScgfSxcbiAgICB7IG5hbWU6ICdWaWV0bmFtZXNlJywgbmF0aXZlTmFtZTogJ1Rp4bq/bmcgVmnhu4d0Jywga2V5OiAndmknIH0sXG4gICAgeyBuYW1lOiAnVm9sYXDDvGsnLCBuYXRpdmVOYW1lOiAnVm9sYXDDvGsnLCBrZXk6ICd2bycgfSxcbiAgICB7IG5hbWU6ICdXYWxsb29uJywgbmF0aXZlTmFtZTogJ1dhbG9uJywga2V5OiAnd2EnIH0sXG4gICAgeyBuYW1lOiAnV2Vsc2gnLCBuYXRpdmVOYW1lOiAnQ3ltcmFlZycsIGtleTogJ2N5JyB9LFxuICAgIHsgbmFtZTogJ1dvbG9mJywgbmF0aXZlTmFtZTogJ1dvbGxvZicsIGtleTogJ3dvJyB9LFxuICAgIHsgbmFtZTogJ1dlc3Rlcm4gRnJpc2lhbicsIG5hdGl2ZU5hbWU6ICdGcnlzaycsIGtleTogJ2Z5JyB9LFxuICAgIHsgbmFtZTogJ1hob3NhJywgbmF0aXZlTmFtZTogJ2lzaVhob3NhJywga2V5OiAneGgnIH0sXG4gICAgeyBuYW1lOiAnWWlkZGlzaCcsIG5hdGl2ZU5hbWU6ICfXmdeZ1rTXk9eZ16knLCBrZXk6ICd5aScgfSxcbiAgICB7IG5hbWU6ICdZb3J1YmEnLCBuYXRpdmVOYW1lOiAnWW9yw7liw6EnLCBrZXk6ICd5bycgfSxcbiAgICB7IG5hbWU6ICdaaHVhbmcsIENodWFuZycsIG5hdGl2ZU5hbWU6ICdTYcmvIGN1ZcWLxoUsIFNhdyBjdWVuZ2gnLCBrZXk6ICd6YScgfSxcbiAgXTtcbiAgY29uc3QgbGFuZ3VhZ2VTdXBwb3J0RGF0YTogQXJyYXk8dW5rbm93bj4gPSBbXTtcbiAgbGFuZ3VhZ2VTdXBwb3J0KCkuZm9yRWFjaCgoa2V5OiBzdHJpbmcpID0+IHtcbiAgICBjb25zdCBmb3VuZCA9IGRhdGEuZmluZCgoaXRlbSkgPT4gaXRlbS5rZXkgPT09IGtleSk7XG4gICAgaWYgKGZvdW5kKSB7XG4gICAgICBsYW5ndWFnZVN1cHBvcnREYXRhLnB1c2goZm91bmQpO1xuICAgIH1cbiAgfSk7XG4gIHJldHVybiBjb252ZXJ0T2JqZWN0T2ZBcnJheShvYmplY3RQYXR0ZXJuLCBsYW5ndWFnZVN1cHBvcnREYXRhKSBhcyBBcnJheTxJT3B0aW9uPjtcbn07XG5cbmV4cG9ydCBjb25zdCBjb252ZXJ0T2JqZWN0T2ZBcnJheSA9IChvYmplY3RQYXR0ZXJuOiB1bmtub3duLCBkYXRhOiBBcnJheTx1bmtub3duPikgPT4ge1xuICBpZiAoIW9iamVjdFBhdHRlcm4gfHwgIU9iamVjdC5rZXlzKG9iamVjdFBhdHRlcm4pLmxlbmd0aCkge1xuICAgIHJldHVybiBkYXRhO1xuICB9XG4gIHJldHVybiBkYXRhLm1hcCgoaXRlbSkgPT4ge1xuICAgIHJldHVybiBjb252ZXJ0T2JqZWN0KG9iamVjdFBhdHRlcm4sIGl0ZW0pO1xuICB9KTtcbn07XG5cbmNvbnN0IGNvbnZlcnRPYmplY3QgPSAob2JqZWN0UGF0dGVybjogdW5rbm93biwgZGF0YTogdW5rbm93bikgPT4ge1xuICAvLyBk4buvIGxp4buHdSDEkeG6p3UgdsOgbyBsw6Agb2JqZWN0XG4gIGlmICghb2JqZWN0UGF0dGVybiB8fCAhT2JqZWN0LmtleXMob2JqZWN0UGF0dGVybikubGVuZ3RoKSB7XG4gICAgcmV0dXJuIGRhdGE7XG4gIH1cbiAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKG9iamVjdFBhdHRlcm4pO1xuICBjb25zdCBvYmplY3RDb252ZXJ0OiB1bmtub3duID0ge307XG4gIGtleXMuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgY29uc3QgdmFsS2V5ID0gZ2V0PGFueT4ob2JqZWN0UGF0dGVybiwga2V5KTtcbiAgICBpZiAoIXZhbEtleSB8fCAhKHR5cGVvZiB2YWxLZXkgPT09ICdzdHJpbmcnKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBrZXlzT2JqZWN0OiBBcnJheTxzdHJpbmc+ID0gdmFsS2V5LnNwbGl0KCcuJyk7XG4gICAgY29uc3QgdmFsdWUgPSBnZXREYXRhT2JqZWN0KGtleXNPYmplY3QsIGRhdGEpO1xuICAgIHNldDxhbnk+KG9iamVjdENvbnZlcnQsIGtleSwgdmFsdWUpO1xuICB9KTtcbiAgcmV0dXJuIG9iamVjdENvbnZlcnQ7XG59O1xuXG5jb25zdCBnZXREYXRhT2JqZWN0ID0gKGtleXNPYmplY3Q6IEFycmF5PHN0cmluZz4sIG9iamVjdDogdW5rbm93bikgPT4ge1xuICBsZXQgdmFsdWUgPSBvYmplY3Q7XG4gIGNvbnN0IGxlbmd0aCA9IGtleXNPYmplY3QubGVuZ3RoO1xuICBmb3IgKGxldCBpID0gMDsgaSA8IGxlbmd0aDsgaSsrKSB7XG4gICAgY29uc3Qga2V5ID0ga2V5c09iamVjdFtpXTtcbiAgICBpZiAoIWtleSkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gICAgY29uc3QgdmFsdWVLZXkgPSBnZXQodmFsdWUsIGtleSk7XG4gICAgaWYgKCF2YWx1ZUtleSkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gICAgdmFsdWUgPSB2YWx1ZUtleTtcbiAgfVxuICByZXR1cm4gdmFsdWU7XG59O1xuXG5leHBvcnQgY29uc3QgaHR0cFJlcXVlc3REZXRhaWwgPSAob3B0aW9uczogQXJyYXk8eyBsYWJlbDogc3RyaW5nOyBrZXk6IHN0cmluZyB9Pik6IElIdHRwUmVxdWVzdENvbmZpZyA9PiB7XG4gIHJldHVybiB7XG4gICAgb2JqZWN0SW5zdGFuY2U6IHJldHVybkRldGFpbE9iamVjdChuZXcgSHR0cFBhcmFtcyh7IGZyb21PYmplY3Q6IHsgZmllbGRLZXk6ICdrZXknIH0gfSksIG9wdGlvbnMpLFxuICAgIGZ1bmN0aW9uTmFtZTogJ2RldGFpbEJ5RGF0YScsXG4gICAgYXJndW1lbnRzVmFsdWU6IFsnJ10sXG4gICAgZ3VpZGVBdXRvVXBkYXRlQXJndW1lbnRzVmFsdWU6IHtcbiAgICAgIHBhZ2luZzoge30sXG4gICAgICBkZXRhaWxCeUlkOiB7XG4gICAgICAgIGZpZWxkVXBkYXRlOiAnWzBdJyxcbiAgICAgICAgZmllbGRHZXRWYWx1ZTogJycsXG4gICAgICB9LFxuICAgIH0sXG4gIH07XG59O1xuXG5leHBvcnQgY29uc3QgbGlzdENvbmZpZ0l0ZW0gPSAob3B0aW9uczogQXJyYXk8eyBsYWJlbDogc3RyaW5nOyBrZXk6IHN0cmluZyB9Pik6IElMaXN0Q29uZmlnSXRlbSA9PiB7XG4gIHJldHVybiB7XG4gICAgdHlwZTogJ3RleHQnLFxuICAgIGh0dHBSZXF1ZXN0RGF0YTogc2lnbmFsPElIdHRwUmVxdWVzdENvbmZpZz4oe1xuICAgICAgb2JqZWN0SW5zdGFuY2U6IHJldHVybkxpc3RPYmplY3Qob3B0aW9ucyksXG4gICAgICBmdW5jdGlvbk5hbWU6ICdsaXN0JyxcbiAgICAgIGFyZ3VtZW50c1ZhbHVlOiBbJyddLFxuICAgIH0pLFxuICAgIGNvbmZpZ1RlbXBsYXRlVGV4dDogc2lnbmFsKHtcbiAgICAgIGZpZWxkS2V5OiAna2V5JyxcbiAgICAgIGdldFZhbHVlOiAoaXRlbSkgPT4gYCR7aXRlbS5sYWJlbH1gLFxuICAgIH0pLFxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IHZhbGlkUmVxdWlyZWQgPSAoKTogSVZhbGlkUmVxdWlyZWQgPT4ge1xuICByZXR1cm4ge1xuICAgIG1lc3NhZ2U6ICcnLFxuICAgIGlzUmVxdWlyZWQ6IGZhbHNlLFxuICB9O1xufTtcbiJdfQ==
|