limitng 0.18.51 → 0.18.52
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/api/globalfunctions.d.ts +1 -1
- package/api/globalfunctions.d.ts.map +1 -1
- package/esm2022/alt-buyuk-kart/alt-buyuk-kart.component.mjs +3 -3
- package/esm2022/alt-kucuk-kart/alt-kucuk-kart.component.mjs +3 -3
- package/esm2022/api/globalfunctions.mjs +1 -1
- package/esm2022/dikey-baslikli-panel/dikey-baslikli-panel.component.mjs +3 -3
- package/esm2022/filtre-bar/filtre-bar.component.mjs +3 -3
- package/esm2022/geri-ileri-detay/geri-ileri-detay.component.mjs +4 -4
- package/esm2022/geri-ileri-liste/geri-ileri-liste.component.mjs +4 -4
- package/esm2022/sol-buyuk-kart/sol-buyuk-kart.component.mjs +3 -3
- package/esm2022/sol-kucuk-kart/sol-kucuk-kart.component.mjs +3 -3
- package/fesm2022/limitng-alt-buyuk-kart.mjs +3 -3
- package/fesm2022/limitng-alt-kucuk-kart.mjs +3 -3
- package/fesm2022/limitng-api.mjs.map +1 -1
- package/fesm2022/limitng-dikey-baslikli-panel.mjs +3 -3
- package/fesm2022/limitng-filtre-bar.mjs +3 -3
- package/fesm2022/limitng-geri-ileri-detay.mjs +3 -3
- package/fesm2022/limitng-geri-ileri-detay.mjs.map +1 -1
- package/fesm2022/limitng-geri-ileri-liste.mjs +3 -3
- package/fesm2022/limitng-geri-ileri-liste.mjs.map +1 -1
- package/fesm2022/limitng-sol-buyuk-kart.mjs +3 -3
- package/fesm2022/limitng-sol-kucuk-kart.mjs +3 -3
- package/package.json +124 -124
- package/api/models/bildirimler/bildirimler.d.ts +0 -31
- package/api/models/bildirimler/bildirimler.d.ts.map +0 -1
- package/api/models/bildirimler/index.d.ts +0 -6
- package/api/models/bildirimler/limitng-api-models-bildirimler.d.ts.map +0 -1
- package/api/models/bildirimler/public_api.d.ts +0 -2
- package/api/models/bildirimler/public_api.d.ts.map +0 -1
- package/api/models/fourDConstants/fourDConstants.d.ts +0 -87
- package/api/models/fourDConstants/fourDConstants.d.ts.map +0 -1
- package/api/models/fourDConstants/index.d.ts +0 -6
- package/api/models/fourDConstants/limitng-api-models-fourDConstants.d.ts.map +0 -1
- package/api/models/fourDConstants/public_api.d.ts +0 -2
- package/api/models/fourDConstants/public_api.d.ts.map +0 -1
- package/api/models/index.d.ts +0 -6
- package/api/models/kisisel/index.d.ts +0 -6
- package/api/models/kisisel/izinislemleri/index.d.ts +0 -6
- package/api/models/kisisel/izinislemleri/izindetaylari/index.d.ts +0 -6
- package/api/models/kisisel/izinislemleri/izindetaylari/izinDetaylari.d.ts +0 -25
- package/api/models/kisisel/izinislemleri/izindetaylari/izinDetaylari.d.ts.map +0 -1
- package/api/models/kisisel/izinislemleri/izindetaylari/limitng-api-models-kisisel-izinislemleri-izindetaylari.d.ts.map +0 -1
- package/api/models/kisisel/izinislemleri/izindetaylari/public_api.d.ts +0 -2
- package/api/models/kisisel/izinislemleri/izindetaylari/public_api.d.ts.map +0 -1
- package/api/models/kisisel/izinislemleri/izinfiltre/index.d.ts +0 -6
- package/api/models/kisisel/izinislemleri/izinfiltre/izinFiltre.d.ts +0 -11
- package/api/models/kisisel/izinislemleri/izinfiltre/izinFiltre.d.ts.map +0 -1
- package/api/models/kisisel/izinislemleri/izinfiltre/limitng-api-models-kisisel-izinislemleri-izinfiltre.d.ts.map +0 -1
- package/api/models/kisisel/izinislemleri/izinfiltre/public_api.d.ts +0 -2
- package/api/models/kisisel/izinislemleri/izinfiltre/public_api.d.ts.map +0 -1
- package/api/models/kisisel/izinislemleri/izinguncelle/index.d.ts +0 -6
- package/api/models/kisisel/izinislemleri/izinguncelle/izinGuncelle.d.ts +0 -6
- package/api/models/kisisel/izinislemleri/izinguncelle/izinGuncelle.d.ts.map +0 -1
- package/api/models/kisisel/izinislemleri/izinguncelle/limitng-api-models-kisisel-izinislemleri-izinguncelle.d.ts.map +0 -1
- package/api/models/kisisel/izinislemleri/izinguncelle/public_api.d.ts +0 -2
- package/api/models/kisisel/izinislemleri/izinguncelle/public_api.d.ts.map +0 -1
- package/api/models/kisisel/izinislemleri/izinliste/index.d.ts +0 -6
- package/api/models/kisisel/izinislemleri/izinliste/izinListe.d.ts +0 -27
- package/api/models/kisisel/izinislemleri/izinliste/izinListe.d.ts.map +0 -1
- package/api/models/kisisel/izinislemleri/izinliste/limitng-api-models-kisisel-izinislemleri-izinliste.d.ts.map +0 -1
- package/api/models/kisisel/izinislemleri/izinliste/public_api.d.ts +0 -2
- package/api/models/kisisel/izinislemleri/izinliste/public_api.d.ts.map +0 -1
- package/api/models/kisisel/izinislemleri/limitng-api-models-kisisel-izinislemleri.d.ts.map +0 -1
- package/api/models/kisisel/izinislemleri/public_api.d.ts +0 -3
- package/api/models/kisisel/izinislemleri/public_api.d.ts.map +0 -1
- package/api/models/kisisel/limitng-api-models-kisisel.d.ts.map +0 -1
- package/api/models/kisisel/masrafislemleri/index.d.ts +0 -6
- package/api/models/kisisel/masrafislemleri/limitng-api-models-kisisel-masrafislemleri.d.ts.map +0 -1
- package/api/models/kisisel/masrafislemleri/masrafdetaylari/index.d.ts +0 -6
- package/api/models/kisisel/masrafislemleri/masrafdetaylari/limitng-api-models-kisisel-masrafislemleri-masrafdetaylari.d.ts.map +0 -1
- package/api/models/kisisel/masrafislemleri/masrafdetaylari/masrafDetaylari.d.ts +0 -60
- package/api/models/kisisel/masrafislemleri/masrafdetaylari/masrafDetaylari.d.ts.map +0 -1
- package/api/models/kisisel/masrafislemleri/masrafdetaylari/public_api.d.ts +0 -2
- package/api/models/kisisel/masrafislemleri/masrafdetaylari/public_api.d.ts.map +0 -1
- package/api/models/kisisel/masrafislemleri/masraffiltre/index.d.ts +0 -6
- package/api/models/kisisel/masrafislemleri/masraffiltre/limitng-api-models-kisisel-masrafislemleri-masraffiltre.d.ts.map +0 -1
- package/api/models/kisisel/masrafislemleri/masraffiltre/masrafFiltre.d.ts +0 -12
- package/api/models/kisisel/masrafislemleri/masraffiltre/masrafFiltre.d.ts.map +0 -1
- package/api/models/kisisel/masrafislemleri/masraffiltre/public_api.d.ts +0 -2
- package/api/models/kisisel/masrafislemleri/masraffiltre/public_api.d.ts.map +0 -1
- package/api/models/kisisel/masrafislemleri/masrafguncelle/index.d.ts +0 -6
- package/api/models/kisisel/masrafislemleri/masrafguncelle/limitng-api-models-kisisel-masrafislemleri-masrafguncelle.d.ts.map +0 -1
- package/api/models/kisisel/masrafislemleri/masrafguncelle/masrafGuncelle.d.ts +0 -7
- package/api/models/kisisel/masrafislemleri/masrafguncelle/masrafGuncelle.d.ts.map +0 -1
- package/api/models/kisisel/masrafislemleri/masrafguncelle/public_api.d.ts +0 -2
- package/api/models/kisisel/masrafislemleri/masrafguncelle/public_api.d.ts.map +0 -1
- package/api/models/kisisel/masrafislemleri/masrafliste/index.d.ts +0 -6
- package/api/models/kisisel/masrafislemleri/masrafliste/limitng-api-models-kisisel-masrafislemleri-masrafliste.d.ts.map +0 -1
- package/api/models/kisisel/masrafislemleri/masrafliste/masrafListe.d.ts +0 -82
- package/api/models/kisisel/masrafislemleri/masrafliste/masrafListe.d.ts.map +0 -1
- package/api/models/kisisel/masrafislemleri/masrafliste/public_api.d.ts +0 -2
- package/api/models/kisisel/masrafislemleri/masrafliste/public_api.d.ts.map +0 -1
- package/api/models/kisisel/masrafislemleri/public_api.d.ts +0 -3
- package/api/models/kisisel/masrafislemleri/public_api.d.ts.map +0 -1
- package/api/models/kisisel/onayislemleri/index.d.ts +0 -6
- package/api/models/kisisel/onayislemleri/limitng-api-models-kisisel-onayislemleri.d.ts.map +0 -1
- package/api/models/kisisel/onayislemleri/onaydetaylari/index.d.ts +0 -6
- package/api/models/kisisel/onayislemleri/onaydetaylari/limitng-api-models-kisisel-onayislemleri-onaydetaylari.d.ts.map +0 -1
- package/api/models/kisisel/onayislemleri/onaydetaylari/onayDetaylari.d.ts +0 -83
- package/api/models/kisisel/onayislemleri/onaydetaylari/onayDetaylari.d.ts.map +0 -1
- package/api/models/kisisel/onayislemleri/onaydetaylari/public_api.d.ts +0 -2
- package/api/models/kisisel/onayislemleri/onaydetaylari/public_api.d.ts.map +0 -1
- package/api/models/kisisel/onayislemleri/onayfiltre/index.d.ts +0 -6
- package/api/models/kisisel/onayislemleri/onayfiltre/limitng-api-models-kisisel-onayislemleri-onayfiltre.d.ts.map +0 -1
- package/api/models/kisisel/onayislemleri/onayfiltre/onayFiltre.d.ts +0 -31
- package/api/models/kisisel/onayislemleri/onayfiltre/onayFiltre.d.ts.map +0 -1
- package/api/models/kisisel/onayislemleri/onayfiltre/public_api.d.ts +0 -2
- package/api/models/kisisel/onayislemleri/onayfiltre/public_api.d.ts.map +0 -1
- package/api/models/kisisel/onayislemleri/onayguncelle/index.d.ts +0 -6
- package/api/models/kisisel/onayislemleri/onayguncelle/limitng-api-models-kisisel-onayislemleri-onayguncelle.d.ts.map +0 -1
- package/api/models/kisisel/onayislemleri/onayguncelle/onayGuncelle.d.ts +0 -8
- package/api/models/kisisel/onayislemleri/onayguncelle/onayGuncelle.d.ts.map +0 -1
- package/api/models/kisisel/onayislemleri/onayguncelle/public_api.d.ts +0 -2
- package/api/models/kisisel/onayislemleri/onayguncelle/public_api.d.ts.map +0 -1
- package/api/models/kisisel/onayislemleri/onayliste/index.d.ts +0 -6
- package/api/models/kisisel/onayislemleri/onayliste/limitng-api-models-kisisel-onayislemleri-onayliste.d.ts.map +0 -1
- package/api/models/kisisel/onayislemleri/onayliste/onayListe.d.ts +0 -32
- package/api/models/kisisel/onayislemleri/onayliste/onayListe.d.ts.map +0 -1
- package/api/models/kisisel/onayislemleri/onayliste/public_api.d.ts +0 -2
- package/api/models/kisisel/onayislemleri/onayliste/public_api.d.ts.map +0 -1
- package/api/models/kisisel/onayislemleri/public_api.d.ts +0 -3
- package/api/models/kisisel/onayislemleri/public_api.d.ts.map +0 -1
- package/api/models/kisisel/public_api.d.ts +0 -3
- package/api/models/kisisel/public_api.d.ts.map +0 -1
- package/api/models/limitng-api-models.d.ts.map +0 -1
- package/api/models/logbook/index.d.ts +0 -6
- package/api/models/logbook/limitng-api-models-logbook.d.ts.map +0 -1
- package/api/models/logbook/logbook.d.ts +0 -104
- package/api/models/logbook/logbook.d.ts.map +0 -1
- package/api/models/logbook/public_api.d.ts +0 -2
- package/api/models/logbook/public_api.d.ts.map +0 -1
- package/api/models/login/index.d.ts +0 -6
- package/api/models/login/limitng-api-models-login.d.ts.map +0 -1
- package/api/models/login/login.d.ts +0 -63
- package/api/models/login/login.d.ts.map +0 -1
- package/api/models/login/public_api.d.ts +0 -2
- package/api/models/login/public_api.d.ts.map +0 -1
- package/api/models/onay/index.d.ts +0 -6
- package/api/models/onay/limitng-api-models-onay.d.ts.map +0 -1
- package/api/models/onay/onayagonderdetaylari/index.d.ts +0 -6
- package/api/models/onay/onayagonderdetaylari/limitng-api-models-onay-onayagonderdetaylari.d.ts.map +0 -1
- package/api/models/onay/onayagonderdetaylari/onayaGonderDetaylar.d.ts +0 -64
- package/api/models/onay/onayagonderdetaylari/onayaGonderDetaylar.d.ts.map +0 -1
- package/api/models/onay/onayagonderdetaylari/public_api.d.ts +0 -2
- package/api/models/onay/onayagonderdetaylari/public_api.d.ts.map +0 -1
- package/api/models/onay/onaybilgi/index.d.ts +0 -6
- package/api/models/onay/onaybilgi/limitng-api-models-onay-onaybilgi.d.ts.map +0 -1
- package/api/models/onay/onaybilgi/onayBilgi.d.ts +0 -4
- package/api/models/onay/onaybilgi/onayBilgi.d.ts.map +0 -1
- package/api/models/onay/onaybilgi/public_api.d.ts +0 -2
- package/api/models/onay/onaybilgi/public_api.d.ts.map +0 -1
- package/api/models/onay/public_api.d.ts +0 -3
- package/api/models/onay/public_api.d.ts.map +0 -1
- package/api/models/ortak/index.d.ts +0 -6
- package/api/models/ortak/limitng-api-models-ortak.d.ts.map +0 -1
- package/api/models/ortak/ortak.d.ts +0 -231
- package/api/models/ortak/ortak.d.ts.map +0 -1
- package/api/models/ortak/public_api.d.ts +0 -2
- package/api/models/ortak/public_api.d.ts.map +0 -1
- package/api/models/ozet/index.d.ts +0 -6
- package/api/models/ozet/limitng-api-models-ozet.d.ts.map +0 -1
- package/api/models/ozet/ozetdata/index.d.ts +0 -6
- package/api/models/ozet/ozetdata/limitng-api-models-ozet-ozetdata.d.ts.map +0 -1
- package/api/models/ozet/ozetdata/ozetData.d.ts +0 -22
- package/api/models/ozet/ozetdata/ozetData.d.ts.map +0 -1
- package/api/models/ozet/ozetdata/public_api.d.ts +0 -2
- package/api/models/ozet/ozetdata/public_api.d.ts.map +0 -1
- package/api/models/ozet/ozetkartalan/index.d.ts +0 -6
- package/api/models/ozet/ozetkartalan/limitng-api-models-ozet-ozetkartalan.d.ts.map +0 -1
- package/api/models/ozet/ozetkartalan/ozetKartAlan.d.ts +0 -14
- package/api/models/ozet/ozetkartalan/ozetKartAlan.d.ts.map +0 -1
- package/api/models/ozet/ozetkartalan/public_api.d.ts +0 -2
- package/api/models/ozet/ozetkartalan/public_api.d.ts.map +0 -1
- package/api/models/ozet/public_api.d.ts +0 -3
- package/api/models/ozet/public_api.d.ts.map +0 -1
- package/api/models/public_api.d.ts +0 -3
- package/api/models/public_api.d.ts.map +0 -1
- package/api/models/raporlar/index.d.ts +0 -6
- package/api/models/raporlar/izinraporu/index.d.ts +0 -6
- package/api/models/raporlar/izinraporu/izinrapordetaylari/index.d.ts +0 -6
- package/api/models/raporlar/izinraporu/izinrapordetaylari/izinRaporDetaylari.d.ts +0 -15
- package/api/models/raporlar/izinraporu/izinrapordetaylari/izinRaporDetaylari.d.ts.map +0 -1
- package/api/models/raporlar/izinraporu/izinrapordetaylari/limitng-api-models-raporlar-izinraporu-izinrapordetaylari.d.ts.map +0 -1
- package/api/models/raporlar/izinraporu/izinrapordetaylari/public_api.d.ts +0 -2
- package/api/models/raporlar/izinraporu/izinrapordetaylari/public_api.d.ts.map +0 -1
- package/api/models/raporlar/izinraporu/izinraporliste/index.d.ts +0 -6
- package/api/models/raporlar/izinraporu/izinraporliste/izinRaporListe.d.ts +0 -17
- package/api/models/raporlar/izinraporu/izinraporliste/izinRaporListe.d.ts.map +0 -1
- package/api/models/raporlar/izinraporu/izinraporliste/limitng-api-models-raporlar-izinraporu-izinraporliste.d.ts.map +0 -1
- package/api/models/raporlar/izinraporu/izinraporliste/public_api.d.ts +0 -2
- package/api/models/raporlar/izinraporu/izinraporliste/public_api.d.ts.map +0 -1
- package/api/models/raporlar/izinraporu/limitng-api-models-raporlar-izinraporu.d.ts.map +0 -1
- package/api/models/raporlar/izinraporu/public_api.d.ts +0 -3
- package/api/models/raporlar/izinraporu/public_api.d.ts.map +0 -1
- package/api/models/raporlar/limitng-api-models-raporlar.d.ts.map +0 -1
- package/api/models/raporlar/listedensec/index.d.ts +0 -6
- package/api/models/raporlar/listedensec/limitng-api-models-raporlar-listedensec.d.ts.map +0 -1
- package/api/models/raporlar/listedensec/listeSecenekler.d.ts +0 -23
- package/api/models/raporlar/listedensec/listeSecenekler.d.ts.map +0 -1
- package/api/models/raporlar/listedensec/public_api.d.ts +0 -2
- package/api/models/raporlar/listedensec/public_api.d.ts.map +0 -1
- package/api/models/raporlar/public_api.d.ts +0 -3
- package/api/models/raporlar/public_api.d.ts.map +0 -1
- package/api/models/raporlar/rapordetaylari/index.d.ts +0 -6
- package/api/models/raporlar/rapordetaylari/limitng-api-models-raporlar-rapordetaylari.d.ts.map +0 -1
- package/api/models/raporlar/rapordetaylari/public_api.d.ts +0 -2
- package/api/models/raporlar/rapordetaylari/public_api.d.ts.map +0 -1
- package/api/models/raporlar/rapordetaylari/raporDetaylari.d.ts +0 -53
- package/api/models/raporlar/rapordetaylari/raporDetaylari.d.ts.map +0 -1
- package/api/models/raporlar/raporzamanlama/index.d.ts +0 -6
- package/api/models/raporlar/raporzamanlama/limitng-api-models-raporlar-raporzamanlama.d.ts.map +0 -1
- package/api/models/raporlar/raporzamanlama/public_api.d.ts +0 -2
- package/api/models/raporlar/raporzamanlama/public_api.d.ts.map +0 -1
- package/api/models/raporlar/raporzamanlama/zamanlamaAyarlari.d.ts +0 -46
- package/api/models/raporlar/raporzamanlama/zamanlamaAyarlari.d.ts.map +0 -1
- package/api/models/sistemozet/index.d.ts +0 -6
- package/api/models/sistemozet/limitng-api-models-sistemozet.d.ts.map +0 -1
- package/api/models/sistemozet/public_api.d.ts +0 -2
- package/api/models/sistemozet/public_api.d.ts.map +0 -1
- package/api/models/sistemozet/sistemOzet.d.ts +0 -169
- package/api/models/sistemozet/sistemOzet.d.ts.map +0 -1
- package/api/models/sistemraporlari/index.d.ts +0 -6
- package/api/models/sistemraporlari/limitng-api-models-sistemraporlari.d.ts.map +0 -1
- package/api/models/sistemraporlari/public_api.d.ts +0 -2
- package/api/models/sistemraporlari/public_api.d.ts.map +0 -1
- package/api/models/sistemraporlari/sistemRaporlari.d.ts +0 -11
- package/api/models/sistemraporlari/sistemRaporlari.d.ts.map +0 -1
- package/api/models/timeSheet/index.d.ts +0 -6
- package/api/models/timeSheet/limitng-api-models-timeSheet.d.ts.map +0 -1
- package/api/models/timeSheet/public_api.d.ts +0 -3
- package/api/models/timeSheet/public_api.d.ts.map +0 -1
- package/api/models/timeSheet/timeSheetGirisListeler/index.d.ts +0 -6
- package/api/models/timeSheet/timeSheetGirisListeler/limitng-api-models-timeSheet-timeSheetGirisListeler.d.ts.map +0 -1
- package/api/models/timeSheet/timeSheetGirisListeler/public_api.d.ts +0 -2
- package/api/models/timeSheet/timeSheetGirisListeler/public_api.d.ts.map +0 -1
- package/api/models/timeSheet/timeSheetGirisListeler/timeSheetGirisListeler.d.ts +0 -322
- package/api/models/timeSheet/timeSheetGirisListeler/timeSheetGirisListeler.d.ts.map +0 -1
- package/api/models/timeSheet/timeSheetLog/index.d.ts +0 -6
- package/api/models/timeSheet/timeSheetLog/limitng-api-models-timeSheet-timeSheetLog.d.ts.map +0 -1
- package/api/models/timeSheet/timeSheetLog/public_api.d.ts +0 -2
- package/api/models/timeSheet/timeSheetLog/public_api.d.ts.map +0 -1
- package/api/models/timeSheet/timeSheetLog/timeSheetLog.d.ts +0 -15
- package/api/models/timeSheet/timeSheetLog/timeSheetLog.d.ts.map +0 -1
- package/api/models/timeSheet/timeSheetOzetListe/index.d.ts +0 -6
- package/api/models/timeSheet/timeSheetOzetListe/limitng-api-models-timeSheet-timeSheetOzetListe.d.ts.map +0 -1
- package/api/models/timeSheet/timeSheetOzetListe/public_api.d.ts +0 -2
- package/api/models/timeSheet/timeSheetOzetListe/public_api.d.ts.map +0 -1
- package/api/models/timeSheet/timeSheetOzetListe/timeSheetOzetListe.d.ts +0 -19
- package/api/models/timeSheet/timeSheetOzetListe/timeSheetOzetListe.d.ts.map +0 -1
- package/api/models/timeSheet/timeSheetSecenekler/index.d.ts +0 -6
- package/api/models/timeSheet/timeSheetSecenekler/limitng-api-models-timeSheet-timeSheetSecenekler.d.ts.map +0 -1
- package/api/models/timeSheet/timeSheetSecenekler/public_api.d.ts +0 -2
- package/api/models/timeSheet/timeSheetSecenekler/public_api.d.ts.map +0 -1
- package/api/models/timeSheet/timeSheetSecenekler/timeSheetSecenekler.d.ts +0 -29
- package/api/models/timeSheet/timeSheetSecenekler/timeSheetSecenekler.d.ts.map +0 -1
- package/api/models/xl/index.d.ts +0 -6
- package/api/models/xl/limitng-api-models-xl.d.ts.map +0 -1
- package/api/models/xl/public_api.d.ts +0 -3
- package/api/models/xl/public_api.d.ts.map +0 -1
- package/api/models/xl/xlConfig/index.d.ts +0 -6
- package/api/models/xl/xlConfig/limitng-api-models-xl-xlConfig.d.ts.map +0 -1
- package/api/models/xl/xlConfig/public_api.d.ts +0 -2
- package/api/models/xl/xlConfig/public_api.d.ts.map +0 -1
- package/api/models/xl/xlConfig/xlConfig.d.ts +0 -196
- package/api/models/xl/xlConfig/xlConfig.d.ts.map +0 -1
- package/api/models/xl/xlConstants/index.d.ts +0 -6
- package/api/models/xl/xlConstants/limitng-api-models-xl-xlConstants.d.ts.map +0 -1
- package/api/models/xl/xlConstants/public_api.d.ts +0 -2
- package/api/models/xl/xlConstants/public_api.d.ts.map +0 -1
- package/api/models/xl/xlConstants/xlConstants.d.ts +0 -60
- package/api/models/xl/xlConstants/xlConstants.d.ts.map +0 -1
- package/api/models/xl/xlOptions/index.d.ts +0 -6
- package/api/models/xl/xlOptions/limitng-api-models-xl-xlOptions.d.ts.map +0 -1
- package/api/models/xl/xlOptions/public_api.d.ts +0 -2
- package/api/models/xl/xlOptions/public_api.d.ts.map +0 -1
- package/api/models/xl/xlOptions/xlOptions.d.ts +0 -27
- package/api/models/xl/xlOptions/xlOptions.d.ts.map +0 -1
- package/api/models/xl/xlTools/index.d.ts +0 -6
- package/api/models/xl/xlTools/limitng-api-models-xl-xlTools.d.ts.map +0 -1
- package/api/models/xl/xlTools/public_api.d.ts +0 -2
- package/api/models/xl/xlTools/public_api.d.ts.map +0 -1
- package/api/models/xl/xlTools/xlTools.d.ts +0 -3
- package/api/models/xl/xlTools/xlTools.d.ts.map +0 -1
- package/dikey-baslikli-panel-sol/dikey-baslikli-panel-sol.component.d.ts +0 -10
- package/dikey-baslikli-panel-sol/dikey-baslikli-panel-sol.component.d.ts.map +0 -1
- package/dikey-baslikli-panel-sol/index.d.ts +0 -6
- package/dikey-baslikli-panel-sol/limitng-dikey-baslikli-panel-sol.d.ts.map +0 -1
- package/dikey-baslikli-panel-sol/public_api.d.ts +0 -2
- package/dikey-baslikli-panel-sol/public_api.d.ts.map +0 -1
- package/directives/adAlani.directive/adAlani.directive.d.ts +0 -26
- package/directives/adAlani.directive/adAlani.directive.d.ts.map +0 -1
- package/directives/adAlani.directive/index.d.ts +0 -6
- package/directives/adAlani.directive/limitng-directives-adAlani.directive.d.ts.map +0 -1
- package/directives/adAlani.directive/public_api.d.ts +0 -2
- package/directives/adAlani.directive/public_api.d.ts.map +0 -1
- package/directives/adresAlani.directive/adresAlani.directive.d.ts +0 -26
- package/directives/adresAlani.directive/adresAlani.directive.d.ts.map +0 -1
- package/directives/adresAlani.directive/index.d.ts +0 -6
- package/directives/adresAlani.directive/limitng-directives-adresAlani.directive.d.ts.map +0 -1
- package/directives/adresAlani.directive/public_api.d.ts +0 -2
- package/directives/adresAlani.directive/public_api.d.ts.map +0 -1
- package/directives/buyukHarf.directive/buyukHarf.directive.d.ts +0 -24
- package/directives/buyukHarf.directive/buyukHarf.directive.d.ts.map +0 -1
- package/directives/buyukHarf.directive/index.d.ts +0 -6
- package/directives/buyukHarf.directive/limitng-directives-buyukHarf.directive.d.ts.map +0 -1
- package/directives/buyukHarf.directive/public_api.d.ts +0 -2
- package/directives/buyukHarf.directive/public_api.d.ts.map +0 -1
- package/directives/ciftBoslukTek.directive/ciftBoslukTek.directive.d.ts +0 -24
- package/directives/ciftBoslukTek.directive/ciftBoslukTek.directive.d.ts.map +0 -1
- package/directives/ciftBoslukTek.directive/index.d.ts +0 -6
- package/directives/ciftBoslukTek.directive/limitng-directives-ciftBoslukTek.directive.d.ts.map +0 -1
- package/directives/ciftBoslukTek.directive/public_api.d.ts +0 -2
- package/directives/ciftBoslukTek.directive/public_api.d.ts.map +0 -1
- package/directives/dirty.directive/dirty.directive.d.ts +0 -11
- package/directives/dirty.directive/dirty.directive.d.ts.map +0 -1
- package/directives/dirty.directive/index.d.ts +0 -6
- package/directives/dirty.directive/limitng-directives-dirty.directive.d.ts.map +0 -1
- package/directives/dirty.directive/public_api.d.ts +0 -2
- package/directives/dirty.directive/public_api.d.ts.map +0 -1
- package/directives/disable.directive/disable.directive.d.ts +0 -30
- package/directives/disable.directive/disable.directive.d.ts.map +0 -1
- package/directives/disable.directive/index.d.ts +0 -6
- package/directives/disable.directive/limitng-directives-disable.directive.d.ts.map +0 -1
- package/directives/disable.directive/public_api.d.ts +0 -2
- package/directives/disable.directive/public_api.d.ts.map +0 -1
- package/directives/flexBasis.directive/flexBasis.directive.d.ts +0 -32
- package/directives/flexBasis.directive/flexBasis.directive.d.ts.map +0 -1
- package/directives/flexBasis.directive/index.d.ts +0 -6
- package/directives/flexBasis.directive/limitng-directives-flexBasis.directive.d.ts.map +0 -1
- package/directives/flexBasis.directive/public_api.d.ts +0 -2
- package/directives/flexBasis.directive/public_api.d.ts.map +0 -1
- package/directives/ilkHarfBuyuk.directive/ilkHarfBuyuk.directive.d.ts +0 -24
- package/directives/ilkHarfBuyuk.directive/ilkHarfBuyuk.directive.d.ts.map +0 -1
- package/directives/ilkHarfBuyuk.directive/index.d.ts +0 -6
- package/directives/ilkHarfBuyuk.directive/limitng-directives-ilkHarfBuyuk.directive.d.ts.map +0 -1
- package/directives/ilkHarfBuyuk.directive/public_api.d.ts +0 -2
- package/directives/ilkHarfBuyuk.directive/public_api.d.ts.map +0 -1
- package/directives/index.d.ts +0 -6
- package/directives/kodAlani.directive/index.d.ts +0 -6
- package/directives/kodAlani.directive/kodAlani.directive.d.ts +0 -26
- package/directives/kodAlani.directive/kodAlani.directive.d.ts.map +0 -1
- package/directives/kodAlani.directive/limitng-directives-kodAlani.directive.d.ts.map +0 -1
- package/directives/kodAlani.directive/public_api.d.ts +0 -2
- package/directives/kodAlani.directive/public_api.d.ts.map +0 -1
- package/directives/limitng-directives.d.ts.map +0 -1
- package/directives/maksimumUzunluk.directive/index.d.ts +0 -6
- package/directives/maksimumUzunluk.directive/limitng-directives-maksimumUzunluk.directive.d.ts.map +0 -1
- package/directives/maksimumUzunluk.directive/maksimumUzunluk.directive.d.ts +0 -26
- package/directives/maksimumUzunluk.directive/maksimumUzunluk.directive.d.ts.map +0 -1
- package/directives/maksimumUzunluk.directive/public_api.d.ts +0 -2
- package/directives/maksimumUzunluk.directive/public_api.d.ts.map +0 -1
- package/directives/public_api.d.ts +0 -16
- package/directives/public_api.d.ts.map +0 -1
- package/directives/sagSolBoslukSil.directive/index.d.ts +0 -6
- package/directives/sagSolBoslukSil.directive/limitng-directives-sagSolBoslukSil.directive.d.ts.map +0 -1
- package/directives/sagSolBoslukSil.directive/public_api.d.ts +0 -2
- package/directives/sagSolBoslukSil.directive/public_api.d.ts.map +0 -1
- package/directives/sagSolBoslukSil.directive/sagSolBoslukSil.directive.d.ts +0 -24
- package/directives/sagSolBoslukSil.directive/sagSolBoslukSil.directive.d.ts.map +0 -1
- package/directives/standartAlan.directive/index.d.ts +0 -6
- package/directives/standartAlan.directive/limitng-directives-standartAlan.directive.d.ts.map +0 -1
- package/directives/standartAlan.directive/public_api.d.ts +0 -2
- package/directives/standartAlan.directive/public_api.d.ts.map +0 -1
- package/directives/standartAlan.directive/standartAlan.directive.d.ts +0 -26
- package/directives/standartAlan.directive/standartAlan.directive.d.ts.map +0 -1
- package/directives/sutunGenisligi.directive/index.d.ts +0 -6
- package/directives/sutunGenisligi.directive/limitng-directives-sutunGenisligi.directive.d.ts.map +0 -1
- package/directives/sutunGenisligi.directive/public_api.d.ts +0 -2
- package/directives/sutunGenisligi.directive/public_api.d.ts.map +0 -1
- package/directives/sutunGenisligi.directive/sutunGenisligi.directive.d.ts +0 -41
- package/directives/sutunGenisligi.directive/sutunGenisligi.directive.d.ts.map +0 -1
- package/directives/tumBoslukSil.directive/index.d.ts +0 -6
- package/directives/tumBoslukSil.directive/limitng-directives-tumBoslukSil.directive.d.ts.map +0 -1
- package/directives/tumBoslukSil.directive/public_api.d.ts +0 -2
- package/directives/tumBoslukSil.directive/public_api.d.ts.map +0 -1
- package/directives/tumBoslukSil.directive/tumBoslukSil.directive.d.ts +0 -24
- package/directives/tumBoslukSil.directive/tumBoslukSil.directive.d.ts.map +0 -1
- package/directives/tumIlkHarfBuyuk.directive/index.d.ts +0 -6
- package/directives/tumIlkHarfBuyuk.directive/limitng-directives-tumIlkHarfBuyuk.directive.d.ts.map +0 -1
- package/directives/tumIlkHarfBuyuk.directive/public_api.d.ts +0 -2
- package/directives/tumIlkHarfBuyuk.directive/public_api.d.ts.map +0 -1
- package/directives/tumIlkHarfBuyuk.directive/tumIlkHarfBuyuk.directive.d.ts +0 -25
- package/directives/tumIlkHarfBuyuk.directive/tumIlkHarfBuyuk.directive.d.ts.map +0 -1
- package/esm2022/api/models/bildirimler/bildirimler.mjs +0 -39
- package/esm2022/api/models/bildirimler/limitng-api-models-bildirimler.mjs +0 -5
- package/esm2022/api/models/bildirimler/public_api.mjs +0 -2
- package/esm2022/api/models/fourDConstants/fourDConstants.mjs +0 -91
- package/esm2022/api/models/fourDConstants/limitng-api-models-fourDConstants.mjs +0 -5
- package/esm2022/api/models/fourDConstants/public_api.mjs +0 -2
- package/esm2022/api/models/kisisel/izinislemleri/izindetaylari/izinDetaylari.mjs +0 -16
- package/esm2022/api/models/kisisel/izinislemleri/izindetaylari/limitng-api-models-kisisel-izinislemleri-izindetaylari.mjs +0 -5
- package/esm2022/api/models/kisisel/izinislemleri/izindetaylari/public_api.mjs +0 -2
- package/esm2022/api/models/kisisel/izinislemleri/izinfiltre/izinFiltre.mjs +0 -15
- package/esm2022/api/models/kisisel/izinislemleri/izinfiltre/limitng-api-models-kisisel-izinislemleri-izinfiltre.mjs +0 -5
- package/esm2022/api/models/kisisel/izinislemleri/izinfiltre/public_api.mjs +0 -2
- package/esm2022/api/models/kisisel/izinislemleri/izinguncelle/izinGuncelle.mjs +0 -2
- package/esm2022/api/models/kisisel/izinislemleri/izinguncelle/limitng-api-models-kisisel-izinislemleri-izinguncelle.mjs +0 -5
- package/esm2022/api/models/kisisel/izinislemleri/izinguncelle/public_api.mjs +0 -2
- package/esm2022/api/models/kisisel/izinislemleri/izinliste/izinListe.mjs +0 -25
- package/esm2022/api/models/kisisel/izinislemleri/izinliste/limitng-api-models-kisisel-izinislemleri-izinliste.mjs +0 -5
- package/esm2022/api/models/kisisel/izinislemleri/izinliste/public_api.mjs +0 -2
- package/esm2022/api/models/kisisel/izinislemleri/limitng-api-models-kisisel-izinislemleri.mjs +0 -5
- package/esm2022/api/models/kisisel/izinislemleri/public_api.mjs +0 -2
- package/esm2022/api/models/kisisel/limitng-api-models-kisisel.mjs +0 -5
- package/esm2022/api/models/kisisel/masrafislemleri/limitng-api-models-kisisel-masrafislemleri.mjs +0 -5
- package/esm2022/api/models/kisisel/masrafislemleri/masrafdetaylari/limitng-api-models-kisisel-masrafislemleri-masrafdetaylari.mjs +0 -5
- package/esm2022/api/models/kisisel/masrafislemleri/masrafdetaylari/masrafDetaylari.mjs +0 -56
- package/esm2022/api/models/kisisel/masrafislemleri/masrafdetaylari/public_api.mjs +0 -2
- package/esm2022/api/models/kisisel/masrafislemleri/masraffiltre/limitng-api-models-kisisel-masrafislemleri-masraffiltre.mjs +0 -5
- package/esm2022/api/models/kisisel/masrafislemleri/masraffiltre/masrafFiltre.mjs +0 -16
- package/esm2022/api/models/kisisel/masrafislemleri/masraffiltre/public_api.mjs +0 -2
- package/esm2022/api/models/kisisel/masrafislemleri/masrafguncelle/limitng-api-models-kisisel-masrafislemleri-masrafguncelle.mjs +0 -5
- package/esm2022/api/models/kisisel/masrafislemleri/masrafguncelle/masrafGuncelle.mjs +0 -2
- package/esm2022/api/models/kisisel/masrafislemleri/masrafguncelle/public_api.mjs +0 -2
- package/esm2022/api/models/kisisel/masrafislemleri/masrafliste/limitng-api-models-kisisel-masrafislemleri-masrafliste.mjs +0 -5
- package/esm2022/api/models/kisisel/masrafislemleri/masrafliste/masrafListe.mjs +0 -40
- package/esm2022/api/models/kisisel/masrafislemleri/masrafliste/public_api.mjs +0 -2
- package/esm2022/api/models/kisisel/masrafislemleri/public_api.mjs +0 -2
- package/esm2022/api/models/kisisel/onayislemleri/limitng-api-models-kisisel-onayislemleri.mjs +0 -5
- package/esm2022/api/models/kisisel/onayislemleri/onaydetaylari/limitng-api-models-kisisel-onayislemleri-onaydetaylari.mjs +0 -5
- package/esm2022/api/models/kisisel/onayislemleri/onaydetaylari/onayDetaylari.mjs +0 -41
- package/esm2022/api/models/kisisel/onayislemleri/onaydetaylari/public_api.mjs +0 -2
- package/esm2022/api/models/kisisel/onayislemleri/onayfiltre/limitng-api-models-kisisel-onayislemleri-onayfiltre.mjs +0 -5
- package/esm2022/api/models/kisisel/onayislemleri/onayfiltre/onayFiltre.mjs +0 -33
- package/esm2022/api/models/kisisel/onayislemleri/onayfiltre/public_api.mjs +0 -2
- package/esm2022/api/models/kisisel/onayislemleri/onayguncelle/limitng-api-models-kisisel-onayislemleri-onayguncelle.mjs +0 -5
- package/esm2022/api/models/kisisel/onayislemleri/onayguncelle/onayGuncelle.mjs +0 -10
- package/esm2022/api/models/kisisel/onayislemleri/onayguncelle/public_api.mjs +0 -2
- package/esm2022/api/models/kisisel/onayislemleri/onayliste/limitng-api-models-kisisel-onayislemleri-onayliste.mjs +0 -5
- package/esm2022/api/models/kisisel/onayislemleri/onayliste/onayListe.mjs +0 -35
- package/esm2022/api/models/kisisel/onayislemleri/onayliste/public_api.mjs +0 -2
- package/esm2022/api/models/kisisel/onayislemleri/public_api.mjs +0 -2
- package/esm2022/api/models/kisisel/public_api.mjs +0 -2
- package/esm2022/api/models/limitng-api-models.mjs +0 -5
- package/esm2022/api/models/logbook/limitng-api-models-logbook.mjs +0 -5
- package/esm2022/api/models/logbook/logbook.mjs +0 -110
- package/esm2022/api/models/logbook/public_api.mjs +0 -2
- package/esm2022/api/models/login/limitng-api-models-login.mjs +0 -5
- package/esm2022/api/models/login/login.mjs +0 -53
- package/esm2022/api/models/login/public_api.mjs +0 -2
- package/esm2022/api/models/onay/limitng-api-models-onay.mjs +0 -5
- package/esm2022/api/models/onay/onayagonderdetaylari/limitng-api-models-onay-onayagonderdetaylari.mjs +0 -5
- package/esm2022/api/models/onay/onayagonderdetaylari/onayaGonderDetaylar.mjs +0 -52
- package/esm2022/api/models/onay/onayagonderdetaylari/public_api.mjs +0 -2
- package/esm2022/api/models/onay/onaybilgi/limitng-api-models-onay-onaybilgi.mjs +0 -5
- package/esm2022/api/models/onay/onaybilgi/onayBilgi.mjs +0 -2
- package/esm2022/api/models/onay/onaybilgi/public_api.mjs +0 -2
- package/esm2022/api/models/onay/public_api.mjs +0 -2
- package/esm2022/api/models/ortak/limitng-api-models-ortak.mjs +0 -5
- package/esm2022/api/models/ortak/ortak.mjs +0 -164
- package/esm2022/api/models/ortak/public_api.mjs +0 -2
- package/esm2022/api/models/ozet/limitng-api-models-ozet.mjs +0 -5
- package/esm2022/api/models/ozet/ozetdata/limitng-api-models-ozet-ozetdata.mjs +0 -5
- package/esm2022/api/models/ozet/ozetdata/ozetData.mjs +0 -2
- package/esm2022/api/models/ozet/ozetdata/public_api.mjs +0 -2
- package/esm2022/api/models/ozet/ozetkartalan/limitng-api-models-ozet-ozetkartalan.mjs +0 -5
- package/esm2022/api/models/ozet/ozetkartalan/ozetKartAlan.mjs +0 -2
- package/esm2022/api/models/ozet/ozetkartalan/public_api.mjs +0 -2
- package/esm2022/api/models/ozet/public_api.mjs +0 -2
- package/esm2022/api/models/public_api.mjs +0 -2
- package/esm2022/api/models/raporlar/izinraporu/izinrapordetaylari/izinRaporDetaylari.mjs +0 -8
- package/esm2022/api/models/raporlar/izinraporu/izinrapordetaylari/limitng-api-models-raporlar-izinraporu-izinrapordetaylari.mjs +0 -5
- package/esm2022/api/models/raporlar/izinraporu/izinrapordetaylari/public_api.mjs +0 -2
- package/esm2022/api/models/raporlar/izinraporu/izinraporliste/izinRaporListe.mjs +0 -19
- package/esm2022/api/models/raporlar/izinraporu/izinraporliste/limitng-api-models-raporlar-izinraporu-izinraporliste.mjs +0 -5
- package/esm2022/api/models/raporlar/izinraporu/izinraporliste/public_api.mjs +0 -2
- package/esm2022/api/models/raporlar/izinraporu/limitng-api-models-raporlar-izinraporu.mjs +0 -5
- package/esm2022/api/models/raporlar/izinraporu/public_api.mjs +0 -2
- package/esm2022/api/models/raporlar/limitng-api-models-raporlar.mjs +0 -5
- package/esm2022/api/models/raporlar/listedensec/limitng-api-models-raporlar-listedensec.mjs +0 -5
- package/esm2022/api/models/raporlar/listedensec/listeSecenekler.mjs +0 -24
- package/esm2022/api/models/raporlar/listedensec/public_api.mjs +0 -2
- package/esm2022/api/models/raporlar/public_api.mjs +0 -2
- package/esm2022/api/models/raporlar/rapordetaylari/limitng-api-models-raporlar-rapordetaylari.mjs +0 -5
- package/esm2022/api/models/raporlar/rapordetaylari/public_api.mjs +0 -2
- package/esm2022/api/models/raporlar/rapordetaylari/raporDetaylari.mjs +0 -63
- package/esm2022/api/models/raporlar/raporzamanlama/limitng-api-models-raporlar-raporzamanlama.mjs +0 -5
- package/esm2022/api/models/raporlar/raporzamanlama/public_api.mjs +0 -2
- package/esm2022/api/models/raporlar/raporzamanlama/zamanlamaAyarlari.mjs +0 -47
- package/esm2022/api/models/sistemozet/limitng-api-models-sistemozet.mjs +0 -5
- package/esm2022/api/models/sistemozet/public_api.mjs +0 -2
- package/esm2022/api/models/sistemozet/sistemOzet.mjs +0 -182
- package/esm2022/api/models/sistemraporlari/limitng-api-models-sistemraporlari.mjs +0 -5
- package/esm2022/api/models/sistemraporlari/public_api.mjs +0 -2
- package/esm2022/api/models/sistemraporlari/sistemRaporlari.mjs +0 -8
- package/esm2022/api/models/timeSheet/limitng-api-models-timeSheet.mjs +0 -5
- package/esm2022/api/models/timeSheet/public_api.mjs +0 -2
- package/esm2022/api/models/timeSheet/timeSheetGirisListeler/limitng-api-models-timeSheet-timeSheetGirisListeler.mjs +0 -5
- package/esm2022/api/models/timeSheet/timeSheetGirisListeler/public_api.mjs +0 -2
- package/esm2022/api/models/timeSheet/timeSheetGirisListeler/timeSheetGirisListeler.mjs +0 -305
- package/esm2022/api/models/timeSheet/timeSheetLog/limitng-api-models-timeSheet-timeSheetLog.mjs +0 -5
- package/esm2022/api/models/timeSheet/timeSheetLog/public_api.mjs +0 -2
- package/esm2022/api/models/timeSheet/timeSheetLog/timeSheetLog.mjs +0 -14
- package/esm2022/api/models/timeSheet/timeSheetOzetListe/limitng-api-models-timeSheet-timeSheetOzetListe.mjs +0 -5
- package/esm2022/api/models/timeSheet/timeSheetOzetListe/public_api.mjs +0 -2
- package/esm2022/api/models/timeSheet/timeSheetOzetListe/timeSheetOzetListe.mjs +0 -22
- package/esm2022/api/models/timeSheet/timeSheetSecenekler/limitng-api-models-timeSheet-timeSheetSecenekler.mjs +0 -5
- package/esm2022/api/models/timeSheet/timeSheetSecenekler/public_api.mjs +0 -2
- package/esm2022/api/models/timeSheet/timeSheetSecenekler/timeSheetSecenekler.mjs +0 -30
- package/esm2022/api/models/xl/limitng-api-models-xl.mjs +0 -5
- package/esm2022/api/models/xl/public_api.mjs +0 -2
- package/esm2022/api/models/xl/xlConfig/limitng-api-models-xl-xlConfig.mjs +0 -5
- package/esm2022/api/models/xl/xlConfig/public_api.mjs +0 -2
- package/esm2022/api/models/xl/xlConfig/xlConfig.mjs +0 -438
- package/esm2022/api/models/xl/xlConstants/limitng-api-models-xl-xlConstants.mjs +0 -5
- package/esm2022/api/models/xl/xlConstants/public_api.mjs +0 -2
- package/esm2022/api/models/xl/xlConstants/xlConstants.mjs +0 -66
- package/esm2022/api/models/xl/xlOptions/limitng-api-models-xl-xlOptions.mjs +0 -5
- package/esm2022/api/models/xl/xlOptions/public_api.mjs +0 -2
- package/esm2022/api/models/xl/xlOptions/xlOptions.mjs +0 -34
- package/esm2022/api/models/xl/xlTools/limitng-api-models-xl-xlTools.mjs +0 -5
- package/esm2022/api/models/xl/xlTools/public_api.mjs +0 -2
- package/esm2022/api/models/xl/xlTools/xlTools.mjs +0 -3
- package/esm2022/dikey-baslikli-panel-sol/dikey-baslikli-panel-sol.component.mjs +0 -19
- package/esm2022/dikey-baslikli-panel-sol/limitng-dikey-baslikli-panel-sol.mjs +0 -5
- package/esm2022/dikey-baslikli-panel-sol/public_api.mjs +0 -2
- package/esm2022/directives/adAlani.directive/adAlani.directive.mjs +0 -75
- package/esm2022/directives/adAlani.directive/limitng-directives-adAlani.directive.mjs +0 -5
- package/esm2022/directives/adAlani.directive/public_api.mjs +0 -2
- package/esm2022/directives/adresAlani.directive/adresAlani.directive.mjs +0 -76
- package/esm2022/directives/adresAlani.directive/limitng-directives-adresAlani.directive.mjs +0 -5
- package/esm2022/directives/adresAlani.directive/public_api.mjs +0 -2
- package/esm2022/directives/buyukHarf.directive/buyukHarf.directive.mjs +0 -61
- package/esm2022/directives/buyukHarf.directive/limitng-directives-buyukHarf.directive.mjs +0 -5
- package/esm2022/directives/buyukHarf.directive/public_api.mjs +0 -2
- package/esm2022/directives/ciftBoslukTek.directive/ciftBoslukTek.directive.mjs +0 -61
- package/esm2022/directives/ciftBoslukTek.directive/limitng-directives-ciftBoslukTek.directive.mjs +0 -5
- package/esm2022/directives/ciftBoslukTek.directive/public_api.mjs +0 -2
- package/esm2022/directives/dirty.directive/dirty.directive.mjs +0 -30
- package/esm2022/directives/dirty.directive/limitng-directives-dirty.directive.mjs +0 -5
- package/esm2022/directives/dirty.directive/public_api.mjs +0 -2
- package/esm2022/directives/disable.directive/disable.directive.mjs +0 -128
- package/esm2022/directives/disable.directive/limitng-directives-disable.directive.mjs +0 -5
- package/esm2022/directives/disable.directive/public_api.mjs +0 -2
- package/esm2022/directives/flexBasis.directive/flexBasis.directive.mjs +0 -75
- package/esm2022/directives/flexBasis.directive/limitng-directives-flexBasis.directive.mjs +0 -5
- package/esm2022/directives/flexBasis.directive/public_api.mjs +0 -2
- package/esm2022/directives/ilkHarfBuyuk.directive/ilkHarfBuyuk.directive.mjs +0 -61
- package/esm2022/directives/ilkHarfBuyuk.directive/limitng-directives-ilkHarfBuyuk.directive.mjs +0 -5
- package/esm2022/directives/ilkHarfBuyuk.directive/public_api.mjs +0 -2
- package/esm2022/directives/kodAlani.directive/kodAlani.directive.mjs +0 -75
- package/esm2022/directives/kodAlani.directive/limitng-directives-kodAlani.directive.mjs +0 -5
- package/esm2022/directives/kodAlani.directive/public_api.mjs +0 -2
- package/esm2022/directives/limitng-directives.mjs +0 -5
- package/esm2022/directives/maksimumUzunluk.directive/limitng-directives-maksimumUzunluk.directive.mjs +0 -5
- package/esm2022/directives/maksimumUzunluk.directive/maksimumUzunluk.directive.mjs +0 -66
- package/esm2022/directives/maksimumUzunluk.directive/public_api.mjs +0 -2
- package/esm2022/directives/public_api.mjs +0 -16
- package/esm2022/directives/sagSolBoslukSil.directive/limitng-directives-sagSolBoslukSil.directive.mjs +0 -5
- package/esm2022/directives/sagSolBoslukSil.directive/public_api.mjs +0 -2
- package/esm2022/directives/sagSolBoslukSil.directive/sagSolBoslukSil.directive.mjs +0 -60
- package/esm2022/directives/standartAlan.directive/limitng-directives-standartAlan.directive.mjs +0 -5
- package/esm2022/directives/standartAlan.directive/public_api.mjs +0 -2
- package/esm2022/directives/standartAlan.directive/standartAlan.directive.mjs +0 -75
- package/esm2022/directives/sutunGenisligi.directive/limitng-directives-sutunGenisligi.directive.mjs +0 -5
- package/esm2022/directives/sutunGenisligi.directive/public_api.mjs +0 -2
- package/esm2022/directives/sutunGenisligi.directive/sutunGenisligi.directive.mjs +0 -108
- package/esm2022/directives/tumBoslukSil.directive/limitng-directives-tumBoslukSil.directive.mjs +0 -5
- package/esm2022/directives/tumBoslukSil.directive/public_api.mjs +0 -2
- package/esm2022/directives/tumBoslukSil.directive/tumBoslukSil.directive.mjs +0 -61
- package/esm2022/directives/tumIlkHarfBuyuk.directive/limitng-directives-tumIlkHarfBuyuk.directive.mjs +0 -5
- package/esm2022/directives/tumIlkHarfBuyuk.directive/public_api.mjs +0 -2
- package/esm2022/directives/tumIlkHarfBuyuk.directive/tumIlkHarfBuyuk.directive.mjs +0 -64
- package/esm2022/pipes/boolToPlus.pipe/boolToPlus.pipe.mjs +0 -17
- package/esm2022/pipes/boolToPlus.pipe/limitng-pipes-boolToPlus.pipe.mjs +0 -5
- package/esm2022/pipes/boolToPlus.pipe/public_api.mjs +0 -2
- package/esm2022/pipes/boolToPlusMinus.pipe/boolToPlusMinus.pipe.mjs +0 -17
- package/esm2022/pipes/boolToPlusMinus.pipe/limitng-pipes-boolToPlusMinus.pipe.mjs +0 -5
- package/esm2022/pipes/boolToPlusMinus.pipe/public_api.mjs +0 -2
- package/esm2022/pipes/dateToText.pipe/dateToText.pipe.mjs +0 -18
- package/esm2022/pipes/dateToText.pipe/limitng-pipes-dateToText.pipe.mjs +0 -5
- package/esm2022/pipes/dateToText.pipe/public_api.mjs +0 -2
- package/esm2022/pipes/evetHayir.pipe/evetHayir.pipe.mjs +0 -17
- package/esm2022/pipes/evetHayir.pipe/limitng-pipes-evetHayir.pipe.mjs +0 -5
- package/esm2022/pipes/evetHayir.pipe/public_api.mjs +0 -2
- package/esm2022/pipes/limitng-pipes.mjs +0 -5
- package/esm2022/pipes/mecraTuru.pipe/limitng-pipes-mecraTuru.pipe.mjs +0 -5
- package/esm2022/pipes/mecraTuru.pipe/mecraTuru.pipe.mjs +0 -18
- package/esm2022/pipes/mecraTuru.pipe/public_api.mjs +0 -2
- package/esm2022/pipes/public_api.mjs +0 -2
- package/esm2022/pipes/safe.pipe/limitng-pipes-safe.pipe.mjs +0 -5
- package/esm2022/pipes/safe.pipe/public_api.mjs +0 -2
- package/esm2022/pipes/safe.pipe/safe.pipe.mjs +0 -28
- package/esm2022/rapor-kart/limitng-rapor-kart.mjs +0 -5
- package/esm2022/rapor-kart/models/limitng-rapor-kart-models.mjs +0 -5
- package/esm2022/rapor-kart/models/public_api.mjs +0 -2
- package/esm2022/rapor-kart/models/rapor-kart-secenekler.mjs +0 -16
- package/esm2022/rapor-kart/public_api.mjs +0 -2
- package/esm2022/rapor-kart/rapor-kart.component.mjs +0 -48
- package/esm2022/yatay-baslikli-panel/limitng-yatay-baslikli-panel.mjs +0 -5
- package/esm2022/yatay-baslikli-panel/public_api.mjs +0 -2
- package/esm2022/yatay-baslikli-panel/yatay-baslikli-panel.component.mjs +0 -37
- package/fesm2022/limitng-api-models-bildirimler.mjs +0 -45
- package/fesm2022/limitng-api-models-bildirimler.mjs.map +0 -1
- package/fesm2022/limitng-api-models-fourDConstants.mjs +0 -97
- package/fesm2022/limitng-api-models-fourDConstants.mjs.map +0 -1
- package/fesm2022/limitng-api-models-kisisel-izinislemleri-izindetaylari.mjs +0 -22
- package/fesm2022/limitng-api-models-kisisel-izinislemleri-izindetaylari.mjs.map +0 -1
- package/fesm2022/limitng-api-models-kisisel-izinislemleri-izinfiltre.mjs +0 -22
- package/fesm2022/limitng-api-models-kisisel-izinislemleri-izinfiltre.mjs.map +0 -1
- package/fesm2022/limitng-api-models-kisisel-izinislemleri-izinguncelle.mjs +0 -4
- package/fesm2022/limitng-api-models-kisisel-izinislemleri-izinguncelle.mjs.map +0 -1
- package/fesm2022/limitng-api-models-kisisel-izinislemleri-izinliste.mjs +0 -31
- package/fesm2022/limitng-api-models-kisisel-izinislemleri-izinliste.mjs.map +0 -1
- package/fesm2022/limitng-api-models-kisisel-izinislemleri.mjs +0 -6
- package/fesm2022/limitng-api-models-kisisel-izinislemleri.mjs.map +0 -1
- package/fesm2022/limitng-api-models-kisisel-masrafislemleri-masrafdetaylari.mjs +0 -62
- package/fesm2022/limitng-api-models-kisisel-masrafislemleri-masrafdetaylari.mjs.map +0 -1
- package/fesm2022/limitng-api-models-kisisel-masrafislemleri-masraffiltre.mjs +0 -23
- package/fesm2022/limitng-api-models-kisisel-masrafislemleri-masraffiltre.mjs.map +0 -1
- package/fesm2022/limitng-api-models-kisisel-masrafislemleri-masrafguncelle.mjs +0 -4
- package/fesm2022/limitng-api-models-kisisel-masrafislemleri-masrafguncelle.mjs.map +0 -1
- package/fesm2022/limitng-api-models-kisisel-masrafislemleri-masrafliste.mjs +0 -46
- package/fesm2022/limitng-api-models-kisisel-masrafislemleri-masrafliste.mjs.map +0 -1
- package/fesm2022/limitng-api-models-kisisel-masrafislemleri.mjs +0 -6
- package/fesm2022/limitng-api-models-kisisel-masrafislemleri.mjs.map +0 -1
- package/fesm2022/limitng-api-models-kisisel-onayislemleri-onaydetaylari.mjs +0 -47
- package/fesm2022/limitng-api-models-kisisel-onayislemleri-onaydetaylari.mjs.map +0 -1
- package/fesm2022/limitng-api-models-kisisel-onayislemleri-onayfiltre.mjs +0 -40
- package/fesm2022/limitng-api-models-kisisel-onayislemleri-onayfiltre.mjs.map +0 -1
- package/fesm2022/limitng-api-models-kisisel-onayislemleri-onayguncelle.mjs +0 -16
- package/fesm2022/limitng-api-models-kisisel-onayislemleri-onayguncelle.mjs.map +0 -1
- package/fesm2022/limitng-api-models-kisisel-onayislemleri-onayliste.mjs +0 -41
- package/fesm2022/limitng-api-models-kisisel-onayislemleri-onayliste.mjs.map +0 -1
- package/fesm2022/limitng-api-models-kisisel-onayislemleri.mjs +0 -6
- package/fesm2022/limitng-api-models-kisisel-onayislemleri.mjs.map +0 -1
- package/fesm2022/limitng-api-models-kisisel.mjs +0 -6
- package/fesm2022/limitng-api-models-kisisel.mjs.map +0 -1
- package/fesm2022/limitng-api-models-logbook.mjs +0 -117
- package/fesm2022/limitng-api-models-logbook.mjs.map +0 -1
- package/fesm2022/limitng-api-models-login.mjs +0 -59
- package/fesm2022/limitng-api-models-login.mjs.map +0 -1
- package/fesm2022/limitng-api-models-onay-onayagonderdetaylari.mjs +0 -58
- package/fesm2022/limitng-api-models-onay-onayagonderdetaylari.mjs.map +0 -1
- package/fesm2022/limitng-api-models-onay-onaybilgi.mjs +0 -4
- package/fesm2022/limitng-api-models-onay-onaybilgi.mjs.map +0 -1
- package/fesm2022/limitng-api-models-onay.mjs +0 -6
- package/fesm2022/limitng-api-models-onay.mjs.map +0 -1
- package/fesm2022/limitng-api-models-ortak.mjs +0 -171
- package/fesm2022/limitng-api-models-ortak.mjs.map +0 -1
- package/fesm2022/limitng-api-models-ozet-ozetdata.mjs +0 -4
- package/fesm2022/limitng-api-models-ozet-ozetdata.mjs.map +0 -1
- package/fesm2022/limitng-api-models-ozet-ozetkartalan.mjs +0 -4
- package/fesm2022/limitng-api-models-ozet-ozetkartalan.mjs.map +0 -1
- package/fesm2022/limitng-api-models-ozet.mjs +0 -6
- package/fesm2022/limitng-api-models-ozet.mjs.map +0 -1
- package/fesm2022/limitng-api-models-raporlar-izinraporu-izinrapordetaylari.mjs +0 -14
- package/fesm2022/limitng-api-models-raporlar-izinraporu-izinrapordetaylari.mjs.map +0 -1
- package/fesm2022/limitng-api-models-raporlar-izinraporu-izinraporliste.mjs +0 -26
- package/fesm2022/limitng-api-models-raporlar-izinraporu-izinraporliste.mjs.map +0 -1
- package/fesm2022/limitng-api-models-raporlar-izinraporu.mjs +0 -6
- package/fesm2022/limitng-api-models-raporlar-izinraporu.mjs.map +0 -1
- package/fesm2022/limitng-api-models-raporlar-listedensec.mjs +0 -30
- package/fesm2022/limitng-api-models-raporlar-listedensec.mjs.map +0 -1
- package/fesm2022/limitng-api-models-raporlar-rapordetaylari.mjs +0 -69
- package/fesm2022/limitng-api-models-raporlar-rapordetaylari.mjs.map +0 -1
- package/fesm2022/limitng-api-models-raporlar-raporzamanlama.mjs +0 -53
- package/fesm2022/limitng-api-models-raporlar-raporzamanlama.mjs.map +0 -1
- package/fesm2022/limitng-api-models-raporlar.mjs +0 -6
- package/fesm2022/limitng-api-models-raporlar.mjs.map +0 -1
- package/fesm2022/limitng-api-models-sistemozet.mjs +0 -188
- package/fesm2022/limitng-api-models-sistemozet.mjs.map +0 -1
- package/fesm2022/limitng-api-models-sistemraporlari.mjs +0 -15
- package/fesm2022/limitng-api-models-sistemraporlari.mjs.map +0 -1
- package/fesm2022/limitng-api-models-timeSheet-timeSheetGirisListeler.mjs +0 -312
- package/fesm2022/limitng-api-models-timeSheet-timeSheetGirisListeler.mjs.map +0 -1
- package/fesm2022/limitng-api-models-timeSheet-timeSheetLog.mjs +0 -20
- package/fesm2022/limitng-api-models-timeSheet-timeSheetLog.mjs.map +0 -1
- package/fesm2022/limitng-api-models-timeSheet-timeSheetOzetListe.mjs +0 -29
- package/fesm2022/limitng-api-models-timeSheet-timeSheetOzetListe.mjs.map +0 -1
- package/fesm2022/limitng-api-models-timeSheet-timeSheetSecenekler.mjs +0 -36
- package/fesm2022/limitng-api-models-timeSheet-timeSheetSecenekler.mjs.map +0 -1
- package/fesm2022/limitng-api-models-timeSheet.mjs +0 -6
- package/fesm2022/limitng-api-models-timeSheet.mjs.map +0 -1
- package/fesm2022/limitng-api-models-xl-xlConfig.mjs +0 -445
- package/fesm2022/limitng-api-models-xl-xlConfig.mjs.map +0 -1
- package/fesm2022/limitng-api-models-xl-xlConstants.mjs +0 -72
- package/fesm2022/limitng-api-models-xl-xlConstants.mjs.map +0 -1
- package/fesm2022/limitng-api-models-xl-xlOptions.mjs +0 -40
- package/fesm2022/limitng-api-models-xl-xlOptions.mjs.map +0 -1
- package/fesm2022/limitng-api-models-xl-xlTools.mjs +0 -9
- package/fesm2022/limitng-api-models-xl-xlTools.mjs.map +0 -1
- package/fesm2022/limitng-api-models-xl.mjs +0 -6
- package/fesm2022/limitng-api-models-xl.mjs.map +0 -1
- package/fesm2022/limitng-api-models.mjs +0 -6
- package/fesm2022/limitng-api-models.mjs.map +0 -1
- package/fesm2022/limitng-dikey-baslikli-panel-sol.mjs +0 -26
- package/fesm2022/limitng-dikey-baslikli-panel-sol.mjs.map +0 -1
- package/fesm2022/limitng-directives-adAlani.directive.mjs +0 -82
- package/fesm2022/limitng-directives-adAlani.directive.mjs.map +0 -1
- package/fesm2022/limitng-directives-adresAlani.directive.mjs +0 -83
- package/fesm2022/limitng-directives-adresAlani.directive.mjs.map +0 -1
- package/fesm2022/limitng-directives-buyukHarf.directive.mjs +0 -68
- package/fesm2022/limitng-directives-buyukHarf.directive.mjs.map +0 -1
- package/fesm2022/limitng-directives-ciftBoslukTek.directive.mjs +0 -68
- package/fesm2022/limitng-directives-ciftBoslukTek.directive.mjs.map +0 -1
- package/fesm2022/limitng-directives-dirty.directive.mjs +0 -37
- package/fesm2022/limitng-directives-dirty.directive.mjs.map +0 -1
- package/fesm2022/limitng-directives-disable.directive.mjs +0 -135
- package/fesm2022/limitng-directives-disable.directive.mjs.map +0 -1
- package/fesm2022/limitng-directives-flexBasis.directive.mjs +0 -82
- package/fesm2022/limitng-directives-flexBasis.directive.mjs.map +0 -1
- package/fesm2022/limitng-directives-ilkHarfBuyuk.directive.mjs +0 -68
- package/fesm2022/limitng-directives-ilkHarfBuyuk.directive.mjs.map +0 -1
- package/fesm2022/limitng-directives-kodAlani.directive.mjs +0 -82
- package/fesm2022/limitng-directives-kodAlani.directive.mjs.map +0 -1
- package/fesm2022/limitng-directives-maksimumUzunluk.directive.mjs +0 -73
- package/fesm2022/limitng-directives-maksimumUzunluk.directive.mjs.map +0 -1
- package/fesm2022/limitng-directives-sagSolBoslukSil.directive.mjs +0 -67
- package/fesm2022/limitng-directives-sagSolBoslukSil.directive.mjs.map +0 -1
- package/fesm2022/limitng-directives-standartAlan.directive.mjs +0 -82
- package/fesm2022/limitng-directives-standartAlan.directive.mjs.map +0 -1
- package/fesm2022/limitng-directives-sutunGenisligi.directive.mjs +0 -115
- package/fesm2022/limitng-directives-sutunGenisligi.directive.mjs.map +0 -1
- package/fesm2022/limitng-directives-tumBoslukSil.directive.mjs +0 -68
- package/fesm2022/limitng-directives-tumBoslukSil.directive.mjs.map +0 -1
- package/fesm2022/limitng-directives-tumIlkHarfBuyuk.directive.mjs +0 -71
- package/fesm2022/limitng-directives-tumIlkHarfBuyuk.directive.mjs.map +0 -1
- package/fesm2022/limitng-directives.mjs +0 -1037
- package/fesm2022/limitng-directives.mjs.map +0 -1
- package/fesm2022/limitng-pipes-boolToPlus.pipe.mjs +0 -24
- package/fesm2022/limitng-pipes-boolToPlus.pipe.mjs.map +0 -1
- package/fesm2022/limitng-pipes-boolToPlusMinus.pipe.mjs +0 -24
- package/fesm2022/limitng-pipes-boolToPlusMinus.pipe.mjs.map +0 -1
- package/fesm2022/limitng-pipes-dateToText.pipe.mjs +0 -25
- package/fesm2022/limitng-pipes-dateToText.pipe.mjs.map +0 -1
- package/fesm2022/limitng-pipes-evetHayir.pipe.mjs +0 -24
- package/fesm2022/limitng-pipes-evetHayir.pipe.mjs.map +0 -1
- package/fesm2022/limitng-pipes-mecraTuru.pipe.mjs +0 -25
- package/fesm2022/limitng-pipes-mecraTuru.pipe.mjs.map +0 -1
- package/fesm2022/limitng-pipes-safe.pipe.mjs +0 -35
- package/fesm2022/limitng-pipes-safe.pipe.mjs.map +0 -1
- package/fesm2022/limitng-pipes.mjs +0 -6
- package/fesm2022/limitng-pipes.mjs.map +0 -1
- package/fesm2022/limitng-rapor-kart-models.mjs +0 -23
- package/fesm2022/limitng-rapor-kart-models.mjs.map +0 -1
- package/fesm2022/limitng-rapor-kart.mjs +0 -70
- package/fesm2022/limitng-rapor-kart.mjs.map +0 -1
- package/fesm2022/limitng-yatay-baslikli-panel.mjs +0 -44
- package/fesm2022/limitng-yatay-baslikli-panel.mjs.map +0 -1
- package/pipes/boolToPlus.pipe/boolToPlus.pipe.d.ts +0 -8
- package/pipes/boolToPlus.pipe/boolToPlus.pipe.d.ts.map +0 -1
- package/pipes/boolToPlus.pipe/index.d.ts +0 -6
- package/pipes/boolToPlus.pipe/limitng-pipes-boolToPlus.pipe.d.ts.map +0 -1
- package/pipes/boolToPlus.pipe/public_api.d.ts +0 -2
- package/pipes/boolToPlus.pipe/public_api.d.ts.map +0 -1
- package/pipes/boolToPlusMinus.pipe/boolToPlusMinus.pipe.d.ts +0 -8
- package/pipes/boolToPlusMinus.pipe/boolToPlusMinus.pipe.d.ts.map +0 -1
- package/pipes/boolToPlusMinus.pipe/index.d.ts +0 -6
- package/pipes/boolToPlusMinus.pipe/limitng-pipes-boolToPlusMinus.pipe.d.ts.map +0 -1
- package/pipes/boolToPlusMinus.pipe/public_api.d.ts +0 -2
- package/pipes/boolToPlusMinus.pipe/public_api.d.ts.map +0 -1
- package/pipes/dateToText.pipe/dateToText.pipe.d.ts +0 -8
- package/pipes/dateToText.pipe/dateToText.pipe.d.ts.map +0 -1
- package/pipes/dateToText.pipe/index.d.ts +0 -6
- package/pipes/dateToText.pipe/limitng-pipes-dateToText.pipe.d.ts.map +0 -1
- package/pipes/dateToText.pipe/public_api.d.ts +0 -2
- package/pipes/dateToText.pipe/public_api.d.ts.map +0 -1
- package/pipes/evetHayir.pipe/evetHayir.pipe.d.ts +0 -8
- package/pipes/evetHayir.pipe/evetHayir.pipe.d.ts.map +0 -1
- package/pipes/evetHayir.pipe/index.d.ts +0 -6
- package/pipes/evetHayir.pipe/limitng-pipes-evetHayir.pipe.d.ts.map +0 -1
- package/pipes/evetHayir.pipe/public_api.d.ts +0 -2
- package/pipes/evetHayir.pipe/public_api.d.ts.map +0 -1
- package/pipes/index.d.ts +0 -6
- package/pipes/limitng-pipes.d.ts.map +0 -1
- package/pipes/mecraTuru.pipe/index.d.ts +0 -6
- package/pipes/mecraTuru.pipe/limitng-pipes-mecraTuru.pipe.d.ts.map +0 -1
- package/pipes/mecraTuru.pipe/mecraTuru.pipe.d.ts +0 -8
- package/pipes/mecraTuru.pipe/mecraTuru.pipe.d.ts.map +0 -1
- package/pipes/mecraTuru.pipe/public_api.d.ts +0 -2
- package/pipes/mecraTuru.pipe/public_api.d.ts.map +0 -1
- package/pipes/public_api.d.ts +0 -3
- package/pipes/public_api.d.ts.map +0 -1
- package/pipes/safe.pipe/index.d.ts +0 -6
- package/pipes/safe.pipe/limitng-pipes-safe.pipe.d.ts.map +0 -1
- package/pipes/safe.pipe/public_api.d.ts +0 -2
- package/pipes/safe.pipe/public_api.d.ts.map +0 -1
- package/pipes/safe.pipe/safe.pipe.d.ts +0 -10
- package/pipes/safe.pipe/safe.pipe.d.ts.map +0 -1
- package/rapor-kart/index.d.ts +0 -6
- package/rapor-kart/limitng-rapor-kart.d.ts.map +0 -1
- package/rapor-kart/models/index.d.ts +0 -6
- package/rapor-kart/models/limitng-rapor-kart-models.d.ts.map +0 -1
- package/rapor-kart/models/public_api.d.ts +0 -2
- package/rapor-kart/models/public_api.d.ts.map +0 -1
- package/rapor-kart/models/rapor-kart-secenekler.d.ts +0 -14
- package/rapor-kart/models/rapor-kart-secenekler.d.ts.map +0 -1
- package/rapor-kart/public_api.d.ts +0 -2
- package/rapor-kart/public_api.d.ts.map +0 -1
- package/rapor-kart/rapor-kart.component.d.ts +0 -21
- package/rapor-kart/rapor-kart.component.d.ts.map +0 -1
- package/yatay-baslikli-panel/index.d.ts +0 -6
- package/yatay-baslikli-panel/limitng-yatay-baslikli-panel.d.ts.map +0 -1
- package/yatay-baslikli-panel/public_api.d.ts +0 -2
- package/yatay-baslikli-panel/public_api.d.ts.map +0 -1
- package/yatay-baslikli-panel/yatay-baslikli-panel.component.d.ts +0 -19
- package/yatay-baslikli-panel/yatay-baslikli-panel.component.d.ts.map +0 -1
package/api/globalfunctions.d.ts
CHANGED
|
@@ -23,7 +23,7 @@ export declare class GlobalFunctions {
|
|
|
23
23
|
static dateToTarihParam(param: Date): string;
|
|
24
24
|
static getFileExtension(file: File): string;
|
|
25
25
|
static hexToRGBA(hex: string, alpha: number): string;
|
|
26
|
-
static colorNameToHex(color:
|
|
26
|
+
static colorNameToHex(color: string): any;
|
|
27
27
|
static getFilenameFromContentDisposition(contentDisposition: string): string;
|
|
28
28
|
static temaGunNoVer(): number;
|
|
29
29
|
static ciftBoslukTekYap(metin: string): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"globalfunctions.d.ts","sourceRoot":"","sources":["../../src/app/components/api/globalfunctions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEzE,qBAAa,eAAe;IAC1B,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAqBhD,MAAM,CAAC,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IAMzD,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM;IAW5D,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAI1C,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAI1D,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAI3D,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAazC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAQ5C,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAQ9C,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,GAAG,MAAM;IAQtC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;IAI9C,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;IAI9C,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI;IAexC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM;IAmEtD,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM;IAoE1D,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM;IAgClC,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM;IA+CxD,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAK3D,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAc5C,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,GAAG,MAAM;IAW5C,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAI3C,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAe3C,MAAM,CAAC,cAAc,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"globalfunctions.d.ts","sourceRoot":"","sources":["../../src/app/components/api/globalfunctions.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,10 +13,10 @@ export class AltBuyukKartComponent {
|
|
|
13
13
|
this.sagAlt = contentChild('sagAlt');
|
|
14
14
|
this.solAlt = contentChild('solAlt');
|
|
15
15
|
}
|
|
16
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
17
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.
|
|
16
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: AltBuyukKartComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
17
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.3", type: AltBuyukKartComponent, isStandalone: true, selector: "alt-buyuk-kart", inputs: { baslik: { classPropertyName: "baslik", publicName: "baslik", isSignal: true, isRequired: true, transformFunction: null }, baslikRenk: { classPropertyName: "baslikRenk", publicName: "baslikRenk", isSignal: true, isRequired: true, transformFunction: null }, genislik: { classPropertyName: "genislik", publicName: "genislik", isSignal: true, isRequired: false, transformFunction: null }, yukseklik: { classPropertyName: "yukseklik", publicName: "yukseklik", isSignal: true, isRequired: false, transformFunction: null }, baslikYukseklik: { classPropertyName: "baslikYukseklik", publicName: "baslikYukseklik", isSignal: true, isRequired: false, transformFunction: null }, baslikFontSize: { classPropertyName: "baslikFontSize", publicName: "baslikFontSize", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "style.width": "genislik()" } }, queries: [{ propertyName: "sagAlt", first: true, predicate: ["sagAlt"], descendants: true, isSignal: true }, { propertyName: "solAlt", first: true, predicate: ["solAlt"], descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"wrapper\" [style.height.rem]=\"yukseklik()\">\r\n <div class=\"alt-baslik\" [style.backgroundColor]=\"baslikRenk()\" [style.height.rem]=\"baslikYukseklik()\"\r\n [style.top.rem]=\"baslikUst()\">\r\n </div>\r\n\r\n <div class=\"baslik-yazi\" [style.font-size.rem]=\"baslikFontSize()\" [style.height.rem]=\"baslikYukseklik()\"\r\n [style.color]=\"baslikRenk()\" [style.top.rem]=\"baslikUst()\">\r\n <b>{{baslik()}}</b>\r\n </div>\r\n\r\n @if (sagAlt()) {\r\n <div class=\"sag-alt\" [style.height.rem]=\"baslikYukseklik()\" [style.top.rem]=\"baslikUst()\">\r\n <ng-container *ngTemplateOutlet=\"sagAlt(); context: {$implicit: sagIcerik}\">\r\n {{sagIcerik}}\r\n </ng-container>\r\n </div>\r\n }\r\n @if (solAlt()) {\r\n <div class=\"sol-alt\" [style.height.rem]=\"baslikYukseklik()\" [style.top.rem]=\"baslikUst()\">\r\n <ng-container *ngTemplateOutlet=\"solAlt(); context: {$implicit: solIcerik}\">\r\n {{solIcerik()}}\r\n </ng-container>\r\n </div>\r\n }\r\n <ng-content />\r\n</div>\r\n", styles: [":host{float:left;margin:.5em 0 0 .5em;background-color:transparent;border:transparent}:host .wrapper{background-color:#fff;position:relative;border-radius:.35em;box-shadow:inset 0 0 .35em .15em #0003}:host .alt-baslik{position:absolute;opacity:.2;width:100%}:host .baslik-yazi{position:absolute;width:100%;display:flex;justify-content:center;align-items:center;padding-right:.4rem;padding-left:.4rem;line-height:1.5}:host .sag-alt{position:absolute;padding:.4em;width:50%;text-align:right;left:50%;z-index:1000}:host .sol-alt{position:absolute;padding:.4em;width:50%;text-align:left;z-index:1000}\n/*!_variable.scss*/\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
|
|
18
18
|
}
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: AltBuyukKartComponent, decorators: [{
|
|
20
20
|
type: Component,
|
|
21
21
|
args: [{ selector: 'alt-buyuk-kart', standalone: true, imports: [NgTemplateOutlet], host: {
|
|
22
22
|
'[style.width]': 'genislik()'
|
|
@@ -10,10 +10,10 @@ export class AltKucukKartComponent {
|
|
|
10
10
|
this.baslikFontSize = input(1, { transform: numberAttribute });
|
|
11
11
|
this.baslikUst = computed(() => this.yukseklik() - this.baslikYukseklik());
|
|
12
12
|
}
|
|
13
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
14
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.
|
|
13
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: AltKucukKartComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
14
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.3", type: AltKucukKartComponent, isStandalone: true, selector: "alt-kucuk-kart", inputs: { baslik: { classPropertyName: "baslik", publicName: "baslik", isSignal: true, isRequired: true, transformFunction: null }, baslikRenk: { classPropertyName: "baslikRenk", publicName: "baslikRenk", isSignal: true, isRequired: true, transformFunction: null }, genislik: { classPropertyName: "genislik", publicName: "genislik", isSignal: true, isRequired: false, transformFunction: null }, yukseklik: { classPropertyName: "yukseklik", publicName: "yukseklik", isSignal: true, isRequired: false, transformFunction: null }, baslikYukseklik: { classPropertyName: "baslikYukseklik", publicName: "baslikYukseklik", isSignal: true, isRequired: false, transformFunction: null }, baslikFontSize: { classPropertyName: "baslikFontSize", publicName: "baslikFontSize", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "style.width": "genislik()" } }, ngImport: i0, template: "<div class=\"wrapper\" [style.height.rem]=\"yukseklik()\">\r\n <div class=\"alt-baslik\" [style.backgroundColor]=\"baslikRenk()\" [style.height.rem]=\"baslikYukseklik()\"\r\n [style.top.rem]=\"baslikUst()\">\r\n </div>\r\n\r\n <div class=\"baslik-yazi\" [style.font-size.rem]=\"baslikFontSize()\" [style.height.rem]=\"baslikYukseklik()\"\r\n [style.color]=\"baslikRenk()\" [style.top.rem]=\"baslikUst()\">\r\n <b>{{baslik()}}</b>\r\n </div>\r\n\r\n <ng-content />\r\n</div>", styles: [":host{float:left;margin:.5em 0 0 .5em;background-color:transparent;border:transparent}:host .wrapper{background-color:#fff;position:relative;border-radius:.35em;box-shadow:inset 0 0 .35em .15em #0003}:host .alt-baslik{position:absolute;opacity:.2;width:100%}:host .baslik-yazi{position:absolute;width:100%;text-align:center;display:flex;justify-content:center;align-items:center;padding-right:.4rem;padding-left:.4rem}\n/*!_variable.scss*/\n"] }); }
|
|
15
15
|
}
|
|
16
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: AltKucukKartComponent, decorators: [{
|
|
17
17
|
type: Component,
|
|
18
18
|
args: [{ selector: 'alt-kucuk-kart', standalone: true, host: {
|
|
19
19
|
'[style.width]': 'genislik()'
|
|
@@ -789,4 +789,4 @@ export class GlobalFunctions {
|
|
|
789
789
|
return bitisSaati + ':' + bitisDakikasi;
|
|
790
790
|
}
|
|
791
791
|
}
|
|
792
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsZnVuY3Rpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2FwaS9nbG9iYWxmdW5jdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRzdDLE9BQU8sRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFekUsTUFBTSxPQUFPLGVBQWU7SUFDMUIsTUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUFhLEVBQUUsT0FBZTtRQUU5QyxJQUFJLENBQUMsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDNUMsSUFBSSxDQUFDLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzVDLElBQUksQ0FBQyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUU1QyxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxHQUFHLE9BQU8sQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3hELENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEdBQUcsT0FBTyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDeEQsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsR0FBRyxPQUFPLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxRQUFRLEVB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QUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUztZQUN2RyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTO1lBQ2hLLFNBQVMsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFNBQVM7WUFDeEssUUFBUSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsU0FBUztZQUN0TCxVQUFVLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxhQUFhLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxTQUFTO1lBQzlMLFVBQVUsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFNBQVM7WUFDN0csU0FBUyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFNBQVM7WUFDeEYsU0FBUyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUs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TSxJQUFJLFVBQVUsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUMvQixVQUFVLEdBQUcsSUFBSSxDQUFBO1FBQ25CLENBQUM7UUFFRCxPQUFPLFVBQVUsR0FBRyxHQUFHLEdBQUcsYUFBYSxDQUFDO0lBQzFDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZvcm1hdERhdGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5cclxuaW1wb3J0IHsgU2VsZWN0SXRlbSB9IGZyb20gJ3ByaW1lbmcvYXBpL3NlbGVjdGl0ZW0nO1xyXG5pbXBvcnQgeyBNZWNyYVR1cmxlcmksIE1lY3JhVHVybGVyaVN0ciB9IGZyb20gJ2xpbWl0bmcvYXBpL21vZGVscy9lbnVtcyc7XHJcblxyXG5leHBvcnQgY2xhc3MgR2xvYmFsRnVuY3Rpb25zIHtcclxuICBzdGF0aWMgc2hhZGVDb2xvcihjb2xvcjogc3RyaW5nLCBwZXJjZW50OiBudW1iZXIpIHtcclxuXHJcbiAgICBsZXQgUiA9IHBhcnNlSW50KGNvbG9yLnN1YnN0cmluZygxLCAzKSwgMTYpO1xyXG4gICAgbGV0IEcgPSBwYXJzZUludChjb2xvci5zdWJzdHJpbmcoMywgNSksIDE2KTtcclxuICAgIGxldCBCID0gcGFyc2VJbnQoY29sb3Iuc3Vic3RyaW5nKDUsIDcpLCAxNik7XHJcblxyXG4gICAgUiA9IHBhcnNlSW50KChSICogKDEwMCArIHBlcmNlbnQpIC8gMTAwKS50b1N0cmluZygpLCAwKTtcclxuICAgIEcgPSBwYXJzZUludCgoRyAqICgxMDAgKyBwZXJjZW50KSAvIDEwMCkudG9TdHJpbmcoKSwgMCk7XHJcbiAgICBCID0gcGFyc2VJbnQoKEIgKiAoMTAwICsgcGVyY2VudCkgLyAxMDApLnRvU3RyaW5nKCksIDApO1xyXG5cclxuICAgIFIgPSAoUiA8IDI1NSkgPyBSIDogMjU1O1xyXG4gICAgRyA9IChHIDwgMjU1KSA/IEcgOiAyNTU7XHJcbiAgICBCID0gKEIgPCAyNTUpID8gQiA6IDI1NTtcclxuXHJcbiAgICBjb25zdCBSUiA9ICgoUi50b1N0cmluZygxNikubGVuZ3RoID09PSAxKSA/ICcwJyArIFIudG9TdHJpbmcoMTYpIDogUi50b1N0cmluZygxNikpO1xyXG4gICAgY29uc3QgR0cgPSAoKEcudG9TdHJpbmcoMTYpLmxlbmd0aCA9PT0gMSkgPyAnMCcgKyBHLnRvU3RyaW5nKDE2KSA6IEcudG9TdHJpbmcoMTYpKTtcclxuICAgIGNvbnN0IEJCID0gKChCLnRvU3RyaW5nKDE2KS5sZW5ndGggPT09IDEpID8gJzAnICsgQi50b1N0cmluZygxNikgOiBCLnRvU3RyaW5nKDE2KSk7XHJcblxyXG4gICAgcmV0dXJuICcjJyArIFJSICsgR0cgKyBCQjtcclxuICB9XHJcblxyXG4gIHN0YXRpYyB5YXJpbVNhYXRlWXV2YXJsYSh2YWx1ZTogbnVtYmVyLCBzdGVwUGFyYW06IG51bWJlcikge1xyXG4gICAgY29uc3Qgc3RlcCA9IHN0ZXBQYXJhbSB8fCAoc3RlcFBhcmFtID0gMS4wKTtcclxuICAgIGNvbnN0IGludiA9IDEuMCAvIHN0ZXA7XHJcbiAgICByZXR1cm4gTWF0aC5yb3VuZCh2YWx1ZSAqIGludikgLyBpbnY7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgZXZlblJvdW5kKG51bTogbnVtYmVyLCBkZWNpbWFsUGxhY2VzOiBudW1iZXIpOiBudW1iZXIge1xyXG4gICAgY29uc3QgZCA9IGRlY2ltYWxQbGFjZXMgfHwgMDtcclxuICAgIGNvbnN0IG0gPSBNYXRoLnBvdygxMCwgZCk7XHJcbiAgICBjb25zdCBuID0gKyhkID8gbnVtICogbSA6IG51bSkudG9GaXhlZCg4KTsgLy8gQXZvaWQgcm91bmRpbmcgZXJyb3JzXHJcbiAgICBjb25zdCBpID0gTWF0aC5mbG9vcihuKTtcclxuICAgIGNvbnN0IGYgPSBuIC0gaTtcclxuICAgIGNvbnN0IGUgPSAxZS04OyAvLyBBbGxvdyBmb3Igcm91bmRpbmcgZXJyb3JzIGluIGZcclxuICAgIGNvbnN0IHIgPSAoZiA+IDAuNSAtIGUgJiYgZiA8IDAuNSArIGUpID8gKChpICUgMiA9PT0gMCkgPyBpIDogaSArIDEpIDogTWF0aC5yb3VuZChuKTtcclxuICAgIHJldHVybiBkID8gciAvIG0gOiByO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIHJvdW5kSWtpSGFuZShwYXJhbTogbnVtYmVyKTogbnVtYmVyIHtcclxuICAgIHJldHVybiBNYXRoLmZsb29yKHBhcmFtICogMTAwKSAvIDEwMDtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBpa2lTYXlpRmFyayhwYXJhbTE6IG51bWJlciwgcGFyYW0yOiBudW1iZXIpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIE1hdGgucm91bmQoKHBhcmFtMSAtIHBhcmFtMikgKiAxMDApIC8gMTAwO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGlraVNheWlUb3BsYShwYXJhbTE6IG51bWJlciwgcGFyYW0yOiBudW1iZXIpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIE1hdGgucm91bmQoKHBhcmFtMSArIHBhcmFtMikgKiAxMDApIC8gMTAwO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIHN0clRvTnVtYmVyKG1ldGluOiBzdHJpbmcpOiBudW1iZXIge1xyXG4gICAgbGV0IHN0ciA9IG1ldGluO1xyXG4gICAgc3RyID0gc3RyLnNwbGl0KCcsJykuam9pbignLicpO1xyXG4gICAgY29uc3QgcmVnZXggPSAvW15cXGQuLV0vZztcclxuICAgIHN0ciA9IHN0ci5yZXBsYWNlKHJlZ2V4LCAnJyk7XHJcbiAgICBjb25zdCBhcnIgPSBzdHIuc3BsaXQoJy4nKTtcclxuICAgIGlmIChhcnIubGVuZ3RoID4gMikgeyAvLyBCaXJkZW4gw6dvayBub2t0YSB2YXJzYVxyXG4gICAgICBjb25zdCBzb24gPSBhcnIucG9wKCk7XHJcbiAgICAgIHN0ciA9IGFyci5qb2luKCcnKSArICcuJyArIHNvbjtcclxuICAgIH1cclxuICAgIHJldHVybiBOdW1iZXIoc3RyKTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBzdXR1blN0clZlcihnZW5pc2xpazogbnVtYmVyKTogc3RyaW5nIHtcclxuICAgIGlmIChnZW5pc2xpayA8IDU3NikgeyByZXR1cm4gJ3hzJzsgfVxyXG4gICAgaWYgKGdlbmlzbGlrIDwgNzY4KSB7IHJldHVybiAnc20nOyB9XHJcbiAgICBpZiAoZ2VuaXNsaWsgPCA5OTIpIHsgcmV0dXJuICdtZCc7IH1cclxuICAgIGlmIChnZW5pc2xpayA8IDEyMDApIHsgcmV0dXJuICdsZyc7IH1cclxuICAgIHJldHVybiAneGwnO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIHN1dHVuR2VuTm9WZXIoZ2VuaXNsaWs6IG51bWJlcik6IG51bWJlciB7XHJcbiAgICBpZiAoZ2VuaXNsaWsgPCA1NzYpIHsgcmV0dXJuIDE7IH1cclxuICAgIGlmIChnZW5pc2xpayA8IDc2OCkgeyByZXR1cm4gMjsgfVxyXG4gICAgaWYgKGdlbmlzbGlrIDwgOTkyKSB7IHJldHVybiAzOyB9XHJcbiAgICBpZiAoZ2VuaXNsaWsgPCAxMjAwKSB7IHJldHVybiA0OyB9XHJcbiAgICByZXR1cm4gNTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBkYXRlVG9UZXh0KHRhcmloOiBEYXRlKTogc3RyaW5nIHtcclxuICAgIGlmICgodGFyaWggIT09IHVuZGVmaW5lZCkgJiYgKHRhcmloICE9PSBudWxsKSkge1xyXG4gICAgICByZXR1cm4gdGFyaWguZ2V0RGF0ZSgpLnRvU3RyaW5nKCkgKyAnLicgKyAodGFyaWguZ2V0TW9udGgoKSArIDEpLnRvU3RyaW5nKCkgKyAnLicgKyB0YXJpaC5nZXRGdWxsWWVhcigpLnRvU3RyaW5nKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gJyc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgYXlJbGtHdW4oYXk6IG51bWJlciwgeWlsOiBudW1iZXIpOiBEYXRlIHtcclxuICAgIHJldHVybiBuZXcgRGF0ZSh5aWwsIGF5IC0gMSk7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgYXlTb25HdW4oYXk6IG51bWJlciwgeWlsOiBudW1iZXIpOiBEYXRlIHtcclxuICAgIHJldHVybiBuZXcgRGF0ZSh5aWwsIGF5LCAwKTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBKU09ORGF0ZVRvRGF0ZSh0YXJpaDogRGF0ZSk6IERhdGUge1xyXG4gICAgaWYgKCh0YXJpaCAhPT0gdW5kZWZpbmVkKSAmJiAodGFyaWggIT09IG51bGwpKSB7XHJcbiAgICAgIGNvbnN0IHRlbXAgPSB0YXJpaC50b1N0cmluZygpO1xyXG4gICAgICBpZiAodGVtcCAhPT0gJzAwMDAtMDAtMDAnKSB7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBEYXRlKHRlbXApO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcblxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3RhdGljIGF5QWRpVmVyKGF5Tm86IG51bWJlciwgY3VsdHVyZTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHN3aXRjaCAoY3VsdHVyZSkge1xyXG4gICAgICBjYXNlICdlbi1VUyc6IHtcclxuICAgICAgICBzd2l0Y2ggKGF5Tm8pIHtcclxuICAgICAgICAgIGNhc2UgMTpcclxuICAgICAgICAgICAgcmV0dXJuICdKYW51YXJ5JztcclxuICAgICAgICAgIGNhc2UgMjpcclxuICAgICAgICAgICAgcmV0dXJuICdGZWJydWFyeSc7XHJcbiAgICAgICAgICBjYXNlIDM6XHJcbiAgICAgICAgICAgIHJldHVybiAnTWFyY2gnO1xyXG4gICAgICAgICAgY2FzZSA0OlxyXG4gICAgICAgICAgICByZXR1cm4gJ0FwcmlsJztcclxuICAgICAgICAgIGNhc2UgNTpcclxuICAgICAgICAgICAgcmV0dXJuICdNYXknO1xyXG4gICAgICAgICAgY2FzZSA2OlxyXG4gICAgICAgICAgICByZXR1cm4gJ0p1bmUnO1xyXG4gICAgICAgICAgY2FzZSA3OlxyXG4gICAgICAgICAgICByZXR1cm4gJ0p1bHknO1xyXG4gICAgICAgICAgY2FzZSA4OlxyXG4gICAgICAgICAgICByZXR1cm4gJ0F1Z3VzdCc7XHJcbiAgICAgICAgICBjYXNlIDk6XHJcbiAgICAgICAgICAgIHJldHVybiAnU2VwdGVtYmVyJztcclxuICAgICAgICAgIGNhc2UgMTA6XHJcbiAgICAgICAgICAgIHJldHVybiAnT2N0b2Jlcic7XHJcbiAgICAgICAgICBjYXNlIDExOlxyXG4gICAgICAgICAgICByZXR1cm4gJ05vdmVtYmVyJztcclxuICAgICAgICAgIGNhc2UgMTI6XHJcbiAgICAgICAgICAgIHJldHVybiAnRGVjZW1iZXInO1xyXG4gICAgICAgICAgZGVmYXVsdDoge1xyXG4gICAgICAgICAgICByZXR1cm4gJyc7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGRlZmF1bHQ6IHtcclxuICAgICAgICBzd2l0Y2ggKGF5Tm8pIHtcclxuICAgICAgICAgIGNhc2UgMTpcclxuICAgICAgICAgICAgcmV0dXJuICdPY2FrJztcclxuICAgICAgICAgIGNhc2UgMjpcclxuICAgICAgICAgICAgcmV0dXJuICfFnnViYXQnO1xyXG4gICAgICAgICAgY2FzZSAzOlxyXG4gICAgICAgICAgICByZXR1cm4gJ01hcnQnO1xyXG4gICAgICAgICAgY2FzZSA0OlxyXG4gICAgICAgICAgICByZXR1cm4gJ05pc2FuJztcclxuICAgICAgICAgIGNhc2UgNTpcclxuICAgICAgICAgICAgcmV0dXJuICdNYXnEsXMnO1xyXG4gICAgICAgICAgY2FzZSA2OlxyXG4gICAgICAgICAgICByZXR1cm4gJ0hhemlyYW4nO1xyXG4gICAgICAgICAgY2FzZSA3OlxyXG4gICAgICAgICAgICByZXR1cm4gJ1RlbW11eic7XHJcbiAgICAgICAgICBjYXNlIDg6XHJcbiAgICAgICAgICAgIHJldHVybiAnQcSfdXN0b3MnO1xyXG4gICAgICAgICAgY2FzZSA5OlxyXG4gICAgICAgICAgICByZXR1cm4gJ0V5bMO8bCc7XHJcbiAgICAgICAgICBjYXNlIDEwOlxyXG4gICAgICAgICAgICByZXR1cm4gJ0VraW0nO1xyXG4gICAgICAgICAgY2FzZSAxMTpcclxuICAgICAgICAgICAgcmV0dXJuICdLYXPEsW0nO1xyXG4gICAgICAgICAgY2FzZSAxMjpcclxuICAgICAgICAgICAgcmV0dXJuICdBcmFsxLFrJztcclxuICAgICAgICAgIGRlZmF1bHQ6IHtcclxuICAgICAgICAgICAgcmV0dXJuICcnO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3RhdGljIGF5QWRpVmVyS2lzYShheU5vOiBudW1iZXIsIGN1bHR1cmU6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBzd2l0Y2ggKGN1bHR1cmUpIHtcclxuICAgICAgY2FzZSAnZW4tVVMnOiB7XHJcbiAgICAgICAgc3dpdGNoIChheU5vKSB7XHJcbiAgICAgICAgICBjYXNlIDE6XHJcbiAgICAgICAgICAgIHJldHVybiAnSmFuJztcclxuICAgICAgICAgIGNhc2UgMjpcclxuICAgICAgICAgICAgcmV0dXJuICdGZWInO1xyXG4gICAgICAgICAgY2FzZSAzOlxyXG4gICAgICAgICAgICByZXR1cm4gJ01hcic7XHJcbiAgICAgICAgICBjYXNlIDQ6XHJcbiAgICAgICAgICAgIHJldHVybiAnQXByJztcclxuICAgICAgICAgIGNhc2UgNTpcclxuICAgICAgICAgICAgcmV0dXJuICdNYXknO1xyXG4gICAgICAgICAgY2FzZSA2OlxyXG4gICAgICAgICAgICByZXR1cm4gJ0p1bic7XHJcbiAgICAgICAgICBjYXNlIDc6XHJcbiAgICAgICAgICAgIHJldHVybiAnSnVsJztcclxuICAgICAgICAgIGNhc2UgODpcclxuICAgICAgICAgICAgcmV0dXJuICdBdWcnO1xyXG4gICAgICAgICAgY2FzZSA5OlxyXG4gICAgICAgICAgICByZXR1cm4gJ1NlcCc7XHJcbiAgICAgICAgICBjYXNlIDEwOlxyXG4gICAgICAgICAgICByZXR1cm4gJ09jdCc7XHJcbiAgICAgICAgICBjYXNlIDExOlxyXG4gICAgICAgICAgICByZXR1cm4gJ05vdic7XHJcbiAgICAgICAgICBjYXNlIDEyOlxyXG4gICAgICAgICAgICByZXR1cm4gJ0RlYyc7XHJcbiAgICAgICAgICBkZWZhdWx0OiB7XHJcbiAgICAgICAgICAgIHJldHVybiAnJztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgZGVmYXVsdDoge1xyXG4gICAgICAgIHN3aXRjaCAoYXlObykge1xyXG4gICAgICAgICAgY2FzZSAxOlxyXG4gICAgICAgICAgICByZXR1cm4gJ09jYSc7XHJcbiAgICAgICAgICBjYXNlIDI6XHJcbiAgICAgICAgICAgIHJldHVybiAnxZ51Yic7XHJcbiAgICAgICAgICBjYXNlIDM6XHJcbiAgICAgICAgICAgIHJldHVybiAnTWFyJztcclxuICAgICAgICAgIGNhc2UgNDpcclxuICAgICAgICAgICAgcmV0dXJuICdOaXMnO1xyXG4gICAgICAgICAgY2FzZSA1OlxyXG4gICAgICAgICAgICByZXR1cm4gJ01heSc7XHJcbiAgICAgICAgICBjYXNlIDY6XHJcbiAgICAgICAgICAgIHJldHVybiAnSGF6JztcclxuICAgICAgICAgIGNhc2UgNzpcclxuICAgICAgICAgICAgcmV0dXJuICdUZW0nO1xyXG4gICAgICAgICAgY2FzZSA4OlxyXG4gICAgICAgICAgICByZXR1cm4gJ0HEn3UnO1xyXG4gICAgICAgICAgY2FzZSA5OlxyXG4gICAgICAgICAgICByZXR1cm4gJ0V5bCc7XHJcbiAgICAgICAgICBjYXNlIDEwOlxyXG4gICAgICAgICAgICByZXR1cm4gJ0VraSc7XHJcbiAgICAgICAgICBjYXNlIDExOlxyXG4gICAgICAgICAgICByZXR1cm4gJ0thcyc7XHJcbiAgICAgICAgICBjYXNlIDEyOlxyXG4gICAgICAgICAgICByZXR1cm4gJ0FyYSc7XHJcbiAgICAgICAgICBkZWZhdWx0OiB7XHJcbiAgICAgICAgICAgIHJldHVybiAnJztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICBzdGF0aWMgYXlOb1ZlcihheTogc3RyaW5nKTogbnVtYmVyIHtcclxuICAgIHN3aXRjaCAoYXkpIHtcclxuICAgICAgY2FzZSAnT2NhJzogY2FzZSAnT2Nhayc6IGNhc2UgJ0phbic6IGNhc2UgJ0phbnVhcnknOlxyXG4gICAgICAgIHJldHVybiAxO1xyXG4gICAgICBjYXNlICfFnnViJzogY2FzZSAnxZ51YmF0JzogY2FzZSAnRmViJzogY2FzZSAnRmVicnVhcnknOlxyXG4gICAgICAgIHJldHVybiAyO1xyXG4gICAgICBjYXNlICdNYXInOiBjYXNlICdNYXJ0JzogY2FzZSAnTWFyY2gnOlxyXG4gICAgICAgIHJldHVybiAzO1xyXG4gICAgICBjYXNlICdOaXMnOiBjYXNlICdOaXNhbic6IGNhc2UgJ0Fwcic6IGNhc2UgJ0FwcmlsJzpcclxuICAgICAgICByZXR1cm4gNDtcclxuICAgICAgY2FzZSAnTWF5JzogY2FzZSAnTWF5xLFzJzpcclxuICAgICAgICByZXR1cm4gNTtcclxuICAgICAgY2FzZSAnSGF6JzogY2FzZSAnSGF6aXJhbic6IGNhc2UgJ0p1bic6IGNhc2UgJ0p1bmUnOlxyXG4gICAgICAgIHJldHVybiA2O1xyXG4gICAgICBjYXNlICdUZW0nOiBjYXNlICdUZW1tdXonOiBjYXNlICdKdWwnOiBjYXNlICdKdWx5JzpcclxuICAgICAgICByZXR1cm4gNztcclxuICAgICAgY2FzZSAnQcSfdSc6IGNhc2UgJ0HEn3VzdG9zJzogY2FzZSAnQXVnJzogY2FzZSAnQXVndXN0JzpcclxuICAgICAgICByZXR1cm4gODtcclxuICAgICAgY2FzZSAnRXlsJzogY2FzZSAnRXlsw7xsJzogY2FzZSAnU2VwJzogY2FzZSAnU2VwdGVtYmVyJzpcclxuICAgICAgICByZXR1cm4gOTtcclxuICAgICAgY2FzZSAnRWtpJzogY2FzZSAnRWtpbSc6IGNhc2UgJ09jdCc6IGNhc2UgJ09jdG9iZXInOlxyXG4gICAgICAgIHJldHVybiAxMDtcclxuICAgICAgY2FzZSAnS2FzJzogY2FzZSAnS2FzxLFtJzogY2FzZSAnTm92JzogY2FzZSAnTm92ZW1iZXInOlxyXG4gICAgICAgIHJldHVybiAxMTtcclxuICAgICAgY2FzZSAnQXJhJzogY2FzZSAnQXJhbMSxayc6IGNhc2UgJ0RlYyc6IGNhc2UgJ0RlY2VtYmVyJzpcclxuICAgICAgICByZXR1cm4gMTI7XHJcbiAgICAgIGRlZmF1bHQ6IHtcclxuICAgICAgICByZXR1cm4gMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3RhdGljIGd1bkFkaVZlcihndW5ObzogbnVtYmVyLCBjdWx0dXJlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgc3dpdGNoIChjdWx0dXJlKSB7XHJcbiAgICAgIGNhc2UgJ2VuLVVTJzoge1xyXG4gICAgICAgIHN3aXRjaCAoZ3VuTm8pIHtcclxuICAgICAgICAgIGNhc2UgMTpcclxuICAgICAgICAgICAgcmV0dXJuICdNb25kYXknO1xyXG4gICAgICAgICAgY2FzZSAyOlxyXG4gICAgICAgICAgICByZXR1cm4gJ1R1ZXNkYXknO1xyXG4gICAgICAgICAgY2FzZSAzOlxyXG4gICAgICAgICAgICByZXR1cm4gJ1dlZG5lc2RheSc7XHJcbiAgICAgICAgICBjYXNlIDQ6XHJcbiAgICAgICAgICAgIHJldHVybiAnVGh1cnNkYXknO1xyXG4gICAgICAgICAgY2FzZSA1OlxyXG4gICAgICAgICAgICByZXR1cm4gJ0ZyaWRheSc7XHJcbiAgICAgICAgICBjYXNlIDY6XHJcbiAgICAgICAgICAgIHJldHVybiAnU2F0dXJkYXknO1xyXG4gICAgICAgICAgY2FzZSAwOlxyXG4gICAgICAgICAgICByZXR1cm4gJ1N1bmRheSc7XHJcbiAgICAgICAgICBkZWZhdWx0OiB7XHJcbiAgICAgICAgICAgIHJldHVybiAnJztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgZGVmYXVsdDoge1xyXG4gICAgICAgIHN3aXRjaCAoZ3VuTm8pIHtcclxuICAgICAgICAgIGNhc2UgMTpcclxuICAgICAgICAgICAgcmV0dXJuICdQYXphcnRlc2knO1xyXG4gICAgICAgICAgY2FzZSAyOlxyXG4gICAgICAgICAgICByZXR1cm4gJ1NhbMSxJztcclxuICAgICAgICAgIGNhc2UgMzpcclxuICAgICAgICAgICAgcmV0dXJuICfDh2FyxZ9hbWJhJztcclxuICAgICAgICAgIGNhc2UgNDpcclxuICAgICAgICAgICAgcmV0dXJuICdQZXLFn2VtYmUnO1xyXG4gICAgICAgICAgY2FzZSA1OlxyXG4gICAgICAgICAgICByZXR1cm4gJ0N1bWEnO1xyXG4gICAgICAgICAgY2FzZSA2OlxyXG4gICAgICAgICAgICByZXR1cm4gJ0N1bWFydGVzaSc7XHJcbiAgICAgICAgICBjYXNlIDA6XHJcbiAgICAgICAgICAgIHJldHVybiAnUGF6YXInO1xyXG4gICAgICAgICAgZGVmYXVsdDoge1xyXG4gICAgICAgICAgICByZXR1cm4gJyc7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgZ3VuQXJ0dGlyQXphbHQodGFyaWg6IERhdGUsIGd1blNheWlzaTogbnVtYmVyKTogRGF0ZSB7XHJcbiAgICByZXR1cm4gbmV3IERhdGUodGFyaWguZ2V0VGltZSgpICsgZ3VuU2F5aXNpICogMjQgKiA2MCAqIDYwICogMTAwMCk7XHJcblxyXG4gIH1cclxuXHJcbiAgc3RhdGljIHRhcmloUGFyYW1Ub0RhdGUocGFyYW06IHN0cmluZyk6IERhdGUge1xyXG4gICAgbGV0IHRhcmloOiBEYXRlID0gbmV3IERhdGUoKTtcclxuICAgIGlmIChwYXJhbSAhPT0gbnVsbCkge1xyXG4gICAgICBjb25zdCB0YXJpaEFycjogc3RyaW5nW10gPSBwYXJhbS5zcGxpdCgnLScpO1xyXG4gICAgICBpZiAodGFyaWhBcnIubGVuZ3RoID4gMikge1xyXG4gICAgICAgIGNvbnN0IGd1biA9IE51bWJlcih0YXJpaEFyclswXSk7XHJcbiAgICAgICAgY29uc3QgYXkgPSBOdW1iZXIodGFyaWhBcnJbMV0pIC0gMTtcclxuICAgICAgICBjb25zdCB5aWwgPSBOdW1iZXIodGFyaWhBcnJbMl0pO1xyXG4gICAgICAgIHRhcmloID0gbmV3IERhdGUoeWlsLCBheSwgZ3VuKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRhcmloO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGRhdGVUb1RhcmloUGFyYW0ocGFyYW06IERhdGUpOiBzdHJpbmcge1xyXG4gICAgaWYgKHBhcmFtICE9PSBudWxsKSB7XHJcbiAgICAgIGNvbnN0IGd1biA9IHBhcmFtLmdldERhdGUoKTtcclxuICAgICAgY29uc3QgYXkgPSBwYXJhbS5nZXRNb250aCgpICsgMTtcclxuICAgICAgY29uc3QgeWlsID0gcGFyYW0uZ2V0RnVsbFllYXIoKTtcclxuICAgICAgcmV0dXJuIGd1bi50b1N0cmluZygpICsgJy0nICsgYXkudG9TdHJpbmcoKSArICctJyArIHlpbC50b1N0cmluZygpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3RhdGljIGdldEZpbGVFeHRlbnNpb24oZmlsZTogRmlsZSk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gJy4nICsgZmlsZS5uYW1lLnNwbGl0KCcuJykucG9wKCk7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgaGV4VG9SR0JBKGhleDogc3RyaW5nLCBhbHBoYTogbnVtYmVyKSB7XHJcbiAgICAvLyBjb25zb2xlLmxvZyhoZXgpO1xyXG4gICAgY29uc3QgciA9IHBhcnNlSW50KGhleC5zbGljZSgxLCAzKSwgMTYpO1xyXG4gICAgY29uc3QgZyA9IHBhcnNlSW50KGhleC5zbGljZSgzLCA1KSwgMTYpO1xyXG4gICAgY29uc3QgYiA9IHBhcnNlSW50KGhleC5zbGljZSg1LCA3KSwgMTYpO1xyXG5cclxuICAgIC8vIHJldHVybiByICsgJywnICsgZyArICcsJyArIGI7XHJcblxyXG4gICAgaWYgKGFscGhhKSB7XHJcbiAgICAgIHJldHVybiBgcmdiYSgke3J9LCAke2d9LCAke2J9LCAke2FscGhhfSlgO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIGByZ2JhKCR7cn0sICR7Z30sICR7Yn0pYDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHN0YXRpYyBjb2xvck5hbWVUb0hleChjb2xvcikge1xyXG4gICAgY29uc3QgY29sb3JzID0ge1xyXG4gICAgICBhbGljZWJsdWU6ICcjZjBmOGZmJywgYW50aXF1ZXdoaXRlOiAnI2ZhZWJkNycsIGFxdWE6ICcjMDBmZmZmJywgYXF1YW1hcmluZTogJyM3ZmZmZDQnLCBhenVyZTogJyNmMGZmZmYnLFxyXG4gICAgICBiZWlnZTogJyNmNWY1ZGMnLCBiaXNxdWU6ICcjZmZlNGM0JywgYmxhY2s6ICcjMDAwMDAwJywgYmxhbmNoZWRhbG1vbmQ6ICcjZmZlYmNkJywgYmx1ZTogJyMwMDAwZmYnLCBibHVldmlvbGV0OiAnIzhhMmJlMicsIGJyb3duOiAnI2E1MmEyYScsIGJ1cmx5d29vZDogJyNkZWI4ODcnLFxyXG4gICAgICBjYWRldGJsdWU6ICcjNWY5ZWEwJywgY2hhcnRyZXVzZTogJyM3ZmZmMDAnLCBjaG9jb2xhdGU6ICcjZDI2OTFlJywgY29yYWw6ICcjZmY3ZjUwJywgY29ybmZsb3dlcmJsdWU6ICcjNjQ5NWVkJywgY29ybnNpbGs6ICcjZmZmOGRjJywgY3JpbXNvbjogJyNkYzE0M2MnLCBjeWFuOiAnIzAwZmZmZicsXHJcbiAgICAgIGRhcmtibHVlOiAnIzAwMDA4YicsIGRhcmtjeWFuOiAnIzAwOGI4YicsIGRhcmtnb2xkZW5yb2Q6ICcjYjg4NjBiJywgZGFya2dyYXk6ICcjYTlhOWE5JywgZGFya2dyZWVuOiAnIzAwNjQwMCcsIGRhcmtraGFraTogJyNiZGI3NmInLCBkYXJrbWFnZW50YTogJyM4YjAwOGInLCBkYXJrb2xpdmVncmVlbjogJyM1NTZiMmYnLFxyXG4gICAgICBkYXJrb3JhbmdlOiAnI2ZmOGMwMCcsIGRhcmtvcmNoaWQ6ICcjOTkzMmNjJywgZGFya3JlZDogJyM4YjAwMDAnLCBkYXJrc2FsbW9uOiAnI2U5OTY3YScsIGRhcmtzZWFncmVlbjogJyM4ZmJjOGYnLCBkYXJrc2xhdGVibHVlOiAnIzQ4M2Q4YicsIGRhcmtzbGF0ZWdyYXk6ICcjMmY0ZjRmJywgZGFya3R1cnF1b2lzZTogJyMwMGNlZDEnLFxyXG4gICAgICBkYXJrdmlvbGV0OiAnIzk0MDBkMycsIGRlZXBwaW5rOiAnI2ZmMTQ5MycsIGRlZXBza3libHVlOiAnIzAwYmZmZicsIGRpbWdyYXk6ICcjNjk2OTY5JywgZG9kZ2VyYmx1ZTogJyMxZTkwZmYnLFxyXG4gICAgICBmaXJlYnJpY2s6ICcjYjIyMjIyJywgZmxvcmFsd2hpdGU6ICcjZmZmYWYwJywgZm9yZXN0Z3JlZW46ICcjMjI4YjIyJywgZnVjaHNpYTogJyNmZjAwZmYnLFxyXG4gICAgICBnYWluc2Jvcm86ICcjZGNkY2RjJywgZ2hvc3R3aGl0ZTogJyNmOGY4ZmYnLCBnb2xkOiAnI2ZmZDcwMCcsIGdvbGRlbnJvZDogJyNkYWE1MjAnLCBncmF5OiAnIzgwODA4MCcsIGdyZWVuOiAnIzAwODAwMCcsIGdyZWVueWVsbG93OiAnI2FkZmYyZicsXHJcbiAgICAgIGhvbmV5ZGV3OiAnI2YwZmZmMCcsIGhvdHBpbms6ICcjZmY2OWI0JyxcclxuICAgICAgaW5kaWFucmVkOiAnI2NkNWM1YycsIGluZGlnbzogJyM0YjAwODInLCBpdm9yeTogJyNmZmZmZjAnLCBraGFraTogJyNmMGU2OGMnLFxyXG4gICAgICBsYXZlbmRlcjogJyNlNmU2ZmEnLCBsYXZlbmRlcmJsdXNoOiAnI2ZmZjBmNScsIGxhd25ncmVlbjogJyM3Y2ZjMDAnLCBsZW1vbmNoaWZmb246ICcjZmZmYWNkJywgbGlnaHRibHVlOiAnI2FkZDhlNicsIGxpZ2h0Y29yYWw6ICcjZjA4MDgwJywgbGlnaHRjeWFuOiAnI2UwZmZmZicsIGxpZ2h0Z29sZGVucm9keWVsbG93OiAnI2ZhZmFkMicsXHJcbiAgICAgIGxpZ2h0Z3JleTogJyNkM2QzZDMnLCBsaWdodGdyZWVuOiAnIzkwZWU5MCcsIGxpZ2h0cGluazogJyNmZmI2YzEnLCBsaWdodHNhbG1vbjogJyNmZmEwN2EnLCBsaWdodHNlYWdyZWVuOiAnIzIwYjJhYScsIGxpZ2h0c2t5Ymx1ZTogJyM4N2NlZmEnLCBsaWdodHNsYXRlZ3JheTogJyM3Nzg4OTknLCBsaWdodHN0ZWVsYmx1ZTogJyNiMGM0ZGUnLFxyXG4gICAgICBsaWdodHllbGxvdzogJyNmZmZmZTAnLCBsaW1lOiAnIzAwZmYwMCcsIGxpbWVncmVlbjogJyMzMmNkMzInLCBsaW5lbjogJyNmYWYwZTYnLFxyXG4gICAgICBtYWdlbnRhOiAnI2ZmMDBmZicsIG1hcm9vbjogJyM4MDAwMDAnLCBtZWRpdW1hcXVhbWFyaW5lOiAnIzY2Y2RhYScsIG1lZGl1bWJsdWU6ICcjMDAwMGNkJywgbWVkaXVtb3JjaGlkOiAnI2JhNTVkMycsIG1lZGl1bXB1cnBsZTogJyM5MzcwZDgnLCBtZWRpdW1zZWFncmVlbjogJyMzY2IzNzEnLCBtZWRpdW1zbGF0ZWJsdWU6ICcjN2I2OGVlJyxcclxuICAgICAgbWVkaXVtc3ByaW5nZ3JlZW46ICcjMDBmYTlhJywgbWVkaXVtdHVycXVvaXNlOiAnIzQ4ZDFjYycsIG1lZGl1bXZpb2xldHJlZDogJyNjNzE1ODUnLCBtaWRuaWdodGJsdWU6ICcjMTkxOTcwJywgbWludGNyZWFtOiAnI2Y1ZmZmYScsIG1pc3R5cm9zZTogJyNmZmU0ZTEnLCBtb2NjYXNpbjogJyNmZmU0YjUnLFxyXG4gICAgICBuYXZham93aGl0ZTogJyNmZmRlYWQnLCBuYXZ5OiAnIzAwMDA4MCcsXHJcbiAgICAgIG9sZGxhY2U6ICcjZmRmNWU2Jywgb2xpdmU6ICcjODA4MDAwJywgb2xpdmVkcmFiOiAnIzZiOGUyMycsIG9yYW5nZTogJyNmZmE1MDAnLCBvcmFuZ2VyZWQ6ICcjZmY0NTAwJywgb3JjaGlkOiAnI2RhNzBkNicsXHJcbiAgICAgIHBhbGVnb2xkZW5yb2Q6ICcjZWVlOGFhJywgcGFsZWdyZWVuOiAnIzk4ZmI5OCcsIHBhbGV0dXJxdW9pc2U6ICcjYWZlZWVlJywgcGFsZXZpb2xldHJlZDogJyNkODcwOTMnLCBwYXBheWF3aGlwOiAnI2ZmZWZkNScsIHBlYWNocHVmZjogJyNmZmRhYjknLCBwZXJ1OiAnI2NkODUzZicsIHBpbms6ICcjZmZjMGNiJywgcGx1bTogJyNkZGEwZGQnLCBwb3dkZXJibHVlOiAnI2IwZTBlNicsIHB1cnBsZTogJyM4MDAwODAnLFxyXG4gICAgICByZWJlY2NhcHVycGxlOiAnIzY2MzM5OScsIHJlZDogJyNmZjAwMDAnLCByb3N5YnJvd246ICcjYmM4ZjhmJywgcm95YWxibHVlOiAnIzQxNjllMScsXHJcbiAgICAgIHNhZGRsZWJyb3duOiAnIzhiNDUxMycsIHNhbG1vbjogJyNmYTgwNzInLCBzYW5keWJyb3duOiAnI2Y0YTQ2MCcsIHNlYWdyZWVuOiAnIzJlOGI1NycsIHNlYXNoZWxsOiAnI2ZmZjVlZScsIHNpZW5uYTogJyNhMDUyMmQnLCBzaWx2ZXI6ICcjYzBjMGMwJywgc2t5Ymx1ZTogJyM4N2NlZWInLCBzbGF0ZWJsdWU6ICcjNmE1YWNkJywgc2xhdGVncmF5OiAnIzcwODA5MCcsIHNub3c6ICcjZmZmYWZhJywgc3ByaW5nZ3JlZW46ICcjMDBmZjdmJywgc3RlZWxibHVlOiAnIzQ2ODJiNCcsXHJcbiAgICAgIHRhbjogJyNkMmI0OGMnLCB0ZWFsOiAnIzAwODA4MCcsIHRoaXN0bGU6ICcjZDhiZmQ4JywgdG9tYXRvOiAnI2ZmNjM0NycsIHR1cnF1b2lzZTogJyM0MGUwZDAnLFxyXG4gICAgICB2aW9sZXQ6ICcjZWU4MmVlJyxcclxuICAgICAgd2hlYXQ6ICcjZjVkZWIzJywgd2hpdGU6ICcjZmZmZmZmJywgd2hpdGVzbW9rZTogJyNmNWY1ZjUnLFxyXG4gICAgICB5ZWxsb3c6ICcjZmZmZjAwJywgeWVsbG93Z3JlZW46ICcjOWFjZDMyJ1xyXG4gICAgfTtcclxuXHJcbiAgICBpZiAodHlwZW9mIGNvbG9yc1tjb2xvci50b0xvd2VyQ2FzZSgpXSAhPT0gJ3VuZGVmaW5lZCcpIHtcclxuICAgICAgcmV0dXJuIGNvbG9yc1tjb2xvci50b0xvd2VyQ2FzZSgpXTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gY29sb3I7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgZ2V0RmlsZW5hbWVGcm9tQ29udGVudERpc3Bvc2l0aW9uKGNvbnRlbnREaXNwb3NpdGlvbjogc3RyaW5nKSB7XHJcbiAgICBjb25zdCByZWdleCA9IC9maWxlbmFtZVteOz1cXG5dKj0oVVRGLTgoWydcIl0qKSk/KC4qKS87XHJcbiAgICBjb25zdCBtYXRjaGVzID0gcmVnZXguZXhlYyhjb250ZW50RGlzcG9zaXRpb24pO1xyXG4gICAgbGV0IGZpbGVuYW1lID0gJyc7XHJcblxyXG4gICAgaWYgKG1hdGNoZXMgIT0gbnVsbCAmJiBtYXRjaGVzWzNdKSB7XHJcbiAgICAgIGZpbGVuYW1lID0gbWF0Y2hlc1szXS5yZXBsYWNlKC9bJ1wiXS9nLCAnJyk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGRlY29kZVVSSShmaWxlbmFtZSk7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgdGVtYUd1bk5vVmVyKCk6IG51bWJlciB7XHJcbiAgICBjb25zdCBkbiA9IG5ldyBEYXRlKCkuZ2V0RGF5KCk7XHJcbiAgICBpZiAoZG4gPT09IDApIHtcclxuICAgICAgcmV0dXJuIDY7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgcmV0dXJuIGRuO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3RhdGljIGNpZnRCb3NsdWtUZWtZYXAobWV0aW46IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gbWV0aW4ucmVwbGFjZSgvXFxzKy9nLCAnICcpO1xyXG4gIH1cclxuXHJcbiAgLypcclxuICBzdGF0aWMgcmFrYW1sYXJpVGVtaXpsZShtZXRpbjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBtZXRpbi5yZXBsYWNlKC9bMC05XS9nLCAnJyk7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgYm9zbHVrbGFyaVRlbWl6bGUobWV0aW46IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gbWV0aW4ucmVwbGFjZSgvIC9nLCAnJyk7XHJcbiAgfVxyXG4qL1xyXG5cclxuICBzdGF0aWMgYnV5dWtIYXJmZUNldmlyKG1ldGluOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIG1ldGluLnRvTG9jYWxlVXBwZXJDYXNlKCd0ci1UUicpO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGlsa0hhcmZCdXl1dChtZXRpbjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IHV6dW5sdWsgPSBtZXRpbi5sZW5ndGg7XHJcbiAgICBpZiAodXp1bmx1ayA+IDApIHtcclxuICAgICAgaWYgKHV6dW5sdWsgPiAxKSB7XHJcbiAgICAgICAgcmV0dXJuIG1ldGluLnN1YnN0cmluZygwLCAxKS50b0xvY2FsZVVwcGVyQ2FzZSgndHItVFInKSArIG1ldGluLnN1YnN0cmluZygxKS50b0xvY2FsZUxvd2VyQ2FzZSgndHItVFInKTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIHtcclxuICAgICAgICByZXR1cm4gbWV0aW4uc3Vic3RyaW5nKDAsIDEpLnRvTG9jYWxlVXBwZXJDYXNlKCd0ci1UUicpO1xyXG5cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHJldHVybiAnJztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHN0YXRpYyB0dW1JbGtIYXJmQnV5dXQobWV0aW46IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBwYXJjYWxhciA9IG1ldGluLnNwbGl0KCcgJyk7XHJcbiAgICBjb25zdCBzb251Yzogc3RyaW5nW10gPSBbXTtcclxuICAgIHBhcmNhbGFyLmZvckVhY2gocGFyY2EgPT4ge1xyXG4gICAgICBzb251Yy5wdXNoKHRoaXMuaWxrSGFyZkJ1eXV0KHBhcmNhKSk7XHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gc29udWMuam9pbignICcpO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIHR1bUJvc2x1a1NpbChtZXRpbjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IHBhcmNhbGFyID0gbWV0aW4uc3BsaXQoJyAnKTtcclxuICAgIHJldHVybiBwYXJjYWxhci5qb2luKCcnKTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBrdWN1a0hhcmZBZGV0VmVyKG1ldGluOiBzdHJpbmcpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIG1ldGluLm1hdGNoKC9bYS16XS9nKS5sZW5ndGg7XHJcbiAgfVxyXG4gIHN0YXRpYyBidXl1a0hhcmZBZGV0VmVyKG1ldGluOiBzdHJpbmcpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIG1ldGluLm1hdGNoKC9bQS1aXS9nKS5sZW5ndGg7XHJcbiAgfVxyXG4gIHN0YXRpYyByYWthbUFkZXRWZXIobWV0aW46IHN0cmluZyk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gbWV0aW4ubWF0Y2goL1xcZC9nKS5sZW5ndGg7XHJcbiAgfVxyXG4gIHN0YXRpYyBoYXJmQWRldFZlcihtZXRpbjogc3RyaW5nKTogbnVtYmVyIHtcclxuICAgIHJldHVybiBtZXRpbi5yZXBsYWNlKC9bXkEtWl0vZ2ksICcnKS5sZW5ndGg7XHJcbiAgfVxyXG4gIHN0YXRpYyBvemVsS2FyYWt0ZXJTaWwobWV0aW46IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gbWV0aW4ucmVwbGFjZSgvW15cXHdcXHNdL2dpLCAnJyk7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgdHVya2NlQXlpa2xhKG1ldGluOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgbGV0IHNvbnVjID0gbWV0aW47XHJcbiAgICBzb251YyA9IHNvbnVjLnJlcGxhY2UoJ8OcJywgJ1UnKTtcclxuICAgIHNvbnVjID0gc29udWMucmVwbGFjZSgnxJ4nLCAnRycpO1xyXG4gICAgc29udWMgPSBzb251Yy5yZXBsYWNlKCfEsCcsICdJJyk7XHJcbiAgICBzb251YyA9IHNvbnVjLnJlcGxhY2UoJ8WeJywgJ1MnKTtcclxuICAgIHNvbnVjID0gc29udWMucmVwbGFjZSgnw4cnLCAnQycpO1xyXG4gICAgc29udWMgPSBzb251Yy5yZXBsYWNlKCfDlicsICdPJyk7XHJcblxyXG4gICAgc29udWMgPSBzb251Yy5yZXBsYWNlKCfDvCcsICd1Jyk7XHJcbiAgICBzb251YyA9IHNvbnVjLnJlcGxhY2UoJ8SfJywgJ2cnKTtcclxuICAgIHNvbnVjID0gc29udWMucmVwbGFjZSgnxLEnLCAnaScpO1xyXG4gICAgc29udWMgPSBzb251Yy5yZXBsYWNlKCfFnycsICdzJyk7XHJcbiAgICBzb251YyA9IHNvbnVjLnJlcGxhY2UoJ8OnJywgJ2MnKTtcclxuICAgIHNvbnVjID0gc29udWMucmVwbGFjZSgnw7YnLCAnbycpO1xyXG4gICAgc29udWMgPSBzb251Yy5yZXBsYWNlKCfFvicsICdpJyk7XHJcblxyXG4gICAgLy8gc29udWMgPSBzb251Yy5yZXBsYWNlKC9bXFx1MDMwMC1cXHUwMzZmXS9nLCAnJyk7XHJcbiAgICByZXR1cm4gc29udWM7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgbWVjcmFUdXJ1Tm9WZXIobWVjcmFUdXJ1U3RyOiBNZWNyYVR1cmxlcmlTdHIpOiBNZWNyYVR1cmxlcmkge1xyXG4gICAgc3dpdGNoIChtZWNyYVR1cnVTdHIpIHtcclxuICAgICAgY2FzZSBNZWNyYVR1cmxlcmlTdHIudHVtdTpcclxuICAgICAgICByZXR1cm4gTWVjcmFUdXJsZXJpLnR1bXU7XHJcblxyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaVN0ci50djpcclxuICAgICAgICByZXR1cm4gTWVjcmFUdXJsZXJpLnR2O1xyXG5cclxuICAgICAgY2FzZSBNZWNyYVR1cmxlcmlTdHIuZ2F6ZXRlOlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmkuZ2F6ZXRlO1xyXG5cclxuICAgICAgY2FzZSBNZWNyYVR1cmxlcmlTdHIuZGVyZ2k6XHJcbiAgICAgICAgcmV0dXJuIE1lY3JhVHVybGVyaS5kZXJnaTtcclxuXHJcbiAgICAgIGNhc2UgTWVjcmFUdXJsZXJpU3RyLnJhZHlvOlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmkucmFkeW87XHJcblxyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaVN0ci5zaW5lbWE6XHJcbiAgICAgICAgcmV0dXJuIE1lY3JhVHVybGVyaS5zaW5lbWE7XHJcblxyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaVN0ci5vdXRkb29yOlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmkub3V0ZG9vcjtcclxuXHJcbiAgICAgIGNhc2UgTWVjcmFUdXJsZXJpU3RyLmludGVybmV0OlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmkuaW50ZXJuZXQ7XHJcblxyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaVN0ci5oaWJyaXRUVjpcclxuICAgICAgICByZXR1cm4gTWVjcmFUdXJsZXJpLmhpYnJpdFRWO1xyXG5cclxuICAgICAgY2FzZSBNZWNyYVR1cmxlcmlTdHIuc3BvbnNvcmx1azpcclxuICAgICAgICByZXR1cm4gTWVjcmFUdXJsZXJpLnNwb25zb3JsdWs7XHJcblxyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaVN0ci5iZWxpcnNpejpcclxuICAgICAgICByZXR1cm4gTWVjcmFUdXJsZXJpLmJlbGlyc2l6O1xyXG5cclxuICAgICAgY2FzZSBNZWNyYVR1cmxlcmlTdHIuYm9zOlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmkuYm9zO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3RhdGljIG1lY3JhVHVydVN0clZlcihtZWNyYVR1cnVObzogTWVjcmFUdXJsZXJpKTogTWVjcmFUdXJsZXJpU3RyIHtcclxuICAgIHN3aXRjaCAobWVjcmFUdXJ1Tm8pIHtcclxuICAgICAgY2FzZSBNZWNyYVR1cmxlcmkudHVtdTpcclxuICAgICAgICByZXR1cm4gTWVjcmFUdXJsZXJpU3RyLnR1bXU7XHJcblxyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaS50djpcclxuICAgICAgICByZXR1cm4gTWVjcmFUdXJsZXJpU3RyLnR2O1xyXG5cclxuICAgICAgY2FzZSBNZWNyYVR1cmxlcmkuZ2F6ZXRlOlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmlTdHIuZ2F6ZXRlO1xyXG5cclxuICAgICAgY2FzZSBNZWNyYVR1cmxlcmkuZGVyZ2k6XHJcbiAgICAgICAgcmV0dXJuIE1lY3JhVHVybGVyaVN0ci5kZXJnaTtcclxuXHJcbiAgICAgIGNhc2UgTWVjcmFUdXJsZXJpLnJhZHlvOlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmlTdHIucmFkeW87XHJcblxyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaS5zaW5lbWE6XHJcbiAgICAgICAgcmV0dXJuIE1lY3JhVHVybGVyaVN0ci5zaW5lbWE7XHJcblxyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaS5vdXRkb29yOlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmlTdHIub3V0ZG9vcjtcclxuXHJcbiAgICAgIGNhc2UgTWVjcmFUdXJsZXJpLmludGVybmV0OlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmlTdHIuaW50ZXJuZXQ7XHJcblxyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaS5oaWJyaXRUVjpcclxuICAgICAgICByZXR1cm4gTWVjcmFUdXJsZXJpU3RyLmhpYnJpdFRWO1xyXG5cclxuICAgICAgY2FzZSBNZWNyYVR1cmxlcmkuc3BvbnNvcmx1azpcclxuICAgICAgICByZXR1cm4gTWVjcmFUdXJsZXJpU3RyLnNwb25zb3JsdWs7XHJcblxyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaS5iZWxpcnNpejpcclxuICAgICAgICByZXR1cm4gTWVjcmFUdXJsZXJpU3RyLmJlbGlyc2l6O1xyXG5cclxuICAgICAgY2FzZSBNZWNyYVR1cmxlcmkuYm9zOlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmlTdHIuYm9zO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3RhdGljIHBhZExlYWRpbmdaZXJvcyhudW06IG51bWJlciwgc2l6ZTogbnVtYmVyKSB7XHJcbiAgICBsZXQgcyA9IG51bSArICcnO1xyXG4gICAgd2hpbGUgKHMubGVuZ3RoIDwgc2l6ZSkgcyA9ICcwJyArIHM7XHJcbiAgICByZXR1cm4gcztcclxuICB9XHJcblxyXG4gIHN0YXRpYyBhcnJheVRvU2VsZWN0SXRlbShhcnJheTogc3RyaW5nW10pOiBTZWxlY3RJdGVtPHN0cmluZz5bXSB7XHJcbiAgICByZXR1cm4gYXJyYXkubWFwKGVsZW1lbnQgPT4ge1xyXG4gICAgICByZXR1cm4geyBsYWJlbDogZWxlbWVudCwgdmFsdWU6IGVsZW1lbnQgfTtcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBzdGF0aWMgYXJyYXlOdW1iZXJUb1NlbGVjdEl0ZW0oYXJyYXk6IG51bWJlcltdKTogU2VsZWN0SXRlbTxudW1iZXI+W10ge1xyXG4gICAgcmV0dXJuIGFycmF5Lm1hcChlbGVtZW50ID0+IHtcclxuICAgICAgcmV0dXJuIHsgbGFiZWw6IGVsZW1lbnQudG9TdHJpbmcoKSwgdmFsdWU6IGVsZW1lbnQgfTtcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBzdGF0aWMgVkJTUmVhbFRvVGV4dChzYXlpOiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgLy8gcmV0dXJuIHNheWkudG9TdHJpbmcoKS5yZXBsYWNlKC9bLF0vZywgJy4nKVxyXG4gICAgcmV0dXJuIHNheWkudG9TdHJpbmcoKS5yZXBsYWNlKCcsJywgJy4nKTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBuZXRzaXNUYXJpaEZvcm1hdGlWZXIodGFyaWg6IERhdGUpOiBzdHJpbmcge1xyXG4gICAgbGV0IGZvcm1hdGxpVGFyaWggPSAnJztcclxuICAgIGZvcm1hdGxpVGFyaWggPSBmb3JtYXREYXRlKHRhcmloLCAneXl5eScsICd0ci1UUicpICsgJy0nICsgZm9ybWF0RGF0ZSh0YXJpaCwgJ01NJywgJ3RyLVRSJyk7XHJcbiAgICBmb3JtYXRsaVRhcmloICs9ICctJyArIGZvcm1hdERhdGUodGFyaWgsICdkZCcsICd0ci1UUicpICsgJyAwMDowMDowMC4wMDAnXHJcbiAgICByZXR1cm4gZm9ybWF0bGlUYXJpaDtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBuZXRzaXNEb3ZpelRpcGlWZXIocGFyYUJpcmltaTogc3RyaW5nKTogbnVtYmVyIHtcclxuICAgIHN3aXRjaCAocGFyYUJpcmltaSkge1xyXG4gICAgICBjYXNlICgnJCcgfHwgJ1VTRCcpOlxyXG4gICAgICAgIHJldHVybiAxO1xyXG4gICAgICBjYXNlICgn4oKsJyB8fCAnRXVyJyB8fCAnRVUnIHx8ICdFdXJvJyB8fCAnQXZybycpOlxyXG4gICAgICAgIHJldHVybiAxMztcclxuICAgICAgY2FzZSAoJ8KjJyB8fCAnR0JQJyB8fCAnU3RlcmxpbicgfHwgJ1BvdW5kJyk6XHJcbiAgICAgICAgcmV0dXJuIDM7XHJcbiAgICAgIGNhc2UgKCdTRUsnKTpcclxuICAgICAgICByZXR1cm4gNjtcclxuICAgICAgY2FzZSAoJ0NIRicpOlxyXG4gICAgICAgIHJldHVybiA1O1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHJldHVybiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3RhdGljIG5ldHNpc0ZhdE5vVmVyKGZhdHVyYU5vOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgaWYgKGZhdHVyYU5vLmxlbmd0aCA9PT0gMTYpIHtcclxuICAgICAgcmV0dXJuIGZhdHVyYU5vLnNsaWNlKDAsIDcpICsgZmF0dXJhTm8uc2xpY2UoOCwgZmF0dXJhTm8ubGVuZ3RoKTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICByZXR1cm4gZmF0dXJhTm87XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgcmVzaW1NaShsaW5rOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgIGxldCByZXNpbU1pID0gZmFsc2U7XHJcblxyXG4gICAgY29uc3QgdXphbnRpID0gbGluay5zcGxpdCgnLicpLnBvcCgpO1xyXG5cclxuICAgIHN3aXRjaCAodXphbnRpKSB7XHJcbiAgICAgIGNhc2UgJ2pwZyc6XHJcbiAgICAgICAgcmVzaW1NaSA9IHRydWU7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlICdqcGVnJzpcclxuICAgICAgICByZXNpbU1pID0gdHJ1ZTtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGNhc2UgJ2pwZSc6XHJcbiAgICAgICAgcmVzaW1NaSA9IHRydWU7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlICdqZmlmJzpcclxuICAgICAgICByZXNpbU1pID0gdHJ1ZTtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGNhc2UgJ3RpZic6XHJcbiAgICAgICAgcmVzaW1NaSA9IHRydWU7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlICd0aWZmJzpcclxuICAgICAgICByZXNpbU1pID0gdHJ1ZTtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGNhc2UgJ2dpZic6XHJcbiAgICAgICAgcmVzaW1NaSA9IHRydWU7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlICdHSUYnOlxyXG4gICAgICAgIHJlc2ltTWkgPSB0cnVlO1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgY2FzZSAncG5nJzpcclxuICAgICAgICByZXNpbU1pID0gdHJ1ZTtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGNhc2UgJ2JtcCc6XHJcbiAgICAgICAgcmVzaW1NaSA9IHRydWU7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc2ltTWlcclxuICB9XHJcblxyXG4gIHN0YXRpYyBheVBvcFZlcihjdWx0dXJlOiBzdHJpbmcsIHR1bXVFa2xlOiBib29sZWFuKTogU2VsZWN0SXRlbTxudW1iZXI+W10ge1xyXG4gICAgbGV0IHNvbnVjOiBTZWxlY3RJdGVtPG51bWJlcj5bXSA9IFtdO1xyXG4gICAgc3dpdGNoIChjdWx0dXJlKSB7XHJcbiAgICAgIGNhc2UgJ2VuLVVTJzoge1xyXG4gICAgICAgIHNvbnVjID0gW1xyXG4gICAgICAgICAgeyBsYWJlbDogJ0phbnVhcnknLCB2YWx1ZTogMSB9LFxyXG4gICAgICAgICAgeyBsYWJlbDogJ0ZlYnJ1YXJ5JywgdmFsdWU6IDIgfSxcclxuICAgICAgICAgIHsgbGFiZWw6ICdNYXJjaCcsIHZhbHVlOiAzIH0sXHJcbiAgICAgICAgICB7IGxhYmVsOiAnQXByaWwnLCB2YWx1ZTogNCB9LFxyXG4gICAgICAgICAgeyBsYWJlbDogJ01heScsIHZhbHVlOiA1IH0sXHJcbiAgICAgICAgICB7IGxhYmVsOiAnSnVuZScsIHZhbHVlOiA2IH0sXHJcbiAgICAgICAgICB7IGxhYmVsOiAnSnVseScsIHZhbHVlOiA3IH0sXHJcbiAgICAgICAgICB7IGxhYmVsOiAnQXVndXN0JywgdmFsdWU6IDggfSxcclxuICAgICAgICAgIHsgbGFiZWw6ICdTZXB0ZW1iZXInLCB2YWx1ZTogOSB9LFxyXG4gICAgICAgICAgeyBsYWJlbDogJ09jdG9iZXInLCB2YWx1ZTogMTAgfSxcclxuICAgICAgICAgIHsgbGFiZWw6ICdOb3ZlbWJlcicsIHZhbHVlOiAxMSB9LFxyXG4gICAgICAgICAgeyBsYWJlbDogJ0RlY2VtYmVyJywgdmFsdWU6IDEyIH1cclxuICAgICAgICBdO1xyXG4gICAgICAgIGlmICh0dW11RWtsZSkge1xyXG4gICAgICAgICAgc29udWMudW5zaGlmdCh7IGxhYmVsOiAnQWxsJywgdmFsdWU6IDAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcbiAgICAgIGRlZmF1bHQ6IHtcclxuICAgICAgICBzb251YyA9IFtcclxuICAgICAgICAgIHsgbGFiZWw6ICdPY2FrJywgdmFsdWU6IDEgfSxcclxuICAgICAgICAgIHsgbGFiZWw6ICfFnnViYXQnLCB2YWx1ZTogMiB9LFxyXG4gICAgICAgICAgeyBsYWJlbDogJ01hcnQnLCB2YWx1ZTogMyB9LFxyXG4gICAgICAgICAgeyBsYWJlbDogJ05pc2FuJywgdmFsdWU6IDQgfSxcclxuICAgICAgICAgIHsgbGFiZWw6ICdNYXnEsXMnLCB2YWx1ZTogNSB9LFxyXG4gICAgICAgICAgeyBsYWJlbDogJ0hhemlyYW4nLCB2YWx1ZTogNiB9LFxyXG4gICAgICAgICAgeyBsYWJlbDogJ1RlbW11eicsIHZhbHVlOiA3IH0sXHJcbiAgICAgICAgICB7IGxhYmVsOiAnQcSfdXN0b3MnLCB2YWx1ZTogOCB9LFxyXG4gICAgICAgICAgeyBsYWJlbDogJ0V5bMO8bCcsIHZhbHVlOiA5IH0sXHJcbiAgICAgICAgICB7IGxhYmVsOiAnRWtpbScsIHZhbHVlOiAxMCB9LFxyXG4gICAgICAgICAgeyBsYWJlbDogJ0thc8SxbScsIHZhbHVlOiAxMSB9LFxyXG4gICAgICAgICAgeyBsYWJlbDogJ0FyYWzEsWsnLCB2YWx1ZTogMTIgfVxyXG4gICAgICAgIF07XHJcbiAgICAgICAgaWYgKHR1bXVFa2xlKSB7XHJcbiAgICAgICAgICBzb251Yy51bnNoaWZ0KHsgbGFiZWw6ICdUw7xtw7wnLCB2YWx1ZTogMCB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBzb251YztcclxuXHJcbiAgfVxyXG5cclxuICBzdGF0aWMgYXlQb3BWZXJBcmFsaWsoaWxrQXk6IG51bWJlciwgc29uQXk6IG51bWJlciwgY3VsdHVyZTogc3RyaW5nLCB0dW11RWtsZTogYm9vbGVhbik6IFNlbGVjdEl0ZW08bnVtYmVyPltdIHtcclxuICAgIGNvbnN0IHNvbnVjOiBTZWxlY3RJdGVtPG51bWJlcj5bXSA9IFtdO1xyXG4gICAgZm9yIChsZXQgYXlTYXlhYyA9IGlsa0F5OyBheVNheWFjIDw9IHNvbkF5OyBheVNheWFjKyspIHtcclxuICAgICAgc29udWMucHVzaCh7IGxhYmVsOiB0aGlzLmF5QWRpVmVyKGF5U2F5YWMsIGN1bHR1cmUpLCB2YWx1ZTogYXlTYXlhYyB9KTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodHVtdUVrbGUpIHtcclxuICAgICAgc3dpdGNoIChjdWx0dXJlKSB7XHJcbiAgICAgICAgY2FzZSAnZW4tVVMnOlxyXG4gICAgICAgICAgc29udWMudW5zaGlmdCh7IGxhYmVsOiAnQWxsJywgdmFsdWU6IDAgfSk7XHJcbiAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgIHNvbnVjLnVuc2hpZnQoeyBsYWJlbDogJ1TDvG3DvCcsIHZhbHVlOiAwIH0pO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBzb251YztcclxuICB9XHJcblxyXG4gIHN0YXRpYyB5aWxQb3BWZXIoaWxrWWlsOiBudW1iZXIsIHNvbllpbDogbnVtYmVyKTogbnVtYmVyW10ge1xyXG4gICAgY29uc3Qgc29udWM6IG51bWJlcltdID0gW107XHJcbiAgICBmb3IgKGxldCB5aWxTYXlhYyA9IHNvbllpbDsgeWlsU2F5YWMgPj0gaWxrWWlsOyB5aWxTYXlhYy0tKSB7XHJcbiAgICAgIHNvbnVjLnB1c2goeWlsU2F5YWMpO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGN1cnJlbnRZZWFyOiBudW1iZXIgPSBuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCk7XHJcbiAgICBpZiAoc29udWMuaW5kZXhPZihjdXJyZW50WWVhcikgPT0gLTEpIHtcclxuICAgICAgc29udWMudW5zaGlmdChjdXJyZW50WWVhcik7XHJcbiAgICAgIHNvbnVjLnNvcnQoKGEsIGIpID0+IGEgKyBiKS5yZXZlcnNlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHNvbnVjO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIHlpbFBvcFZlclRleHQoaWxrWWlsOiBudW1iZXIsIHNvbllpbDogbnVtYmVyLCBjdWx0dXJlOiBzdHJpbmcsIHR1bXVFa2xlOiBib29sZWFuKTogc3RyaW5nW10ge1xyXG4gICAgY29uc3Qgc29udWM6IHN0cmluZ1tdID0gW107XHJcbiAgICBmb3IgKGxldCB5aWxTYXlhYyA9IHNvbllpbDsgeWlsU2F5YWMgPj0gaWxrWWlsOyB5aWxTYXlhYy0tKSB7XHJcbiAgICAgIHNvbnVjLnB1c2goeWlsU2F5YWMudG9TdHJpbmcoKSk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgY3VycmVudFllYXI6IG51bWJlciA9IG5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKTtcclxuICAgIGlmIChzb251Yy5pbmRleE9mKGN1cnJlbnRZZWFyLnRvU3RyaW5nKCkpID09IC0xKSB7XHJcbiAgICAgIHNvbnVjLnVuc2hpZnQoY3VycmVudFllYXIudG9TdHJpbmcoKSk7XHJcbiAgICAgIHNvbnVjLnNvcnQoKGEsIGIpID0+IGIubG9jYWxlQ29tcGFyZShhKSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHR1bXVFa2xlKSB7XHJcbiAgICAgIHN3aXRjaCAoY3VsdHVyZSkge1xyXG4gICAgICAgIGNhc2UgJ2VuLVVTJzpcclxuICAgICAgICAgIHNvbnVjLnVuc2hpZnQoJ0FsbCcpO1xyXG4gICAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICBzb251Yy51bnNoaWZ0KCdUw7xtw7wnKTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gc29udWM7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgc3RyaW5nQXJyYXlUb1NlbGVjdEl0ZW0oc291cmNlQXJyYXk6IHN0cmluZ1tdLCBzZWNpbml6RWtsZTogYm9vbGVhbiA9IGZhbHNlLCB0dW11RWtsZTogYm9vbGVhbiA9IGZhbHNlLCBib3NFa2xlOiBib29sZWFuID0gZmFsc2UpOiBTZWxlY3RJdGVtPHN0cmluZz5bXSB7XHJcbiAgICBjb25zdCBzb251YzogU2VsZWN0SXRlbTxzdHJpbmc+W10gPSBzb3VyY2VBcnJheS5tYXAoZWxlbWVudCA9PiAoeyBsYWJlbDogZWxlbWVudCwgdmFsdWU6IGVsZW1lbnQgfSkpO1xyXG4gICAgaWYgKHNlY2luaXpFa2xlKSB7XHJcbiAgICAgIHNvbnVjLnVuc2hpZnQoeyBsYWJlbDogJ1Nlw6dpbml6JywgdmFsdWU6ICcnIH0pO1xyXG4gICAgfVxyXG4gICAgaWYgKHR1bXVFa2xlKSB7XHJcbiAgICAgIHNvbnVjLnVuc2hpZnQoeyBsYWJlbDogJ1TDvG3DvCcsIHZhbHVlOiAnVMO8bcO8JyB9KTtcclxuICAgIH1cclxuICAgIGlmIChib3NFa2xlKSB7XHJcbiAgICAgIHNvbnVjLnVuc2hpZnQoeyBsYWJlbDogJyhCb8WfKScsIHZhbHVlOiAnJyB9KTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gc29udWM7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICogU2FhdCAwMCB2ZXlhIDAxIGlzZSAyNCB2ZSAyNSB5YXBhclxyXG4gKiBAZ3JvdXAgTWV0aG9kc1xyXG4gKi9cclxuICBzdGF0aWMgc2FhdER1emVubGUoc291cmNlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgbGV0IGJpdGlzU2FhdGkgPSBzb3VyY2Uuc3Vic3RyaW5nKDAsIDIpO1xyXG4gICAgY29uc3QgYml0aXNEYWtpa2FzaSA9IHNvdXJjZS5zdWJzdHJpbmcoNSwgMyk7XHJcbiAgICBpZiAoYml0aXNTYWF0aSA9PT0gJzAwJykge1xyXG4gICAgICBiaXRpc1NhYXRpID0gJzI0J1xyXG4gICAgfSBlbHNlIGlmIChiaXRpc1NhYXRpID09PSAnMDEnKSB7XHJcbiAgICAgIGJpdGlzU2FhdGkgPSAnMjUnXHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGJpdGlzU2FhdGkgKyAnOicgKyBiaXRpc0Rha2lrYXNpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
792
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsZnVuY3Rpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2FwaS9nbG9iYWxmdW5jdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRzdDLE9BQU8sRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFekUsTUFBTSxPQUFPLGVBQWU7SUFDMUIsTUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUFhLEVBQUUsT0FBZTtRQUU5QyxJQUFJLENBQUMsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDNUMsSUFBSSxDQUFDLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzVDLElBQUksQ0FBQyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUU1QyxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxHQUFHLE9BQU8sQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3hELENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEdBQUcsT0FBTyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDeEQsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsR0FBRyxPQUFPLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxRQUFRLEVB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QUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUztZQUN2RyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTO1lBQ2hLLFNBQVMsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFNBQVM7WUFDeEssUUFBUSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsU0FBUztZQUN0TCxVQUFVLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxhQUFhLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxTQUFTO1lBQzlMLFVBQVUsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFNBQVM7WUFDN0csU0FBUyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFNBQVM7WUFDeEYsU0FBUyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUs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TSxJQUFJLFVBQVUsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUMvQixVQUFVLEdBQUcsSUFBSSxDQUFBO1FBQ25CLENBQUM7UUFFRCxPQUFPLFVBQVUsR0FBRyxHQUFHLEdBQUcsYUFBYSxDQUFDO0lBQzFDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZvcm1hdERhdGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5cclxuaW1wb3J0IHsgU2VsZWN0SXRlbSB9IGZyb20gJ3ByaW1lbmcvYXBpL3NlbGVjdGl0ZW0nO1xyXG5pbXBvcnQgeyBNZWNyYVR1cmxlcmksIE1lY3JhVHVybGVyaVN0ciB9IGZyb20gJ2xpbWl0bmcvYXBpL21vZGVscy9lbnVtcyc7XHJcblxyXG5leHBvcnQgY2xhc3MgR2xvYmFsRnVuY3Rpb25zIHtcclxuICBzdGF0aWMgc2hhZGVDb2xvcihjb2xvcjogc3RyaW5nLCBwZXJjZW50OiBudW1iZXIpIHtcclxuXHJcbiAgICBsZXQgUiA9IHBhcnNlSW50KGNvbG9yLnN1YnN0cmluZygxLCAzKSwgMTYpO1xyXG4gICAgbGV0IEcgPSBwYXJzZUludChjb2xvci5zdWJzdHJpbmcoMywgNSksIDE2KTtcclxuICAgIGxldCBCID0gcGFyc2VJbnQoY29sb3Iuc3Vic3RyaW5nKDUsIDcpLCAxNik7XHJcblxyXG4gICAgUiA9IHBhcnNlSW50KChSICogKDEwMCArIHBlcmNlbnQpIC8gMTAwKS50b1N0cmluZygpLCAwKTtcclxuICAgIEcgPSBwYXJzZUludCgoRyAqICgxMDAgKyBwZXJjZW50KSAvIDEwMCkudG9TdHJpbmcoKSwgMCk7XHJcbiAgICBCID0gcGFyc2VJbnQoKEIgKiAoMTAwICsgcGVyY2VudCkgLyAxMDApLnRvU3RyaW5nKCksIDApO1xyXG5cclxuICAgIFIgPSAoUiA8IDI1NSkgPyBSIDogMjU1O1xyXG4gICAgRyA9IChHIDwgMjU1KSA/IEcgOiAyNTU7XHJcbiAgICBCID0gKEIgPCAyNTUpID8gQiA6IDI1NTtcclxuXHJcbiAgICBjb25zdCBSUiA9ICgoUi50b1N0cmluZygxNikubGVuZ3RoID09PSAxKSA/ICcwJyArIFIudG9TdHJpbmcoMTYpIDogUi50b1N0cmluZygxNikpO1xyXG4gICAgY29uc3QgR0cgPSAoKEcudG9TdHJpbmcoMTYpLmxlbmd0aCA9PT0gMSkgPyAnMCcgKyBHLnRvU3RyaW5nKDE2KSA6IEcudG9TdHJpbmcoMTYpKTtcclxuICAgIGNvbnN0IEJCID0gKChCLnRvU3RyaW5nKDE2KS5sZW5ndGggPT09IDEpID8gJzAnICsgQi50b1N0cmluZygxNikgOiBCLnRvU3RyaW5nKDE2KSk7XHJcblxyXG4gICAgcmV0dXJuICcjJyArIFJSICsgR0cgKyBCQjtcclxuICB9XHJcblxyXG4gIHN0YXRpYyB5YXJpbVNhYXRlWXV2YXJsYSh2YWx1ZTogbnVtYmVyLCBzdGVwUGFyYW06IG51bWJlcikge1xyXG4gICAgY29uc3Qgc3RlcCA9IHN0ZXBQYXJhbSB8fCAoc3RlcFBhcmFtID0gMS4wKTtcclxuICAgIGNvbnN0IGludiA9IDEuMCAvIHN0ZXA7XHJcbiAgICByZXR1cm4gTWF0aC5yb3VuZCh2YWx1ZSAqIGludikgLyBpbnY7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgZXZlblJvdW5kKG51bTogbnVtYmVyLCBkZWNpbWFsUGxhY2VzOiBudW1iZXIpOiBudW1iZXIge1xyXG4gICAgY29uc3QgZCA9IGRlY2ltYWxQbGFjZXMgfHwgMDtcclxuICAgIGNvbnN0IG0gPSBNYXRoLnBvdygxMCwgZCk7XHJcbiAgICBjb25zdCBuID0gKyhkID8gbnVtICogbSA6IG51bSkudG9GaXhlZCg4KTsgLy8gQXZvaWQgcm91bmRpbmcgZXJyb3JzXHJcbiAgICBjb25zdCBpID0gTWF0aC5mbG9vcihuKTtcclxuICAgIGNvbnN0IGYgPSBuIC0gaTtcclxuICAgIGNvbnN0IGUgPSAxZS04OyAvLyBBbGxvdyBmb3Igcm91bmRpbmcgZXJyb3JzIGluIGZcclxuICAgIGNvbnN0IHIgPSAoZiA+IDAuNSAtIGUgJiYgZiA8IDAuNSArIGUpID8gKChpICUgMiA9PT0gMCkgPyBpIDogaSArIDEpIDogTWF0aC5yb3VuZChuKTtcclxuICAgIHJldHVybiBkID8gciAvIG0gOiByO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIHJvdW5kSWtpSGFuZShwYXJhbTogbnVtYmVyKTogbnVtYmVyIHtcclxuICAgIHJldHVybiBNYXRoLmZsb29yKHBhcmFtICogMTAwKSAvIDEwMDtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBpa2lTYXlpRmFyayhwYXJhbTE6IG51bWJlciwgcGFyYW0yOiBudW1iZXIpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIE1hdGgucm91bmQoKHBhcmFtMSAtIHBhcmFtMikgKiAxMDApIC8gMTAwO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGlraVNheWlUb3BsYShwYXJhbTE6IG51bWJlciwgcGFyYW0yOiBudW1iZXIpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIE1hdGgucm91bmQoKHBhcmFtMSArIHBhcmFtMikgKiAxMDApIC8gMTAwO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIHN0clRvTnVtYmVyKG1ldGluOiBzdHJpbmcpOiBudW1iZXIge1xyXG4gICAgbGV0IHN0ciA9IG1ldGluO1xyXG4gICAgc3RyID0gc3RyLnNwbGl0KCcsJykuam9pbignLicpO1xyXG4gICAgY29uc3QgcmVnZXggPSAvW15cXGQuLV0vZztcclxuICAgIHN0ciA9IHN0ci5yZXBsYWNlKHJlZ2V4LCAnJyk7XHJcbiAgICBjb25zdCBhcnIgPSBzdHIuc3BsaXQoJy4nKTtcclxuICAgIGlmIChhcnIubGVuZ3RoID4gMikgeyAvLyBCaXJkZW4gw6dvayBub2t0YSB2YXJzYVxyXG4gICAgICBjb25zdCBzb24gPSBhcnIucG9wKCk7XHJcbiAgICAgIHN0ciA9IGFyci5qb2luKCcnKSArICcuJyArIHNvbjtcclxuICAgIH1cclxuICAgIHJldHVybiBOdW1iZXIoc3RyKTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBzdXR1blN0clZlcihnZW5pc2xpazogbnVtYmVyKTogc3RyaW5nIHtcclxuICAgIGlmIChnZW5pc2xpayA8IDU3NikgeyByZXR1cm4gJ3hzJzsgfVxyXG4gICAgaWYgKGdlbmlzbGlrIDwgNzY4KSB7IHJldHVybiAnc20nOyB9XHJcbiAgICBpZiAoZ2VuaXNsaWsgPCA5OTIpIHsgcmV0dXJuICdtZCc7IH1cclxuICAgIGlmIChnZW5pc2xpayA8IDEyMDApIHsgcmV0dXJuICdsZyc7IH1cclxuICAgIHJldHVybiAneGwnO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIHN1dHVuR2VuTm9WZXIoZ2VuaXNsaWs6IG51bWJlcik6IG51bWJlciB7XHJcbiAgICBpZiAoZ2VuaXNsaWsgPCA1NzYpIHsgcmV0dXJuIDE7IH1cclxuICAgIGlmIChnZW5pc2xpayA8IDc2OCkgeyByZXR1cm4gMjsgfVxyXG4gICAgaWYgKGdlbmlzbGlrIDwgOTkyKSB7IHJldHVybiAzOyB9XHJcbiAgICBpZiAoZ2VuaXNsaWsgPCAxMjAwKSB7IHJldHVybiA0OyB9XHJcbiAgICByZXR1cm4gNTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBkYXRlVG9UZXh0KHRhcmloOiBEYXRlKTogc3RyaW5nIHtcclxuICAgIGlmICgodGFyaWggIT09IHVuZGVmaW5lZCkgJiYgKHRhcmloICE9PSBudWxsKSkge1xyXG4gICAgICByZXR1cm4gdGFyaWguZ2V0RGF0ZSgpLnRvU3RyaW5nKCkgKyAnLicgKyAodGFyaWguZ2V0TW9udGgoKSArIDEpLnRvU3RyaW5nKCkgKyAnLicgKyB0YXJpaC5nZXRGdWxsWWVhcigpLnRvU3RyaW5nKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gJyc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgYXlJbGtHdW4oYXk6IG51bWJlciwgeWlsOiBudW1iZXIpOiBEYXRlIHtcclxuICAgIHJldHVybiBuZXcgRGF0ZSh5aWwsIGF5IC0gMSk7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgYXlTb25HdW4oYXk6IG51bWJlciwgeWlsOiBudW1iZXIpOiBEYXRlIHtcclxuICAgIHJldHVybiBuZXcgRGF0ZSh5aWwsIGF5LCAwKTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBKU09ORGF0ZVRvRGF0ZSh0YXJpaDogRGF0ZSk6IERhdGUge1xyXG4gICAgaWYgKCh0YXJpaCAhPT0gdW5kZWZpbmVkKSAmJiAodGFyaWggIT09IG51bGwpKSB7XHJcbiAgICAgIGNvbnN0IHRlbXAgPSB0YXJpaC50b1N0cmluZygpO1xyXG4gICAgICBpZiAodGVtcCAhPT0gJzAwMDAtMDAtMDAnKSB7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBEYXRlKHRlbXApO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcblxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3RhdGljIGF5QWRpVmVyKGF5Tm86IG51bWJlciwgY3VsdHVyZTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHN3aXRjaCAoY3VsdHVyZSkge1xyXG4gICAgICBjYXNlICdlbi1VUyc6IHtcclxuICAgICAgICBzd2l0Y2ggKGF5Tm8pIHtcclxuICAgICAgICAgIGNhc2UgMTpcclxuICAgICAgICAgICAgcmV0dXJuICdKYW51YXJ5JztcclxuICAgICAgICAgIGNhc2UgMjpcclxuICAgICAgICAgICAgcmV0dXJuICdGZWJydWFyeSc7XHJcbiAgICAgICAgICBjYXNlIDM6XHJcbiAgICAgICAgICAgIHJldHVybiAnTWFyY2gnO1xyXG4gICAgICAgICAgY2FzZSA0OlxyXG4gICAgICAgICAgICByZXR1cm4gJ0FwcmlsJztcclxuICAgICAgICAgIGNhc2UgNTpcclxuICAgICAgICAgICAgcmV0dXJuICdNYXknO1xyXG4gICAgICAgICAgY2FzZSA2OlxyXG4gICAgICAgICAgICByZXR1cm4gJ0p1bmUnO1xyXG4gICAgICAgICAgY2FzZSA3OlxyXG4gICAgICAgICAgICByZXR1cm4gJ0p1bHknO1xyXG4gICAgICAgICAgY2FzZSA4OlxyXG4gICAgICAgICAgICByZXR1cm4gJ0F1Z3VzdCc7XHJcbiAgICAgICAgICBjYXNlIDk6XHJcbiAgICAgICAgICAgIHJldHVybiAnU2VwdGVtYmVyJztcclxuICAgICAgICAgIGNhc2UgMTA6XHJcbiAgICAgICAgICAgIHJldHVybiAnT2N0b2Jlcic7XHJcbiAgICAgICAgICBjYXNlIDExOlxyXG4gICAgICAgICAgICByZXR1cm4gJ05vdmVtYmVyJztcclxuICAgICAgICAgIGNhc2UgMTI6XHJcbiAgICAgICAgICAgIHJldHVybiAnRGVjZW1iZXInO1xyXG4gICAgICAgICAgZGVmYXVsdDoge1xyXG4gICAgICAgICAgICByZXR1cm4gJyc7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGRlZmF1bHQ6IHtcclxuICAgICAgICBzd2l0Y2ggKGF5Tm8pIHtcclxuICAgICAgICAgIGNhc2UgMTpcclxuICAgICAgICAgICAgcmV0dXJuICdPY2FrJztcclxuICAgICAgICAgIGNhc2UgMjpcclxuICAgICAgICAgICAgcmV0dXJuICfFnnViYXQnO1xyXG4gICAgICAgICAgY2FzZSAzOlxyXG4gICAgICAgICAgICByZXR1cm4gJ01hcnQnO1xyXG4gICAgICAgICAgY2FzZSA0OlxyXG4gICAgICAgICAgICByZXR1cm4gJ05pc2FuJztcclxuICAgICAgICAgIGNhc2UgNTpcclxuICAgICAgICAgICAgcmV0dXJuICdNYXnEsXMnO1xyXG4gICAgICAgICAgY2FzZSA2OlxyXG4gICAgICAgICAgICByZXR1cm4gJ0hhemlyYW4nO1xyXG4gICAgICAgICAgY2FzZSA3OlxyXG4gICAgICAgICAgICByZXR1cm4gJ1RlbW11eic7XHJcbiAgICAgICAgICBjYXNlIDg6XHJcbiAgICAgICAgICAgIHJldHVybiAnQcSfdXN0b3MnO1xyXG4gICAgICAgICAgY2FzZSA5OlxyXG4gICAgICAgICAgICByZXR1cm4gJ0V5bMO8bCc7XHJcbiAgICAgICAgICBjYXNlIDEwOlxyXG4gICAgICAgICAgICByZXR1cm4gJ0VraW0nO1xyXG4gICAgICAgICAgY2FzZSAxMTpcclxuICAgICAgICAgICAgcmV0dXJuICdLYXPEsW0nO1xyXG4gICAgICAgICAgY2FzZSAxMjpcclxuICAgICAgICAgICAgcmV0dXJuICdBcmFsxLFrJztcclxuICAgICAgICAgIGRlZmF1bHQ6IHtcclxuICAgICAgICAgICAgcmV0dXJuICcnO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3RhdGljIGF5QWRpVmVyS2lzYShheU5vOiBudW1iZXIsIGN1bHR1cmU6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBzd2l0Y2ggKGN1bHR1cmUpIHtcclxuICAgICAgY2FzZSAnZW4tVVMnOiB7XHJcbiAgICAgICAgc3dpdGNoIChheU5vKSB7XHJcbiAgICAgICAgICBjYXNlIDE6XHJcbiAgICAgICAgICAgIHJldHVybiAnSmFuJztcclxuICAgICAgICAgIGNhc2UgMjpcclxuICAgICAgICAgICAgcmV0dXJuICdGZWInO1xyXG4gICAgICAgICAgY2FzZSAzOlxyXG4gICAgICAgICAgICByZXR1cm4gJ01hcic7XHJcbiAgICAgICAgICBjYXNlIDQ6XHJcbiAgICAgICAgICAgIHJldHVybiAnQXByJztcclxuICAgICAgICAgIGNhc2UgNTpcclxuICAgICAgICAgICAgcmV0dXJuICdNYXknO1xyXG4gICAgICAgICAgY2FzZSA2OlxyXG4gICAgICAgICAgICByZXR1cm4gJ0p1bic7XHJcbiAgICAgICAgICBjYXNlIDc6XHJcbiAgICAgICAgICAgIHJldHVybiAnSnVsJztcclxuICAgICAgICAgIGNhc2UgODpcclxuICAgICAgICAgICAgcmV0dXJuICdBdWcnO1xyXG4gICAgICAgICAgY2FzZSA5OlxyXG4gICAgICAgICAgICByZXR1cm4gJ1NlcCc7XHJcbiAgICAgICAgICBjYXNlIDEwOlxyXG4gICAgICAgICAgICByZXR1cm4gJ09jdCc7XHJcbiAgICAgICAgICBjYXNlIDExOlxyXG4gICAgICAgICAgICByZXR1cm4gJ05vdic7XHJcbiAgICAgICAgICBjYXNlIDEyOlxyXG4gICAgICAgICAgICByZXR1cm4gJ0RlYyc7XHJcbiAgICAgICAgICBkZWZhdWx0OiB7XHJcbiAgICAgICAgICAgIHJldHVybiAnJztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgZGVmYXVsdDoge1xyXG4gICAgICAgIHN3aXRjaCAoYXlObykge1xyXG4gICAgICAgICAgY2FzZSAxOlxyXG4gICAgICAgICAgICByZXR1cm4gJ09jYSc7XHJcbiAgICAgICAgICBjYXNlIDI6XHJcbiAgICAgICAgICAgIHJldHVybiAnxZ51Yic7XHJcbiAgICAgICAgICBjYXNlIDM6XHJcbiAgICAgICAgICAgIHJldHVybiAnTWFyJztcclxuICAgICAgICAgIGNhc2UgNDpcclxuICAgICAgICAgICAgcmV0dXJuICdOaXMnO1xyXG4gICAgICAgICAgY2FzZSA1OlxyXG4gICAgICAgICAgICByZXR1cm4gJ01heSc7XHJcbiAgICAgICAgICBjYXNlIDY6XHJcbiAgICAgICAgICAgIHJldHVybiAnSGF6JztcclxuICAgICAgICAgIGNhc2UgNzpcclxuICAgICAgICAgICAgcmV0dXJuICdUZW0nO1xyXG4gICAgICAgICAgY2FzZSA4OlxyXG4gICAgICAgICAgICByZXR1cm4gJ0HEn3UnO1xyXG4gICAgICAgICAgY2FzZSA5OlxyXG4gICAgICAgICAgICByZXR1cm4gJ0V5bCc7XHJcbiAgICAgICAgICBjYXNlIDEwOlxyXG4gICAgICAgICAgICByZXR1cm4gJ0VraSc7XHJcbiAgICAgICAgICBjYXNlIDExOlxyXG4gICAgICAgICAgICByZXR1cm4gJ0thcyc7XHJcbiAgICAgICAgICBjYXNlIDEyOlxyXG4gICAgICAgICAgICByZXR1cm4gJ0FyYSc7XHJcbiAgICAgICAgICBkZWZhdWx0OiB7XHJcbiAgICAgICAgICAgIHJldHVybiAnJztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICBzdGF0aWMgYXlOb1ZlcihheTogc3RyaW5nKTogbnVtYmVyIHtcclxuICAgIHN3aXRjaCAoYXkpIHtcclxuICAgICAgY2FzZSAnT2NhJzogY2FzZSAnT2Nhayc6IGNhc2UgJ0phbic6IGNhc2UgJ0phbnVhcnknOlxyXG4gICAgICAgIHJldHVybiAxO1xyXG4gICAgICBjYXNlICfFnnViJzogY2FzZSAnxZ51YmF0JzogY2FzZSAnRmViJzogY2FzZSAnRmVicnVhcnknOlxyXG4gICAgICAgIHJldHVybiAyO1xyXG4gICAgICBjYXNlICdNYXInOiBjYXNlICdNYXJ0JzogY2FzZSAnTWFyY2gnOlxyXG4gICAgICAgIHJldHVybiAzO1xyXG4gICAgICBjYXNlICdOaXMnOiBjYXNlICdOaXNhbic6IGNhc2UgJ0Fwcic6IGNhc2UgJ0FwcmlsJzpcclxuICAgICAgICByZXR1cm4gNDtcclxuICAgICAgY2FzZSAnTWF5JzogY2FzZSAnTWF5xLFzJzpcclxuICAgICAgICByZXR1cm4gNTtcclxuICAgICAgY2FzZSAnSGF6JzogY2FzZSAnSGF6aXJhbic6IGNhc2UgJ0p1bic6IGNhc2UgJ0p1bmUnOlxyXG4gICAgICAgIHJldHVybiA2O1xyXG4gICAgICBjYXNlICdUZW0nOiBjYXNlICdUZW1tdXonOiBjYXNlICdKdWwnOiBjYXNlICdKdWx5JzpcclxuICAgICAgICByZXR1cm4gNztcclxuICAgICAgY2FzZSAnQcSfdSc6IGNhc2UgJ0HEn3VzdG9zJzogY2FzZSAnQXVnJzogY2FzZSAnQXVndXN0JzpcclxuICAgICAgICByZXR1cm4gODtcclxuICAgICAgY2FzZSAnRXlsJzogY2FzZSAnRXlsw7xsJzogY2FzZSAnU2VwJzogY2FzZSAnU2VwdGVtYmVyJzpcclxuICAgICAgICByZXR1cm4gOTtcclxuICAgICAgY2FzZSAnRWtpJzogY2FzZSAnRWtpbSc6IGNhc2UgJ09jdCc6IGNhc2UgJ09jdG9iZXInOlxyXG4gICAgICAgIHJldHVybiAxMDtcclxuICAgICAgY2FzZSAnS2FzJzogY2FzZSAnS2FzxLFtJzogY2FzZSAnTm92JzogY2FzZSAnTm92ZW1iZXInOlxyXG4gICAgICAgIHJldHVybiAxMTtcclxuICAgICAgY2FzZSAnQXJhJzogY2FzZSAnQXJhbMSxayc6IGNhc2UgJ0RlYyc6IGNhc2UgJ0RlY2VtYmVyJzpcclxuICAgICAgICByZXR1cm4gMTI7XHJcbiAgICAgIGRlZmF1bHQ6IHtcclxuICAgICAgICByZXR1cm4gMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3RhdGljIGd1bkFkaVZlcihndW5ObzogbnVtYmVyLCBjdWx0dXJlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgc3dpdGNoIChjdWx0dXJlKSB7XHJcbiAgICAgIGNhc2UgJ2VuLVVTJzoge1xyXG4gICAgICAgIHN3aXRjaCAoZ3VuTm8pIHtcclxuICAgICAgICAgIGNhc2UgMTpcclxuICAgICAgICAgICAgcmV0dXJuICdNb25kYXknO1xyXG4gICAgICAgICAgY2FzZSAyOlxyXG4gICAgICAgICAgICByZXR1cm4gJ1R1ZXNkYXknO1xyXG4gICAgICAgICAgY2FzZSAzOlxyXG4gICAgICAgICAgICByZXR1cm4gJ1dlZG5lc2RheSc7XHJcbiAgICAgICAgICBjYXNlIDQ6XHJcbiAgICAgICAgICAgIHJldHVybiAnVGh1cnNkYXknO1xyXG4gICAgICAgICAgY2FzZSA1OlxyXG4gICAgICAgICAgICByZXR1cm4gJ0ZyaWRheSc7XHJcbiAgICAgICAgICBjYXNlIDY6XHJcbiAgICAgICAgICAgIHJldHVybiAnU2F0dXJkYXknO1xyXG4gICAgICAgICAgY2FzZSAwOlxyXG4gICAgICAgICAgICByZXR1cm4gJ1N1bmRheSc7XHJcbiAgICAgICAgICBkZWZhdWx0OiB7XHJcbiAgICAgICAgICAgIHJldHVybiAnJztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgZGVmYXVsdDoge1xyXG4gICAgICAgIHN3aXRjaCAoZ3VuTm8pIHtcclxuICAgICAgICAgIGNhc2UgMTpcclxuICAgICAgICAgICAgcmV0dXJuICdQYXphcnRlc2knO1xyXG4gICAgICAgICAgY2FzZSAyOlxyXG4gICAgICAgICAgICByZXR1cm4gJ1NhbMSxJztcclxuICAgICAgICAgIGNhc2UgMzpcclxuICAgICAgICAgICAgcmV0dXJuICfDh2FyxZ9hbWJhJztcclxuICAgICAgICAgIGNhc2UgNDpcclxuICAgICAgICAgICAgcmV0dXJuICdQZXLFn2VtYmUnO1xyXG4gICAgICAgICAgY2FzZSA1OlxyXG4gICAgICAgICAgICByZXR1cm4gJ0N1bWEnO1xyXG4gICAgICAgICAgY2FzZSA2OlxyXG4gICAgICAgICAgICByZXR1cm4gJ0N1bWFydGVzaSc7XHJcbiAgICAgICAgICBjYXNlIDA6XHJcbiAgICAgICAgICAgIHJldHVybiAnUGF6YXInO1xyXG4gICAgICAgICAgZGVmYXVsdDoge1xyXG4gICAgICAgICAgICByZXR1cm4gJyc7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgZ3VuQXJ0dGlyQXphbHQodGFyaWg6IERhdGUsIGd1blNheWlzaTogbnVtYmVyKTogRGF0ZSB7XHJcbiAgICByZXR1cm4gbmV3IERhdGUodGFyaWguZ2V0VGltZSgpICsgZ3VuU2F5aXNpICogMjQgKiA2MCAqIDYwICogMTAwMCk7XHJcblxyXG4gIH1cclxuXHJcbiAgc3RhdGljIHRhcmloUGFyYW1Ub0RhdGUocGFyYW06IHN0cmluZyk6IERhdGUge1xyXG4gICAgbGV0IHRhcmloOiBEYXRlID0gbmV3IERhdGUoKTtcclxuICAgIGlmIChwYXJhbSAhPT0gbnVsbCkge1xyXG4gICAgICBjb25zdCB0YXJpaEFycjogc3RyaW5nW10gPSBwYXJhbS5zcGxpdCgnLScpO1xyXG4gICAgICBpZiAodGFyaWhBcnIubGVuZ3RoID4gMikge1xyXG4gICAgICAgIGNvbnN0IGd1biA9IE51bWJlcih0YXJpaEFyclswXSk7XHJcbiAgICAgICAgY29uc3QgYXkgPSBOdW1iZXIodGFyaWhBcnJbMV0pIC0gMTtcclxuICAgICAgICBjb25zdCB5aWwgPSBOdW1iZXIodGFyaWhBcnJbMl0pO1xyXG4gICAgICAgIHRhcmloID0gbmV3IERhdGUoeWlsLCBheSwgZ3VuKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRhcmloO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGRhdGVUb1RhcmloUGFyYW0ocGFyYW06IERhdGUpOiBzdHJpbmcge1xyXG4gICAgaWYgKHBhcmFtICE9PSBudWxsKSB7XHJcbiAgICAgIGNvbnN0IGd1biA9IHBhcmFtLmdldERhdGUoKTtcclxuICAgICAgY29uc3QgYXkgPSBwYXJhbS5nZXRNb250aCgpICsgMTtcclxuICAgICAgY29uc3QgeWlsID0gcGFyYW0uZ2V0RnVsbFllYXIoKTtcclxuICAgICAgcmV0dXJuIGd1bi50b1N0cmluZygpICsgJy0nICsgYXkudG9TdHJpbmcoKSArICctJyArIHlpbC50b1N0cmluZygpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3RhdGljIGdldEZpbGVFeHRlbnNpb24oZmlsZTogRmlsZSk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gJy4nICsgZmlsZS5uYW1lLnNwbGl0KCcuJykucG9wKCk7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgaGV4VG9SR0JBKGhleDogc3RyaW5nLCBhbHBoYTogbnVtYmVyKSB7XHJcbiAgICAvLyBjb25zb2xlLmxvZyhoZXgpO1xyXG4gICAgY29uc3QgciA9IHBhcnNlSW50KGhleC5zbGljZSgxLCAzKSwgMTYpO1xyXG4gICAgY29uc3QgZyA9IHBhcnNlSW50KGhleC5zbGljZSgzLCA1KSwgMTYpO1xyXG4gICAgY29uc3QgYiA9IHBhcnNlSW50KGhleC5zbGljZSg1LCA3KSwgMTYpO1xyXG5cclxuICAgIC8vIHJldHVybiByICsgJywnICsgZyArICcsJyArIGI7XHJcblxyXG4gICAgaWYgKGFscGhhKSB7XHJcbiAgICAgIHJldHVybiBgcmdiYSgke3J9LCAke2d9LCAke2J9LCAke2FscGhhfSlgO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIGByZ2JhKCR7cn0sICR7Z30sICR7Yn0pYDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHN0YXRpYyBjb2xvck5hbWVUb0hleChjb2xvcjogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBjb2xvcnMgPSB7XHJcbiAgICAgIGFsaWNlYmx1ZTogJyNmMGY4ZmYnLCBhbnRpcXVld2hpdGU6ICcjZmFlYmQ3JywgYXF1YTogJyMwMGZmZmYnLCBhcXVhbWFyaW5lOiAnIzdmZmZkNCcsIGF6dXJlOiAnI2YwZmZmZicsXHJcbiAgICAgIGJlaWdlOiAnI2Y1ZjVkYycsIGJpc3F1ZTogJyNmZmU0YzQnLCBibGFjazogJyMwMDAwMDAnLCBibGFuY2hlZGFsbW9uZDogJyNmZmViY2QnLCBibHVlOiAnIzAwMDBmZicsIGJsdWV2aW9sZXQ6ICcjOGEyYmUyJywgYnJvd246ICcjYTUyYTJhJywgYnVybHl3b29kOiAnI2RlYjg4NycsXHJcbiAgICAgIGNhZGV0Ymx1ZTogJyM1ZjllYTAnLCBjaGFydHJldXNlOiAnIzdmZmYwMCcsIGNob2NvbGF0ZTogJyNkMjY5MWUnLCBjb3JhbDogJyNmZjdmNTAnLCBjb3JuZmxvd2VyYmx1ZTogJyM2NDk1ZWQnLCBjb3Juc2lsazogJyNmZmY4ZGMnLCBjcmltc29uOiAnI2RjMTQzYycsIGN5YW46ICcjMDBmZmZmJyxcclxuICAgICAgZGFya2JsdWU6ICcjMDAwMDhiJywgZGFya2N5YW46ICcjMDA4YjhiJywgZGFya2dvbGRlbnJvZDogJyNiODg2MGInLCBkYXJrZ3JheTogJyNhOWE5YTknLCBkYXJrZ3JlZW46ICcjMDA2NDAwJywgZGFya2toYWtpOiAnI2JkYjc2YicsIGRhcmttYWdlbnRhOiAnIzhiMDA4YicsIGRhcmtvbGl2ZWdyZWVuOiAnIzU1NmIyZicsXHJcbiAgICAgIGRhcmtvcmFuZ2U6ICcjZmY4YzAwJywgZGFya29yY2hpZDogJyM5OTMyY2MnLCBkYXJrcmVkOiAnIzhiMDAwMCcsIGRhcmtzYWxtb246ICcjZTk5NjdhJywgZGFya3NlYWdyZWVuOiAnIzhmYmM4ZicsIGRhcmtzbGF0ZWJsdWU6ICcjNDgzZDhiJywgZGFya3NsYXRlZ3JheTogJyMyZjRmNGYnLCBkYXJrdHVycXVvaXNlOiAnIzAwY2VkMScsXHJcbiAgICAgIGRhcmt2aW9sZXQ6ICcjOTQwMGQzJywgZGVlcHBpbms6ICcjZmYxNDkzJywgZGVlcHNreWJsdWU6ICcjMDBiZmZmJywgZGltZ3JheTogJyM2OTY5NjknLCBkb2RnZXJibHVlOiAnIzFlOTBmZicsXHJcbiAgICAgIGZpcmVicmljazogJyNiMjIyMjInLCBmbG9yYWx3aGl0ZTogJyNmZmZhZjAnLCBmb3Jlc3RncmVlbjogJyMyMjhiMjInLCBmdWNoc2lhOiAnI2ZmMDBmZicsXHJcbiAgICAgIGdhaW5zYm9ybzogJyNkY2RjZGMnLCBnaG9zdHdoaXRlOiAnI2Y4ZjhmZicsIGdvbGQ6ICcjZmZkNzAwJywgZ29sZGVucm9kOiAnI2RhYTUyMCcsIGdyYXk6ICcjODA4MDgwJywgZ3JlZW46ICcjMDA4MDAwJywgZ3JlZW55ZWxsb3c6ICcjYWRmZjJmJyxcclxuICAgICAgaG9uZXlkZXc6ICcjZjBmZmYwJywgaG90cGluazogJyNmZjY5YjQnLFxyXG4gICAgICBpbmRpYW5yZWQ6ICcjY2Q1YzVjJywgaW5kaWdvOiAnIzRiMDA4MicsIGl2b3J5OiAnI2ZmZmZmMCcsIGtoYWtpOiAnI2YwZTY4YycsXHJcbiAgICAgIGxhdmVuZGVyOiAnI2U2ZTZmYScsIGxhdmVuZGVyYmx1c2g6ICcjZmZmMGY1JywgbGF3bmdyZWVuOiAnIzdjZmMwMCcsIGxlbW9uY2hpZmZvbjogJyNmZmZhY2QnLCBsaWdodGJsdWU6ICcjYWRkOGU2JywgbGlnaHRjb3JhbDogJyNmMDgwODAnLCBsaWdodGN5YW46ICcjZTBmZmZmJywgbGlnaHRnb2xkZW5yb2R5ZWxsb3c6ICcjZmFmYWQyJyxcclxuICAgICAgbGlnaHRncmV5OiAnI2QzZDNkMycsIGxpZ2h0Z3JlZW46ICcjOTBlZTkwJywgbGlnaHRwaW5rOiAnI2ZmYjZjMScsIGxpZ2h0c2FsbW9uOiAnI2ZmYTA3YScsIGxpZ2h0c2VhZ3JlZW46ICcjMjBiMmFhJywgbGlnaHRza3libHVlOiAnIzg3Y2VmYScsIGxpZ2h0c2xhdGVncmF5OiAnIzc3ODg5OScsIGxpZ2h0c3RlZWxibHVlOiAnI2IwYzRkZScsXHJcbiAgICAgIGxpZ2h0eWVsbG93OiAnI2ZmZmZlMCcsIGxpbWU6ICcjMDBmZjAwJywgbGltZWdyZWVuOiAnIzMyY2QzMicsIGxpbmVuOiAnI2ZhZjBlNicsXHJcbiAgICAgIG1hZ2VudGE6ICcjZmYwMGZmJywgbWFyb29uOiAnIzgwMDAwMCcsIG1lZGl1bWFxdWFtYXJpbmU6ICcjNjZjZGFhJywgbWVkaXVtYmx1ZTogJyMwMDAwY2QnLCBtZWRpdW1vcmNoaWQ6ICcjYmE1NWQzJywgbWVkaXVtcHVycGxlOiAnIzkzNzBkOCcsIG1lZGl1bXNlYWdyZWVuOiAnIzNjYjM3MScsIG1lZGl1bXNsYXRlYmx1ZTogJyM3YjY4ZWUnLFxyXG4gICAgICBtZWRpdW1zcHJpbmdncmVlbjogJyMwMGZhOWEnLCBtZWRpdW10dXJxdW9pc2U6ICcjNDhkMWNjJywgbWVkaXVtdmlvbGV0cmVkOiAnI2M3MTU4NScsIG1pZG5pZ2h0Ymx1ZTogJyMxOTE5NzAnLCBtaW50Y3JlYW06ICcjZjVmZmZhJywgbWlzdHlyb3NlOiAnI2ZmZTRlMScsIG1vY2Nhc2luOiAnI2ZmZTRiNScsXHJcbiAgICAgIG5hdmFqb3doaXRlOiAnI2ZmZGVhZCcsIG5hdnk6ICcjMDAwMDgwJyxcclxuICAgICAgb2xkbGFjZTogJyNmZGY1ZTYnLCBvbGl2ZTogJyM4MDgwMDAnLCBvbGl2ZWRyYWI6ICcjNmI4ZTIzJywgb3JhbmdlOiAnI2ZmYTUwMCcsIG9yYW5nZXJlZDogJyNmZjQ1MDAnLCBvcmNoaWQ6ICcjZGE3MGQ2JyxcclxuICAgICAgcGFsZWdvbGRlbnJvZDogJyNlZWU4YWEnLCBwYWxlZ3JlZW46ICcjOThmYjk4JywgcGFsZXR1cnF1b2lzZTogJyNhZmVlZWUnLCBwYWxldmlvbGV0cmVkOiAnI2Q4NzA5MycsIHBhcGF5YXdoaXA6ICcjZmZlZmQ1JywgcGVhY2hwdWZmOiAnI2ZmZGFiOScsIHBlcnU6ICcjY2Q4NTNmJywgcGluazogJyNmZmMwY2InLCBwbHVtOiAnI2RkYTBkZCcsIHBvd2RlcmJsdWU6ICcjYjBlMGU2JywgcHVycGxlOiAnIzgwMDA4MCcsXHJcbiAgICAgIHJlYmVjY2FwdXJwbGU6ICcjNjYzMzk5JywgcmVkOiAnI2ZmMDAwMCcsIHJvc3licm93bjogJyNiYzhmOGYnLCByb3lhbGJsdWU6ICcjNDE2OWUxJyxcclxuICAgICAgc2FkZGxlYnJvd246ICcjOGI0NTEzJywgc2FsbW9uOiAnI2ZhODA3MicsIHNhbmR5YnJvd246ICcjZjRhNDYwJywgc2VhZ3JlZW46ICcjMmU4YjU3Jywgc2Vhc2hlbGw6ICcjZmZmNWVlJywgc2llbm5hOiAnI2EwNTIyZCcsIHNpbHZlcjogJyNjMGMwYzAnLCBza3libHVlOiAnIzg3Y2VlYicsIHNsYXRlYmx1ZTogJyM2YTVhY2QnLCBzbGF0ZWdyYXk6ICcjNzA4MDkwJywgc25vdzogJyNmZmZhZmEnLCBzcHJpbmdncmVlbjogJyMwMGZmN2YnLCBzdGVlbGJsdWU6ICcjNDY4MmI0JyxcclxuICAgICAgdGFuOiAnI2QyYjQ4YycsIHRlYWw6ICcjMDA4MDgwJywgdGhpc3RsZTogJyNkOGJmZDgnLCB0b21hdG86ICcjZmY2MzQ3JywgdHVycXVvaXNlOiAnIzQwZTBkMCcsXHJcbiAgICAgIHZpb2xldDogJyNlZTgyZWUnLFxyXG4gICAgICB3aGVhdDogJyNmNWRlYjMnLCB3aGl0ZTogJyNmZmZmZmYnLCB3aGl0ZXNtb2tlOiAnI2Y1ZjVmNScsXHJcbiAgICAgIHllbGxvdzogJyNmZmZmMDAnLCB5ZWxsb3dncmVlbjogJyM5YWNkMzInXHJcbiAgICB9O1xyXG5cclxuICAgIGlmICh0eXBlb2YgY29sb3JzW2NvbG9yLnRvTG93ZXJDYXNlKCldICE9PSAndW5kZWZpbmVkJykge1xyXG4gICAgICByZXR1cm4gY29sb3JzW2NvbG9yLnRvTG93ZXJDYXNlKCldO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBjb2xvcjtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBnZXRGaWxlbmFtZUZyb21Db250ZW50RGlzcG9zaXRpb24oY29udGVudERpc3Bvc2l0aW9uOiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IHJlZ2V4ID0gL2ZpbGVuYW1lW147PVxcbl0qPShVVEYtOChbJ1wiXSopKT8oLiopLztcclxuICAgIGNvbnN0IG1hdGNoZXMgPSByZWdleC5leGVjKGNvbnRlbnREaXNwb3NpdGlvbik7XHJcbiAgICBsZXQgZmlsZW5hbWUgPSAnJztcclxuXHJcbiAgICBpZiAobWF0Y2hlcyAhPSBudWxsICYmIG1hdGNoZXNbM10pIHtcclxuICAgICAgZmlsZW5hbWUgPSBtYXRjaGVzWzNdLnJlcGxhY2UoL1snXCJdL2csICcnKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZGVjb2RlVVJJKGZpbGVuYW1lKTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyB0ZW1hR3VuTm9WZXIoKTogbnVtYmVyIHtcclxuICAgIGNvbnN0IGRuID0gbmV3IERhdGUoKS5nZXREYXkoKTtcclxuICAgIGlmIChkbiA9PT0gMCkge1xyXG4gICAgICByZXR1cm4gNjtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICByZXR1cm4gZG47XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgY2lmdEJvc2x1a1Rla1lhcChtZXRpbjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBtZXRpbi5yZXBsYWNlKC9cXHMrL2csICcgJyk7XHJcbiAgfVxyXG5cclxuICAvKlxyXG4gIHN0YXRpYyByYWthbWxhcmlUZW1pemxlKG1ldGluOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIG1ldGluLnJlcGxhY2UoL1swLTldL2csICcnKTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBib3NsdWtsYXJpVGVtaXpsZShtZXRpbjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBtZXRpbi5yZXBsYWNlKC8gL2csICcnKTtcclxuICB9XHJcbiovXHJcblxyXG4gIHN0YXRpYyBidXl1a0hhcmZlQ2V2aXIobWV0aW46IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gbWV0aW4udG9Mb2NhbGVVcHBlckNhc2UoJ3RyLVRSJyk7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgaWxrSGFyZkJ1eXV0KG1ldGluOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgdXp1bmx1ayA9IG1ldGluLmxlbmd0aDtcclxuICAgIGlmICh1enVubHVrID4gMCkge1xyXG4gICAgICBpZiAodXp1bmx1ayA+IDEpIHtcclxuICAgICAgICByZXR1cm4gbWV0aW4uc3Vic3RyaW5nKDAsIDEpLnRvTG9jYWxlVXBwZXJDYXNlKCd0ci1UUicpICsgbWV0aW4uc3Vic3RyaW5nKDEpLnRvTG9jYWxlTG93ZXJDYXNlKCd0ci1UUicpO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIHJldHVybiBtZXRpbi5zdWJzdHJpbmcoMCwgMSkudG9Mb2NhbGVVcHBlckNhc2UoJ3RyLVRSJyk7XHJcblxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3RhdGljIHR1bUlsa0hhcmZCdXl1dChtZXRpbjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IHBhcmNhbGFyID0gbWV0aW4uc3BsaXQoJyAnKTtcclxuICAgIGNvbnN0IHNvbnVjOiBzdHJpbmdbXSA9IFtdO1xyXG4gICAgcGFyY2FsYXIuZm9yRWFjaChwYXJjYSA9PiB7XHJcbiAgICAgIHNvbnVjLnB1c2godGhpcy5pbGtIYXJmQnV5dXQocGFyY2EpKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHJldHVybiBzb251Yy5qb2luKCcgJyk7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgdHVtQm9zbHVrU2lsKG1ldGluOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgcGFyY2FsYXIgPSBtZXRpbi5zcGxpdCgnICcpO1xyXG4gICAgcmV0dXJuIHBhcmNhbGFyLmpvaW4oJycpO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGt1Y3VrSGFyZkFkZXRWZXIobWV0aW46IHN0cmluZyk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gbWV0aW4ubWF0Y2goL1thLXpdL2cpLmxlbmd0aDtcclxuICB9XHJcbiAgc3RhdGljIGJ1eXVrSGFyZkFkZXRWZXIobWV0aW46IHN0cmluZyk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gbWV0aW4ubWF0Y2goL1tBLVpdL2cpLmxlbmd0aDtcclxuICB9XHJcbiAgc3RhdGljIHJha2FtQWRldFZlcihtZXRpbjogc3RyaW5nKTogbnVtYmVyIHtcclxuICAgIHJldHVybiBtZXRpbi5tYXRjaCgvXFxkL2cpLmxlbmd0aDtcclxuICB9XHJcbiAgc3RhdGljIGhhcmZBZGV0VmVyKG1ldGluOiBzdHJpbmcpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIG1ldGluLnJlcGxhY2UoL1teQS1aXS9naSwgJycpLmxlbmd0aDtcclxuICB9XHJcbiAgc3RhdGljIG96ZWxLYXJha3RlclNpbChtZXRpbjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBtZXRpbi5yZXBsYWNlKC9bXlxcd1xcc10vZ2ksICcnKTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyB0dXJrY2VBeWlrbGEobWV0aW46IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBsZXQgc29udWMgPSBtZXRpbjtcclxuICAgIHNvbnVjID0gc29udWMucmVwbGFjZSgnw5wnLCAnVScpO1xyXG4gICAgc29udWMgPSBzb251Yy5yZXBsYWNlKCfEnicsICdHJyk7XHJcbiAgICBzb251YyA9IHNvbnVjLnJlcGxhY2UoJ8SwJywgJ0knKTtcclxuICAgIHNvbnVjID0gc29udWMucmVwbGFjZSgnxZ4nLCAnUycpO1xyXG4gICAgc29udWMgPSBzb251Yy5yZXBsYWNlKCfDhycsICdDJyk7XHJcbiAgICBzb251YyA9IHNvbnVjLnJlcGxhY2UoJ8OWJywgJ08nKTtcclxuXHJcbiAgICBzb251YyA9IHNvbnVjLnJlcGxhY2UoJ8O8JywgJ3UnKTtcclxuICAgIHNvbnVjID0gc29udWMucmVwbGFjZSgnxJ8nLCAnZycpO1xyXG4gICAgc29udWMgPSBzb251Yy5yZXBsYWNlKCfEsScsICdpJyk7XHJcbiAgICBzb251YyA9IHNvbnVjLnJlcGxhY2UoJ8WfJywgJ3MnKTtcclxuICAgIHNvbnVjID0gc29udWMucmVwbGFjZSgnw6cnLCAnYycpO1xyXG4gICAgc29udWMgPSBzb251Yy5yZXBsYWNlKCfDticsICdvJyk7XHJcbiAgICBzb251YyA9IHNvbnVjLnJlcGxhY2UoJ8W+JywgJ2knKTtcclxuXHJcbiAgICAvLyBzb251YyA9IHNvbnVjLnJlcGxhY2UoL1tcXHUwMzAwLVxcdTAzNmZdL2csICcnKTtcclxuICAgIHJldHVybiBzb251YztcclxuICB9XHJcblxyXG4gIHN0YXRpYyBtZWNyYVR1cnVOb1ZlcihtZWNyYVR1cnVTdHI6IE1lY3JhVHVybGVyaVN0cik6IE1lY3JhVHVybGVyaSB7XHJcbiAgICBzd2l0Y2ggKG1lY3JhVHVydVN0cikge1xyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaVN0ci50dW11OlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmkudHVtdTtcclxuXHJcbiAgICAgIGNhc2UgTWVjcmFUdXJsZXJpU3RyLnR2OlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmkudHY7XHJcblxyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaVN0ci5nYXpldGU6XHJcbiAgICAgICAgcmV0dXJuIE1lY3JhVHVybGVyaS5nYXpldGU7XHJcblxyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaVN0ci5kZXJnaTpcclxuICAgICAgICByZXR1cm4gTWVjcmFUdXJsZXJpLmRlcmdpO1xyXG5cclxuICAgICAgY2FzZSBNZWNyYVR1cmxlcmlTdHIucmFkeW86XHJcbiAgICAgICAgcmV0dXJuIE1lY3JhVHVybGVyaS5yYWR5bztcclxuXHJcbiAgICAgIGNhc2UgTWVjcmFUdXJsZXJpU3RyLnNpbmVtYTpcclxuICAgICAgICByZXR1cm4gTWVjcmFUdXJsZXJpLnNpbmVtYTtcclxuXHJcbiAgICAgIGNhc2UgTWVjcmFUdXJsZXJpU3RyLm91dGRvb3I6XHJcbiAgICAgICAgcmV0dXJuIE1lY3JhVHVybGVyaS5vdXRkb29yO1xyXG5cclxuICAgICAgY2FzZSBNZWNyYVR1cmxlcmlTdHIuaW50ZXJuZXQ6XHJcbiAgICAgICAgcmV0dXJuIE1lY3JhVHVybGVyaS5pbnRlcm5ldDtcclxuXHJcbiAgICAgIGNhc2UgTWVjcmFUdXJsZXJpU3RyLmhpYnJpdFRWOlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmkuaGlicml0VFY7XHJcblxyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaVN0ci5zcG9uc29ybHVrOlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmkuc3BvbnNvcmx1aztcclxuXHJcbiAgICAgIGNhc2UgTWVjcmFUdXJsZXJpU3RyLmJlbGlyc2l6OlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmkuYmVsaXJzaXo7XHJcblxyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaVN0ci5ib3M6XHJcbiAgICAgICAgcmV0dXJuIE1lY3JhVHVybGVyaS5ib3M7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgbWVjcmFUdXJ1U3RyVmVyKG1lY3JhVHVydU5vOiBNZWNyYVR1cmxlcmkpOiBNZWNyYVR1cmxlcmlTdHIge1xyXG4gICAgc3dpdGNoIChtZWNyYVR1cnVObykge1xyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaS50dW11OlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmlTdHIudHVtdTtcclxuXHJcbiAgICAgIGNhc2UgTWVjcmFUdXJsZXJpLnR2OlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmlTdHIudHY7XHJcblxyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaS5nYXpldGU6XHJcbiAgICAgICAgcmV0dXJuIE1lY3JhVHVybGVyaVN0ci5nYXpldGU7XHJcblxyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaS5kZXJnaTpcclxuICAgICAgICByZXR1cm4gTWVjcmFUdXJsZXJpU3RyLmRlcmdpO1xyXG5cclxuICAgICAgY2FzZSBNZWNyYVR1cmxlcmkucmFkeW86XHJcbiAgICAgICAgcmV0dXJuIE1lY3JhVHVybGVyaVN0ci5yYWR5bztcclxuXHJcbiAgICAgIGNhc2UgTWVjcmFUdXJsZXJpLnNpbmVtYTpcclxuICAgICAgICByZXR1cm4gTWVjcmFUdXJsZXJpU3RyLnNpbmVtYTtcclxuXHJcbiAgICAgIGNhc2UgTWVjcmFUdXJsZXJpLm91dGRvb3I6XHJcbiAgICAgICAgcmV0dXJuIE1lY3JhVHVybGVyaVN0ci5vdXRkb29yO1xyXG5cclxuICAgICAgY2FzZSBNZWNyYVR1cmxlcmkuaW50ZXJuZXQ6XHJcbiAgICAgICAgcmV0dXJuIE1lY3JhVHVybGVyaVN0ci5pbnRlcm5ldDtcclxuXHJcbiAgICAgIGNhc2UgTWVjcmFUdXJsZXJpLmhpYnJpdFRWOlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmlTdHIuaGlicml0VFY7XHJcblxyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaS5zcG9uc29ybHVrOlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmlTdHIuc3BvbnNvcmx1aztcclxuXHJcbiAgICAgIGNhc2UgTWVjcmFUdXJsZXJpLmJlbGlyc2l6OlxyXG4gICAgICAgIHJldHVybiBNZWNyYVR1cmxlcmlTdHIuYmVsaXJzaXo7XHJcblxyXG4gICAgICBjYXNlIE1lY3JhVHVybGVyaS5ib3M6XHJcbiAgICAgICAgcmV0dXJuIE1lY3JhVHVybGVyaVN0ci5ib3M7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgcGFkTGVhZGluZ1plcm9zKG51bTogbnVtYmVyLCBzaXplOiBudW1iZXIpIHtcclxuICAgIGxldCBzID0gbnVtICsgJyc7XHJcbiAgICB3aGlsZSAocy5sZW5ndGggPCBzaXplKSBzID0gJzAnICsgcztcclxuICAgIHJldHVybiBzO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGFycmF5VG9TZWxlY3RJdGVtKGFycmF5OiBzdHJpbmdbXSk6IFNlbGVjdEl0ZW08c3RyaW5nPltdIHtcclxuICAgIHJldHVybiBhcnJheS5tYXAoZWxlbWVudCA9PiB7XHJcbiAgICAgIHJldHVybiB7IGxhYmVsOiBlbGVtZW50LCB2YWx1ZTogZWxlbWVudCB9O1xyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHN0YXRpYyBhcnJheU51bWJlclRvU2VsZWN0SXRlbShhcnJheTogbnVtYmVyW10pOiBTZWxlY3RJdGVtPG51bWJlcj5bXSB7XHJcbiAgICByZXR1cm4gYXJyYXkubWFwKGVsZW1lbnQgPT4ge1xyXG4gICAgICByZXR1cm4geyBsYWJlbDogZWxlbWVudC50b1N0cmluZygpLCB2YWx1ZTogZWxlbWVudCB9O1xyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHN0YXRpYyBWQlNSZWFsVG9UZXh0KHNheWk6IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICAvLyByZXR1cm4gc2F5aS50b1N0cmluZygpLnJlcGxhY2UoL1ssXS9nLCAnLicpXHJcbiAgICByZXR1cm4gc2F5aS50b1N0cmluZygpLnJlcGxhY2UoJywnLCAnLicpO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIG5ldHNpc1RhcmloRm9ybWF0aVZlcih0YXJpaDogRGF0ZSk6IHN0cmluZyB7XHJcbiAgICBsZXQgZm9ybWF0bGlUYXJpaCA9ICcnO1xyXG4gICAgZm9ybWF0bGlUYXJpaCA9IGZvcm1hdERhdGUodGFyaWgsICd5eXl5JywgJ3RyLVRSJykgKyAnLScgKyBmb3JtYXREYXRlKHRhcmloLCAnTU0nLCAndHItVFInKTtcclxuICAgIGZvcm1hdGxpVGFyaWggKz0gJy0nICsgZm9ybWF0RGF0ZSh0YXJpaCwgJ2RkJywgJ3RyLVRSJykgKyAnIDAwOjAwOjAwLjAwMCdcclxuICAgIHJldHVybiBmb3JtYXRsaVRhcmloO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIG5ldHNpc0Rvdml6VGlwaVZlcihwYXJhQmlyaW1pOiBzdHJpbmcpOiBudW1iZXIge1xyXG4gICAgc3dpdGNoIChwYXJhQmlyaW1pKSB7XHJcbiAgICAgIGNhc2UgKCckJyB8fCAnVVNEJyk6XHJcbiAgICAgICAgcmV0dXJuIDE7XHJcbiAgICAgIGNhc2UgKCfigqwnIHx8ICdFdXInIHx8ICdFVScgfHwgJ0V1cm8nIHx8ICdBdnJvJyk6XHJcbiAgICAgICAgcmV0dXJuIDEzO1xyXG4gICAgICBjYXNlICgnwqMnIHx8ICdHQlAnIHx8ICdTdGVybGluJyB8fCAnUG91bmQnKTpcclxuICAgICAgICByZXR1cm4gMztcclxuICAgICAgY2FzZSAoJ1NFSycpOlxyXG4gICAgICAgIHJldHVybiA2O1xyXG4gICAgICBjYXNlICgnQ0hGJyk6XHJcbiAgICAgICAgcmV0dXJuIDU7XHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgcmV0dXJuIDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgbmV0c2lzRmF0Tm9WZXIoZmF0dXJhTm86IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBpZiAoZmF0dXJhTm8ubGVuZ3RoID09PSAxNikge1xyXG4gICAgICByZXR1cm4gZmF0dXJhTm8uc2xpY2UoMCwgNykgKyBmYXR1cmFOby5zbGljZSg4LCBmYXR1cmFOby5sZW5ndGgpO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHJldHVybiBmYXR1cmFObztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHN0YXRpYyByZXNpbU1pKGxpbms6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgbGV0IHJlc2ltTWkgPSBmYWxzZTtcclxuXHJcbiAgICBjb25zdCB1emFudGkgPSBsaW5rLnNwbGl0KCcuJykucG9wKCk7XHJcblxyXG4gICAgc3dpdGNoICh1emFudGkpIHtcclxuICAgICAgY2FzZSAnanBnJzpcclxuICAgICAgICByZXNpbU1pID0gdHJ1ZTtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGNhc2UgJ2pwZWcnOlxyXG4gICAgICAgIHJlc2ltTWkgPSB0cnVlO1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgY2FzZSAnanBlJzpcclxuICAgICAgICByZXNpbU1pID0gdHJ1ZTtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGNhc2UgJ2pmaWYnOlxyXG4gICAgICAgIHJlc2ltTWkgPSB0cnVlO1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgY2FzZSAndGlmJzpcclxuICAgICAgICByZXNpbU1pID0gdHJ1ZTtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGNhc2UgJ3RpZmYnOlxyXG4gICAgICAgIHJlc2ltTWkgPSB0cnVlO1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgY2FzZSAnZ2lmJzpcclxuICAgICAgICByZXNpbU1pID0gdHJ1ZTtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGNhc2UgJ0dJRic6XHJcbiAgICAgICAgcmVzaW1NaSA9IHRydWU7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlICdwbmcnOlxyXG4gICAgICAgIHJlc2ltTWkgPSB0cnVlO1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgY2FzZSAnYm1wJzpcclxuICAgICAgICByZXNpbU1pID0gdHJ1ZTtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcmVzaW1NaVxyXG4gIH1cclxuXHJcbiAgc3RhdGljIGF5UG9wVmVyKGN1bHR1cmU6IHN0cmluZywgdHVtdUVrbGU6IGJvb2xlYW4pOiBTZWxlY3RJdGVtPG51bWJlcj5bXSB7XHJcbiAgICBsZXQgc29udWM6IFNlbGVjdEl0ZW08bnVtYmVyPltdID0gW107XHJcbiAgICBzd2l0Y2ggKGN1bHR1cmUpIHtcclxuICAgICAgY2FzZSAnZW4tVVMnOiB7XHJcbiAgICAgICAgc29udWMgPSBbXHJcbiAgICAgICAgICB7IGxhYmVsOiAnSmFudWFyeScsIHZhbHVlOiAxIH0sXHJcbiAgICAgICAgICB7IGxhYmVsOiAnRmVicnVhcnknLCB2YWx1ZTogMiB9LFxyXG4gICAgICAgICAgeyBsYWJlbDogJ01hcmNoJywgdmFsdWU6IDMgfSxcclxuICAgICAgICAgIHsgbGFiZWw6ICdBcHJpbCcsIHZhbHVlOiA0IH0sXHJcbiAgICAgICAgICB7IGxhYmVsOiAnTWF5JywgdmFsdWU6IDUgfSxcclxuICAgICAgICAgIHsgbGFiZWw6ICdKdW5lJywgdmFsdWU6IDYgfSxcclxuICAgICAgICAgIHsgbGFiZWw6ICdKdWx5JywgdmFsdWU6IDcgfSxcclxuICAgICAgICAgIHsgbGFiZWw6ICdBdWd1c3QnLCB2YWx1ZTogOCB9LFxyXG4gICAgICAgICAgeyBsYWJlbDogJ1NlcHRlbWJlcicsIHZhbHVlOiA5IH0sXHJcbiAgICAgICAgICB7IGxhYmVsOiAnT2N0b2JlcicsIHZhbHVlOiAxMCB9LFxyXG4gICAgICAgICAgeyBsYWJlbDogJ05vdmVtYmVyJywgdmFsdWU6IDExIH0sXHJcbiAgICAgICAgICB7IGxhYmVsOiAnRGVjZW1iZXInLCB2YWx1ZTogMTIgfVxyXG4gICAgICAgIF07XHJcbiAgICAgICAgaWYgKHR1bXVFa2xlKSB7XHJcbiAgICAgICAgICBzb251Yy51bnNoaWZ0KHsgbGFiZWw6ICdBbGwnLCB2YWx1ZTogMCB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgICAgZGVmYXVsdDoge1xyXG4gICAgICAgIHNvbnVjID0gW1xyXG4gICAgICAgICAgeyBsYWJlbDogJ09jYWsnLCB2YWx1ZTogMSB9LFxyXG4gICAgICAgICAgeyBsYWJlbDogJ8WedWJhdCcsIHZhbHVlOiAyIH0sXHJcbiAgICAgICAgICB7IGxhYmVsOiAnTWFydCcsIHZhbHVlOiAzIH0sXHJcbiAgICAgICAgICB7IGxhYmVsOiAnTmlzYW4nLCB2YWx1ZTogNCB9LFxyXG4gICAgICAgICAgeyBsYWJlbDogJ01hecSxcycsIHZhbHVlOiA1IH0sXHJcbiAgICAgICAgICB7IGxhYmVsOiAnSGF6aXJhbicsIHZhbHVlOiA2IH0sXHJcbiAgICAgICAgICB7IGxhYmVsOiAnVGVtbXV6JywgdmFsdWU6IDcgfSxcclxuICAgICAgICAgIHsgbGFiZWw6ICdBxJ91c3RvcycsIHZhbHVlOiA4IH0sXHJcbiAgICAgICAgICB7IGxhYmVsOiAnRXlsw7xsJywgdmFsdWU6IDkgfSxcclxuICAgICAgICAgIHsgbGFiZWw6ICdFa2ltJywgdmFsdWU6IDEwIH0sXHJcbiAgICAgICAgICB7IGxhYmVsOiAnS2FzxLFtJywgdmFsdWU6IDExIH0sXHJcbiAgICAgICAgICB7IGxhYmVsOiAnQXJhbMSxaycsIHZhbHVlOiAxMiB9XHJcbiAgICAgICAgXTtcclxuICAgICAgICBpZiAodHVtdUVrbGUpIHtcclxuICAgICAgICAgIHNvbnVjLnVuc2hpZnQoeyBsYWJlbDogJ1TDvG3DvCcsIHZhbHVlOiAwIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHNvbnVjO1xyXG5cclxuICB9XHJcblxyXG4gIHN0YXRpYyBheVBvcFZlckFyYWxpayhpbGtBeTogbnVtYmVyLCBzb25BeTogbnVtYmVyLCBjdWx0dXJlOiBzdHJpbmcsIHR1bXVFa2xlOiBib29sZWFuKTogU2VsZWN0SXRlbTxudW1iZXI+W10ge1xyXG4gICAgY29uc3Qgc29udWM6IFNlbGVjdEl0ZW08bnVtYmVyPltdID0gW107XHJcbiAgICBmb3IgKGxldCBheVNheWFjID0gaWxrQXk7IGF5U2F5YWMgPD0gc29uQXk7IGF5U2F5YWMrKykge1xyXG4gICAgICBzb251Yy5wdXNoKHsgbGFiZWw6IHRoaXMuYXlBZGlWZXIoYXlTYXlhYywgY3VsdHVyZSksIHZhbHVlOiBheVNheWFjIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0dW11RWtsZSkge1xyXG4gICAgICBzd2l0Y2ggKGN1bHR1cmUpIHtcclxuICAgICAgICBjYXNlICdlbi1VUyc6XHJcbiAgICAgICAgICBzb251Yy51bnNoaWZ0KHsgbGFiZWw6ICdBbGwnLCB2YWx1ZTogMCB9KTtcclxuICAgICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgc29udWMudW5zaGlmdCh7IGxhYmVsOiAnVMO8bcO8JywgdmFsdWU6IDAgfSk7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHNvbnVjO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIHlpbFBvcFZlcihpbGtZaWw6IG51bWJlciwgc29uWWlsOiBudW1iZXIpOiBudW1iZXJbXSB7XHJcbiAgICBjb25zdCBzb251YzogbnVtYmVyW10gPSBbXTtcclxuICAgIGZvciAobGV0IHlpbFNheWFjID0gc29uWWlsOyB5aWxTYXlhYyA+PSBpbGtZaWw7IHlpbFNheWFjLS0pIHtcclxuICAgICAgc29udWMucHVzaCh5aWxTYXlhYyk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgY3VycmVudFllYXI6IG51bWJlciA9IG5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKTtcclxuICAgIGlmIChzb251Yy5pbmRleE9mKGN1cnJlbnRZZWFyKSA9PSAtMSkge1xyXG4gICAgICBzb251Yy51bnNoaWZ0KGN1cnJlbnRZZWFyKTtcclxuICAgICAgc29udWMuc29ydCgoYSwgYikgPT4gYSArIGIpLnJldmVyc2UoKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gc29udWM7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgeWlsUG9wVmVyVGV4dChpbGtZaWw6IG51bWJlciwgc29uWWlsOiBudW1iZXIsIGN1bHR1cmU6IHN0cmluZywgdHVtdUVrbGU6IGJvb2xlYW4pOiBzdHJpbmdbXSB7XHJcbiAgICBjb25zdCBzb251Yzogc3RyaW5nW10gPSBbXTtcclxuICAgIGZvciAobGV0IHlpbFNheWFjID0gc29uWWlsOyB5aWxTYXlhYyA+PSBpbGtZaWw7IHlpbFNheWFjLS0pIHtcclxuICAgICAgc29udWMucHVzaCh5aWxTYXlhYy50b1N0cmluZygpKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBjdXJyZW50WWVhcjogbnVtYmVyID0gbmV3IERhdGUoKS5nZXRGdWxsWWVhcigpO1xyXG4gICAgaWYgKHNvbnVjLmluZGV4T2YoY3VycmVudFllYXIudG9TdHJpbmcoKSkgPT0gLTEpIHtcclxuICAgICAgc29udWMudW5zaGlmdChjdXJyZW50WWVhci50b1N0cmluZygpKTtcclxuICAgICAgc29udWMuc29ydCgoYSwgYikgPT4gYi5sb2NhbGVDb21wYXJlKGEpKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodHVtdUVrbGUpIHtcclxuICAgICAgc3dpdGNoIChjdWx0dXJlKSB7XHJcbiAgICAgICAgY2FzZSAnZW4tVVMnOlxyXG4gICAgICAgICAgc29udWMudW5zaGlmdCgnQWxsJyk7XHJcbiAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgIHNvbnVjLnVuc2hpZnQoJ1TDvG3DvCcpO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBzb251YztcclxuICB9XHJcblxyXG4gIHN0YXRpYyBzdHJpbmdBcnJheVRvU2VsZWN0SXRlbShzb3VyY2VBcnJheTogc3RyaW5nW10sIHNlY2luaXpFa2xlOiBib29sZWFuID0gZmFsc2UsIHR1bXVFa2xlOiBib29sZWFuID0gZmFsc2UsIGJvc0VrbGU6IGJvb2xlYW4gPSBmYWxzZSk6IFNlbGVjdEl0ZW08c3RyaW5nPltdIHtcclxuICAgIGNvbnN0IHNvbnVjOiBTZWxlY3RJdGVtPHN0cmluZz5bXSA9IHNvdXJjZUFycmF5Lm1hcChlbGVtZW50ID0+ICh7IGxhYmVsOiBlbGVtZW50LCB2YWx1ZTogZWxlbWVudCB9KSk7XHJcbiAgICBpZiAoc2VjaW5pekVrbGUpIHtcclxuICAgICAgc29udWMudW5zaGlmdCh7IGxhYmVsOiAnU2XDp2luaXonLCB2YWx1ZTogJycgfSk7XHJcbiAgICB9XHJcbiAgICBpZiAodHVtdUVrbGUpIHtcclxuICAgICAgc29udWMudW5zaGlmdCh7IGxhYmVsOiAnVMO8bcO8JywgdmFsdWU6ICdUw7xtw7wnIH0pO1xyXG4gICAgfVxyXG4gICAgaWYgKGJvc0VrbGUpIHtcclxuICAgICAgc29udWMudW5zaGlmdCh7IGxhYmVsOiAnKEJvxZ8pJywgdmFsdWU6ICcnIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBzb251YztcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gKiBTYWF0IDAwIHZleWEgMDEgaXNlIDI0IHZlIDI1IHlhcGFyXHJcbiAqIEBncm91cCBNZXRob2RzXHJcbiAqL1xyXG4gIHN0YXRpYyBzYWF0RHV6ZW5sZShzb3VyY2U6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBsZXQgYml0aXNTYWF0aSA9IHNvdXJjZS5zdWJzdHJpbmcoMCwgMik7XHJcbiAgICBjb25zdCBiaXRpc0Rha2lrYXNpID0gc291cmNlLnN1YnN0cmluZyg1LCAzKTtcclxuICAgIGlmIChiaXRpc1NhYXRpID09PSAnMDAnKSB7XHJcbiAgICAgIGJpdGlzU2FhdGkgPSAnMjQnXHJcbiAgICB9IGVsc2UgaWYgKGJpdGlzU2FhdGkgPT09ICcwMScpIHtcclxuICAgICAgYml0aXNTYWF0aSA9ICcyNSdcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gYml0aXNTYWF0aSArICc6JyArIGJpdGlzRGFraWthc2k7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -7,10 +7,10 @@ export class DikeyBaslikliPanelComponent {
|
|
|
7
7
|
this.baslikFontSize = input(1.5, { transform: numberAttribute });
|
|
8
8
|
this.baslikGenislik = input(3, { transform: numberAttribute });
|
|
9
9
|
}
|
|
10
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
11
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.
|
|
10
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: DikeyBaslikliPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
11
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.3", type: DikeyBaslikliPanelComponent, isStandalone: true, selector: "dikey-baslikli-panel", inputs: { baslik: { classPropertyName: "baslik", publicName: "baslik", isSignal: true, isRequired: true, transformFunction: null }, renk: { classPropertyName: "renk", publicName: "renk", isSignal: true, isRequired: false, transformFunction: null }, baslikFontSize: { classPropertyName: "baslikFontSize", publicName: "baslikFontSize", isSignal: true, isRequired: false, transformFunction: null }, baslikGenislik: { classPropertyName: "baslikGenislik", publicName: "baslikGenislik", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "flex flex-wrap mb-2" }, ngImport: i0, template: "<div class=\"flex flex-auto justify-between\">\r\n <div class=\"flex flex-wrap mb-2\">\r\n <ng-content />\r\n </div>\r\n <div class=\"flex justify-items-end dikey-baslikli-panel-blok\" [style.backgroundColor]=\"renk()\"\r\n [style.font-size.rem]=\"baslikFontSize()\" [style.width.rem]=\"baslikGenislik()\">\r\n <div class=\"flex h-full justify-between flex-wrap flex-col\" [style.width.rem]=\"baslikGenislik()\">\r\n <div class=\"flex place-items-center justify-center w-full h-4 my-2\">\r\n <i class=\"fas fa-angle-double-up\"></i>\r\n </div>\r\n\r\n <div class=\"grow baslik-yazi\">\r\n {{baslik()}}\r\n </div>\r\n\r\n <div class=\"flex place-items-center justify-center w-full h-4 my-2\">\r\n <i class=\"fas fa-angle-double-down\"></i>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n</div>\r\n", styles: [":host{background-color:#ffffffb3;border-radius:.35em;width:100%;margin-bottom:.5em}:host .dikey-baslikli-panel-blok{flex:0 0 auto;color:#fff;border-top-right-radius:.35em;color:#f5f5f5;border-bottom-right-radius:.35em}:host .baslik-yazi{width:100%;writing-mode:vertical-lr;text-orientation:mixed;display:flex;justify-content:center;align-items:center}\n/*!_variable.scss*/\n"] }); }
|
|
12
12
|
}
|
|
13
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: DikeyBaslikliPanelComponent, decorators: [{
|
|
14
14
|
type: Component,
|
|
15
15
|
args: [{ selector: 'dikey-baslikli-panel', standalone: true, host: {
|
|
16
16
|
'class': 'flex flex-wrap mb-2'
|
|
@@ -45,8 +45,8 @@ export class FiltreBarComponent {
|
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
47
|
}
|
|
48
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
49
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.
|
|
48
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: FiltreBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
49
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.3", type: FiltreBarComponent, isStandalone: true, selector: "filtre-bar", inputs: { yon: { classPropertyName: "yon", publicName: "yon", isSignal: true, isRequired: false, transformFunction: null }, genislik: { classPropertyName: "genislik", publicName: "genislik", isSignal: true, isRequired: false, transformFunction: null }, kaydirma: { classPropertyName: "kaydirma", publicName: "kaydirma", isSignal: true, isRequired: false, transformFunction: null }, filtreBarAcik: { classPropertyName: "filtreBarAcik", publicName: "filtreBarAcik", isSignal: true, isRequired: false, transformFunction: null }, aramaAlan: { classPropertyName: "aramaAlan", publicName: "aramaAlan", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { filtreBarAcik: "filtreBarAcikChange" }, queries: [{ propertyName: "arama", first: true, predicate: ["arama"], descendants: true, isSignal: true }, { propertyName: "filtreler", first: true, predicate: ["filtreler"], descendants: true, isSignal: true }, { propertyName: "filtreDugmeler", first: true, predicate: ["filtreDugmeler"], descendants: true, isSignal: true }], viewQueries: [{ propertyName: "filtreDiv", first: true, predicate: ["filtreDiv"], descendants: true, isSignal: true }, { propertyName: "aramaDiv", first: true, predicate: ["aramaDiv"], descendants: true, isSignal: true }], ngImport: i0, template: "@if (arama()) {\r\n<div class=\"filtre-arama\" #aramaDiv>\r\n <ng-container *ngTemplateOutlet=\"arama(); context: {$implicit: aramaIcerik}\">\r\n {{aramaIcerik}}\r\n </ng-container>\r\n</div>\r\n}\r\n<div class=\"filtre-grup\">\r\n @if (filtreler()) {\r\n <div class=\"filtre-filtreler\"\r\n [@filtreBarAcikKapali]=\"{value: filtreBarAcik() ? 'acik' : 'kapali', params:{animasyonGenislik: animasyonGenislik()}}\"\r\n (@filtreBarAcikKapali.start)=\"animationStartEvent($event)\" (@filtreBarAcikKapali.done)=\"animationDoneEvent($event)\"\r\n [style.right.px]=\"sag()\" #filtreDiv>\r\n <ng-container *ngTemplateOutlet=\"filtreler(); context: {$implicit: filtreIcerik}\">\r\n {{filtreIcerik()}}\r\n </ng-container>\r\n </div>\r\n }\r\n\r\n @if (filtreDugmeler()) {\r\n <div class=\"filtre-dugmeler\">\r\n <ng-container *ngTemplateOutlet=\"filtreDugmeler(); context: {$implicit: filtreDugmeIcerik}\">\r\n {{filtreIcerik()}}\r\n </ng-container>\r\n </div>\r\n }\r\n</div>\r\n", styles: [":host{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap-reverse}:host .filtre-arama{display:flex;flex:none;align-items:flex-start;justify-content:flex-end}:host .filtre-grup{display:flex;align-items:flex-start;justify-content:flex-end;flex-wrap:wrap-reverse}:host .filtre-grup .filtre-filtreler{display:flex;align-items:flex-start;justify-content:flex-end}:host .filtre-grup .filtre-dugmeler{display:flex;align-items:flex-start;justify-content:flex-end}\n/*!_variable.scss*/\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [
|
|
50
50
|
trigger('filtreBarAcikKapali', [
|
|
51
51
|
// ...
|
|
52
52
|
state('acik', style({
|
|
@@ -64,7 +64,7 @@ export class FiltreBarComponent {
|
|
|
64
64
|
]),
|
|
65
65
|
] }); }
|
|
66
66
|
}
|
|
67
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
67
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: FiltreBarComponent, decorators: [{
|
|
68
68
|
type: Component,
|
|
69
69
|
args: [{ selector: 'filtre-bar', standalone: true, imports: [NgTemplateOutlet], animations: [
|
|
70
70
|
trigger('filtreBarAcikKapali', [
|
|
@@ -29,13 +29,13 @@ export class GeriIleriDetayComponent {
|
|
|
29
29
|
resetUndo() {
|
|
30
30
|
this.undoRedoStack.reset();
|
|
31
31
|
}
|
|
32
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
33
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.
|
|
32
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: GeriIleriDetayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
33
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.3", type: GeriIleriDetayComponent, isStandalone: true, selector: "geri-ileri-detay", inputs: { object: "object" }, usesOnChanges: true, ngImport: i0, template: "<p-splitButton styleClass=\"mx-1\" icon=\"fas fa-undo\" [model]=\"undoRedoStack.undoItems\"\r\n [disabled]=\"!undoRedoStack.canUndo()\" [pTooltip]=\"undoRedoStack.undoTip\" tooltipZIndex=\"100000\" escape\r\n (onClick)=\"undoClick()\" />\r\n<p-splitButton styleClass=\"mx-1\" icon=\"fas fa-redo\" [model]=\"undoRedoStack.redoItems\"\r\n [disabled]=\"!undoRedoStack.canRedo()\" [pTooltip]=\"undoRedoStack.redoTip\" tooltipZIndex=\"100000\" escape\r\n (onClick)=\"redoClick()\" />\r\n<p-button styleClass=\"mx-1\" title=\"Reset\" icon=\"fas fa-sync\"\r\n [disabled]=\"!undoRedoStack.canRedo() && !undoRedoStack.canUndo()\" (onClick)=\"resetUndo()\" />\r\n", dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "style", "styleClass", "badgeClass", "ariaLabel", "autofocus"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: SplitButtonModule }, { kind: "component", type: i2.SplitButton, selector: "p-splitButton", inputs: ["model", "severity", "raised", "rounded", "text", "outlined", "size", "plain", "icon", "iconPos", "label", "tooltip", "tooltipOptions", "style", "styleClass", "menuStyle", "menuStyleClass", "appendTo", "dir", "expandAriaLabel", "showTransitionOptions", "hideTransitionOptions", "buttonProps", "menuButtonProps", "autofocus", "disabled", "tabindex", "menuButtonDisabled", "buttonDisabled"], outputs: ["onClick", "onMenuHide", "onMenuShow", "onDropdownClick"] }, { kind: "directive", type: i3.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "ngmodule", type: TooltipModule }] }); }
|
|
34
34
|
}
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: GeriIleriDetayComponent, decorators: [{
|
|
36
36
|
type: Component,
|
|
37
37
|
args: [{ selector: 'geri-ileri-detay', standalone: true, imports: [ButtonModule, SplitButtonModule, TooltipModule], template: "<p-splitButton styleClass=\"mx-1\" icon=\"fas fa-undo\" [model]=\"undoRedoStack.undoItems\"\r\n [disabled]=\"!undoRedoStack.canUndo()\" [pTooltip]=\"undoRedoStack.undoTip\" tooltipZIndex=\"100000\" escape\r\n (onClick)=\"undoClick()\" />\r\n<p-splitButton styleClass=\"mx-1\" icon=\"fas fa-redo\" [model]=\"undoRedoStack.redoItems\"\r\n [disabled]=\"!undoRedoStack.canRedo()\" [pTooltip]=\"undoRedoStack.redoTip\" tooltipZIndex=\"100000\" escape\r\n (onClick)=\"redoClick()\" />\r\n<p-button styleClass=\"mx-1\" title=\"Reset\" icon=\"fas fa-sync\"\r\n [disabled]=\"!undoRedoStack.canRedo() && !undoRedoStack.canUndo()\" (onClick)=\"resetUndo()\" />\r\n" }]
|
|
38
38
|
}], ctorParameters: () => [], propDecorators: { object: [{
|
|
39
39
|
type: Input
|
|
40
40
|
}] } });
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VyaS1pbGVyaS1kZXRheS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvZ2VyaS1pbGVyaS1kZXRheS9nZXJpLWlsZXJpLWRldGF5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9nZXJpLWlsZXJpLWRldGF5L2dlcmktaWxlcmktZGV0YXkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQTRCLE1BQU0sZUFBZSxDQUFDO0FBRTNFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDbkMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVoRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7QUFTOUQsc0NBQXNDO0FBQ3RDLE1BQU0sT0FBTyx1QkFBdUI7SUFJbEM7UUFIUyxXQUFNLEdBQVEsSUFBSSxNQUFNLEVBQUUsQ0FBQztRQUVwQyxrQkFBYSxHQUFHLElBQUksa0JBQWtCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBR2hELENBQUM7SUFFTCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztZQUN4QyxJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzdELENBQUM7SUFDSCxDQUFDO0lBRUQsU0FBUztRQUNQLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELFNBQVM7UUFDUCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxTQUFTO1FBQ1AsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUM3QixDQUFDOzhHQXpCVSx1QkFBdUI7a0dBQXZCLHVCQUF1QiwrSENqQnBDLG9wQkFRQSwyQ0RJWSxZQUFZLDZYQUFFLGlCQUFpQixpNUJBQUUsYUFBYTs7MkZBSzdDLHVCQUF1QjtrQkFSbkMsU0FBUzsrQkFDRSxrQkFBa0IsY0FDaEIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGlCQUFpQixFQUFFLGFBQWEsQ0FBQzt3REFNaEQsTUFBTTtzQkFBZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBjbG9uZURlZXAgfSBmcm9tICdsb2Rhc2gnO1xyXG5pbXBvcnQgeyBCdXR0b25Nb2R1bGUgfSBmcm9tICdwcmltZW5nL2J1dHRvbic7XHJcbmltcG9ydCB7IFNwbGl0QnV0dG9uTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9zcGxpdGJ1dHRvbic7XHJcbmltcG9ydCB7IFRvb2x0aXBNb2R1bGUgfSBmcm9tICdwcmltZW5nL3Rvb2x0aXAnO1xyXG5cclxuaW1wb3J0IHsgVW5kb1JlZG9EZXRheVN0YWNrIH0gZnJvbSAnLi9nZXJpLWlsZXJpLWRldGF5Lm1vZGVsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZ2VyaS1pbGVyaS1kZXRheScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbQnV0dG9uTW9kdWxlLCBTcGxpdEJ1dHRvbk1vZHVsZSwgVG9vbHRpcE1vZHVsZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICdnZXJpLWlsZXJpLWRldGF5LmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5cclxuLy8gQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuZXhwb3J0IGNsYXNzIEdlcmlJbGVyaURldGF5Q29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcclxuICBASW5wdXQoKSBvYmplY3Q6IGFueSA9IG5ldyBPYmplY3QoKTtcclxuXHJcbiAgdW5kb1JlZG9TdGFjayA9IG5ldyBVbmRvUmVkb0RldGF5U3RhY2sodGhpcy5vYmplY3QpO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG5cclxuICApIHsgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICBpZiAoY2hhbmdlcy5vYmplY3QpIHtcclxuICAgICAgdGhpcy51bmRvUmVkb1N0YWNrLm9iamVjdCA9IHRoaXMub2JqZWN0O1xyXG4gICAgICB0aGlzLnVuZG9SZWRvU3RhY2sub3JpamluYWxPYmplY3QgPSBjbG9uZURlZXAodGhpcy5vYmplY3QpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdW5kb0NsaWNrKCkge1xyXG4gICAgdGhpcy51bmRvUmVkb1N0YWNrLnVuZG8oKTtcclxuICB9XHJcblxyXG4gIHJlZG9DbGljaygpIHtcclxuICAgIHRoaXMudW5kb1JlZG9TdGFjay5yZWRvKCk7XHJcbiAgfVxyXG5cclxuICByZXNldFVuZG8oKSB7XHJcbiAgICB0aGlzLnVuZG9SZWRvU3RhY2sucmVzZXQoKTtcclxuICB9XHJcblxyXG59XHJcbiIsIjxwLXNwbGl0QnV0dG9uIHN0eWxlQ2xhc3M9XCJteC0xXCIgaWNvbj1cImZhcyBmYS11bmRvXCIgW21vZGVsXT1cInVuZG9SZWRvU3RhY2sudW5kb0l0ZW1zXCJcclxuICBbZGlzYWJsZWRdPVwiIXVuZG9SZWRvU3RhY2suY2FuVW5kbygpXCIgW3BUb29sdGlwXT1cInVuZG9SZWRvU3RhY2sudW5kb1RpcFwiIHRvb2x0aXBaSW5kZXg9XCIxMDAwMDBcIiBlc2NhcGVcclxuICAob25DbGljayk9XCJ1bmRvQ2xpY2soKVwiIC8+XHJcbjxwLXNwbGl0QnV0dG9uIHN0eWxlQ2xhc3M9XCJteC0xXCIgaWNvbj1cImZhcyBmYS1yZWRvXCIgW21vZGVsXT1cInVuZG9SZWRvU3RhY2sucmVkb0l0ZW1zXCJcclxuICBbZGlzYWJsZWRdPVwiIXVuZG9SZWRvU3RhY2suY2FuUmVkbygpXCIgW3BUb29sdGlwXT1cInVuZG9SZWRvU3RhY2sucmVkb1RpcFwiIHRvb2x0aXBaSW5kZXg9XCIxMDAwMDBcIiBlc2NhcGVcclxuICAob25DbGljayk9XCJyZWRvQ2xpY2soKVwiIC8+XHJcbjxwLWJ1dHRvbiBzdHlsZUNsYXNzPVwibXgtMVwiIHRpdGxlPVwiUmVzZXRcIiBpY29uPVwiZmFzIGZhLXN5bmNcIlxyXG4gIFtkaXNhYmxlZF09XCIhdW5kb1JlZG9TdGFjay5jYW5SZWRvKCkgJiYgIXVuZG9SZWRvU3RhY2suY2FuVW5kbygpXCIgKG9uQ2xpY2spPVwicmVzZXRVbmRvKClcIiAvPlxyXG4iXX0=
|
|
@@ -34,13 +34,13 @@ export class GeriIleriListeComponent {
|
|
|
34
34
|
resetUndo() {
|
|
35
35
|
this.undoRedoStack.reset();
|
|
36
36
|
}
|
|
37
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
38
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.
|
|
37
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: GeriIleriListeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
38
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.3", type: GeriIleriListeComponent, isStandalone: true, selector: "geri-ileri-liste", inputs: { collection: "collection" }, usesOnChanges: true, ngImport: i0, template: "<p-splitButton styleClass=\"mx-1\" icon=\"fas fa-undo\" [model]=\"undoRedoStack.undoItems\"\r\n [disabled]=\"!undoRedoStack.canUndo()\" [pTooltip]=\"undoRedoStack.undoTip\" tooltipZIndex=\"100000\" escape\r\n (onClick)=\"undoClick()\" />\r\n<p-splitButton styleClass=\"mx-1\" icon=\"fas fa-redo\" [model]=\"undoRedoStack.redoItems\"\r\n [disabled]=\"!undoRedoStack.canRedo()\" [pTooltip]=\"undoRedoStack.redoTip\" tooltipZIndex=\"100000\" escape\r\n (onClick)=\"redoClick()\" />\r\n<p-button styleClass=\"mx-1\" title=\"Reset\" icon=\"fas fa-sync\"\r\n [disabled]=\"!undoRedoStack.canRedo() && !undoRedoStack.canUndo()\" (onClick)=\"resetUndo()\" />\r\n", dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "style", "styleClass", "badgeClass", "ariaLabel", "autofocus"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: SplitButtonModule }, { kind: "component", type: i2.SplitButton, selector: "p-splitButton", inputs: ["model", "severity", "raised", "rounded", "text", "outlined", "size", "plain", "icon", "iconPos", "label", "tooltip", "tooltipOptions", "style", "styleClass", "menuStyle", "menuStyleClass", "appendTo", "dir", "expandAriaLabel", "showTransitionOptions", "hideTransitionOptions", "buttonProps", "menuButtonProps", "autofocus", "disabled", "tabindex", "menuButtonDisabled", "buttonDisabled"], outputs: ["onClick", "onMenuHide", "onMenuShow", "onDropdownClick"] }, { kind: "directive", type: i3.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "ngmodule", type: TooltipModule }] }); }
|
|
39
39
|
}
|
|
40
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
40
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: GeriIleriListeComponent, decorators: [{
|
|
41
41
|
type: Component,
|
|
42
42
|
args: [{ selector: 'geri-ileri-liste', standalone: true, imports: [ButtonModule, SplitButtonModule, TooltipModule], template: "<p-splitButton styleClass=\"mx-1\" icon=\"fas fa-undo\" [model]=\"undoRedoStack.undoItems\"\r\n [disabled]=\"!undoRedoStack.canUndo()\" [pTooltip]=\"undoRedoStack.undoTip\" tooltipZIndex=\"100000\" escape\r\n (onClick)=\"undoClick()\" />\r\n<p-splitButton styleClass=\"mx-1\" icon=\"fas fa-redo\" [model]=\"undoRedoStack.redoItems\"\r\n [disabled]=\"!undoRedoStack.canRedo()\" [pTooltip]=\"undoRedoStack.redoTip\" tooltipZIndex=\"100000\" escape\r\n (onClick)=\"redoClick()\" />\r\n<p-button styleClass=\"mx-1\" title=\"Reset\" icon=\"fas fa-sync\"\r\n [disabled]=\"!undoRedoStack.canRedo() && !undoRedoStack.canUndo()\" (onClick)=\"resetUndo()\" />\r\n" }]
|
|
43
43
|
}], ctorParameters: () => [], propDecorators: { collection: [{
|
|
44
44
|
type: Input
|
|
45
45
|
}] } });
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VyaS1pbGVyaS1saXN0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvZ2VyaS1pbGVyaS1saXN0ZS9nZXJpLWlsZXJpLWxpc3RlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9nZXJpLWlsZXJpLWxpc3RlL2dlcmktaWxlcmktbGlzdGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQW9DLE1BQU0sZUFBZSxDQUFDO0FBRW5GLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDaEQsT0FBTyxFQUFFLEVBQUUsSUFBSSxNQUFNLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFcEMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7O0FBUzlELHNDQUFzQztBQUN0QyxNQUFNLE9BQU8sdUJBQXVCO0lBS2xDO1FBSEEsZUFBVSxHQUFVLEVBQUUsQ0FBQztRQUV2QixrQkFBYSxHQUFHLElBQUksa0JBQWtCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBR3BELENBQUM7SUFFTCxRQUFRO1FBQ04sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQ2xELENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUFDLFVBQWlCO1FBQzNCLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxFQUFFLEdBQUcsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQsU0FBUztRQUNQLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELFNBQVM7UUFDUCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxTQUFTO1FBQ1AsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUM3QixDQUFDOzhHQWpDVSx1QkFBdUI7a0dBQXZCLHVCQUF1Qix1SUNqQnBDLG9wQkFRQSwyQ0RJWSxZQUFZLDZYQUFFLGlCQUFpQixpNUJBQUUsYUFBYTs7MkZBSzdDLHVCQUF1QjtrQkFSbkMsU0FBUzsrQkFDRSxrQkFBa0IsY0FDaEIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGlCQUFpQixFQUFFLGFBQWEsQ0FBQzt3REFPekQsVUFBVTtzQkFEVCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IEJ1dHRvbk1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvYnV0dG9uJztcclxuaW1wb3J0IHsgU3BsaXRCdXR0b25Nb2R1bGUgfSBmcm9tICdwcmltZW5nL3NwbGl0YnV0dG9uJztcclxuaW1wb3J0IHsgVG9vbHRpcE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvdG9vbHRpcCc7XHJcbmltcG9ydCB7IHY0IGFzIHV1aWR2NCB9IGZyb20gJ3V1aWQnO1xyXG5cclxuaW1wb3J0IHsgVW5kb1JlZG9MaXN0ZVN0YWNrIH0gZnJvbSAnLi9nZXJpLWlsZXJpLWxpc3RlLm1vZGVsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZ2VyaS1pbGVyaS1saXN0ZScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbQnV0dG9uTW9kdWxlLCBTcGxpdEJ1dHRvbk1vZHVsZSwgVG9vbHRpcE1vZHVsZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICdnZXJpLWlsZXJpLWxpc3RlLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5cclxuLy8gQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuZXhwb3J0IGNsYXNzIEdlcmlJbGVyaUxpc3RlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xyXG4gIEBJbnB1dCgpXHJcbiAgY29sbGVjdGlvbjogYW55W10gPSBbXTtcclxuXHJcbiAgdW5kb1JlZG9TdGFjayA9IG5ldyBVbmRvUmVkb0xpc3RlU3RhY2sodGhpcy5jb2xsZWN0aW9uKTtcclxuICBjb25zdHJ1Y3RvcihcclxuXHJcbiAgKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmdlbmVyYXRlSURzKHRoaXMuY29sbGVjdGlvbik7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICBpZiAoY2hhbmdlcy5jb2xsZWN0aW9uKSB7XHJcbiAgICAgIHRoaXMudW5kb1JlZG9TdGFjay5jb2xsZWN0aW9uID0gdGhpcy5jb2xsZWN0aW9uO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2VuZXJhdGVJRHMoY29sbGVjdGlvbjogYW55W10pIHtcclxuICAgIGNvbGxlY3Rpb24ubWFwKChlbGVtZW50KSA9PiBlbGVtZW50LmlkID0gdXVpZHY0KCkpO1xyXG4gIH1cclxuXHJcbiAgdW5kb0NsaWNrKCkge1xyXG4gICAgdGhpcy51bmRvUmVkb1N0YWNrLnVuZG8oKTtcclxuICB9XHJcblxyXG4gIHJlZG9DbGljaygpIHtcclxuICAgIHRoaXMudW5kb1JlZG9TdGFjay5yZWRvKCk7XHJcbiAgfVxyXG5cclxuICByZXNldFVuZG8oKSB7XHJcbiAgICB0aGlzLnVuZG9SZWRvU3RhY2sucmVzZXQoKTtcclxuICB9XHJcblxyXG59XHJcbiIsIjxwLXNwbGl0QnV0dG9uIHN0eWxlQ2xhc3M9XCJteC0xXCIgaWNvbj1cImZhcyBmYS11bmRvXCIgW21vZGVsXT1cInVuZG9SZWRvU3RhY2sudW5kb0l0ZW1zXCJcclxuICBbZGlzYWJsZWRdPVwiIXVuZG9SZWRvU3RhY2suY2FuVW5kbygpXCIgW3BUb29sdGlwXT1cInVuZG9SZWRvU3RhY2sudW5kb1RpcFwiIHRvb2x0aXBaSW5kZXg9XCIxMDAwMDBcIiBlc2NhcGVcclxuICAob25DbGljayk9XCJ1bmRvQ2xpY2soKVwiIC8+XHJcbjxwLXNwbGl0QnV0dG9uIHN0eWxlQ2xhc3M9XCJteC0xXCIgaWNvbj1cImZhcyBmYS1yZWRvXCIgW21vZGVsXT1cInVuZG9SZWRvU3RhY2sucmVkb0l0ZW1zXCJcclxuICBbZGlzYWJsZWRdPVwiIXVuZG9SZWRvU3RhY2suY2FuUmVkbygpXCIgW3BUb29sdGlwXT1cInVuZG9SZWRvU3RhY2sucmVkb1RpcFwiIHRvb2x0aXBaSW5kZXg9XCIxMDAwMDBcIiBlc2NhcGVcclxuICAob25DbGljayk9XCJyZWRvQ2xpY2soKVwiIC8+XHJcbjxwLWJ1dHRvbiBzdHlsZUNsYXNzPVwibXgtMVwiIHRpdGxlPVwiUmVzZXRcIiBpY29uPVwiZmFzIGZhLXN5bmNcIlxyXG4gIFtkaXNhYmxlZF09XCIhdW5kb1JlZG9TdGFjay5jYW5SZWRvKCkgJiYgIXVuZG9SZWRvU3RhY2suY2FuVW5kbygpXCIgKG9uQ2xpY2spPVwicmVzZXRVbmRvKClcIiAvPlxyXG4iXX0=
|