{"remainingRequest":"/home/cmiss/Jenkins/workspace/mapintegratedvuer/node_modules/thread-loader/dist/cjs.js!/home/cmiss/Jenkins/workspace/mapintegratedvuer/node_modules/babel-loader/lib/index.js!/home/cmiss/Jenkins/workspace/mapintegratedvuer/node_modules/eslint-loader/index.js??ref--14-0!/home/cmiss/Jenkins/workspace/mapintegratedvuer/src/store/modules/splitFlow.js","dependencies":[{"path":"/home/cmiss/Jenkins/workspace/mapintegratedvuer/src/store/modules/splitFlow.js","mtime":1702257344752},{"path":"/home/cmiss/Jenkins/workspace/mapintegratedvuer/babel.config.js","mtime":1684261475125},{"path":"/home/cmiss/Jenkins/workspace/mapintegratedvuer/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/home/cmiss/Jenkins/workspace/mapintegratedvuer/node_modules/thread-loader/dist/cjs.js","mtime":499162500000},{"path":"/home/cmiss/Jenkins/workspace/mapintegratedvuer/node_modules/babel-loader/lib/index.js","mtime":456789000000},{"path":"/home/cmiss/Jenkins/workspace/mapintegratedvuer/node_modules/eslint-loader/index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0IF9zbGljZWRUb0FycmF5IGZyb20gIi9ob21lL2NtaXNzL0plbmtpbnMvd29ya3NwYWNlL21hcGludGVncmF0ZWR2dWVyL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9zbGljZWRUb0FycmF5LmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMub2JqZWN0LmVudHJpZXMuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5pbmNsdWRlcy5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LnB1c2guanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5vYmplY3QudG8tc3RyaW5nLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkuZmluZC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLm9iamVjdC5rZXlzLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkuaXRlcmF0b3IuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy93ZWIuZG9tLWNvbGxlY3Rpb25zLml0ZXJhdG9yLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuZnVuY3Rpb24ubmFtZS5qcyI7Ci8qIGVzbGludC1kaXNhYmxlIG5vLWFsZXJ0LCBuby1jb25zb2xlICovCmltcG9ydCBWdWUgZnJvbSAidnVlIjsKdmFyIHByZXNldExheW91dHMgPSBmdW5jdGlvbiBwcmVzZXRMYXlvdXRzKHZpZXcpIHsKICBzd2l0Y2ggKHZpZXcpIHsKICAgIGNhc2UgIjJob3JwYW5lbCI6CiAgICAgIHJldHVybiB7CiAgICAgICAgInNwbGl0LTEiOiB7CiAgICAgICAgICBjb250ZW50OiBmYWxzZSwKICAgICAgICAgIGhvcml6b250YWw6IHRydWUsCiAgICAgICAgICBjaGlsZHJlbjogWyJwYW5lLTEiLCAicGFuZS0yIl0KICAgICAgICB9LAogICAgICAgICJwYW5lLTEiOiB7CiAgICAgICAgICBjb250ZW50OiB0cnVlLAogICAgICAgICAgaWQ6IDEKICAgICAgICB9LAogICAgICAgICJwYW5lLTIiOiB7CiAgICAgICAgICBjb250ZW50OiB0cnVlLAogICAgICAgICAgaWQ6IDIKICAgICAgICB9CiAgICAgIH07CiAgICBjYXNlICIydmVydHBhbmVsIjoKICAgICAgcmV0dXJuIHsKICAgICAgICAic3BsaXQtMSI6IHsKICAgICAgICAgIGNvbnRlbnQ6IGZhbHNlLAogICAgICAgICAgaG9yaXpvbnRhbDogZmFsc2UsCiAgICAgICAgICBjaGlsZHJlbjogWyJwYW5lLTEiLCAicGFuZS0yIl0KICAgICAgICB9LAogICAgICAgICJwYW5lLTEiOiB7CiAgICAgICAgICBjb250ZW50OiB0cnVlLAogICAgICAgICAgaWQ6IDEKICAgICAgICB9LAogICAgICAgICJwYW5lLTIiOiB7CiAgICAgICAgICBjb250ZW50OiB0cnVlLAogICAgICAgICAgaWQ6IDIKICAgICAgICB9CiAgICAgIH07CiAgICBjYXNlICIzcGFuZWwiOgogICAgICByZXR1cm4gewogICAgICAgICJzcGxpdC0xIjogewogICAgICAgICAgY29udGVudDogZmFsc2UsCiAgICAgICAgICBob3Jpem9udGFsOiBmYWxzZSwKICAgICAgICAgIGNoaWxkcmVuOiBbInBhbmUtMSIsICJzcGxpdC0yIl0KICAgICAgICB9LAogICAgICAgICJzcGxpdC0yIjogewogICAgICAgICAgY29udGVudDogZmFsc2UsCiAgICAgICAgICBob3Jpem9udGFsOiB0cnVlLAogICAgICAgICAgY2hpbGRyZW46IFsicGFuZS0yIiwgInBhbmUtMyJdCiAgICAgICAgfSwKICAgICAgICAicGFuZS0xIjogewogICAgICAgICAgY29udGVudDogdHJ1ZSwKICAgICAgICAgIGlkOiAxCiAgICAgICAgfSwKICAgICAgICAicGFuZS0yIjogewogICAgICAgICAgY29udGVudDogdHJ1ZSwKICAgICAgICAgIGlkOiAyCiAgICAgICAgfSwKICAgICAgICAicGFuZS0zIjogewogICAgICAgICAgY29udGVudDogdHJ1ZSwKICAgICAgICAgIGlkOiAzCiAgICAgICAgfQogICAgICB9OwogICAgY2FzZSAiNHBhbmVsIjoKICAgICAgcmV0dXJuIHsKICAgICAgICAic3BsaXQtMSI6IHsKICAgICAgICAgIGNvbnRlbnQ6IGZhbHNlLAogICAgICAgICAgaG9yaXpvbnRhbDogZmFsc2UsCiAgICAgICAgICBjaGlsZHJlbjogWyJzcGxpdC0zIiwgInNwbGl0LTIiXQogICAgICAgIH0sCiAgICAgICAgInNwbGl0LTIiOiB7CiAgICAgICAgICBjb250ZW50OiBmYWxzZSwKICAgICAgICAgIGhvcml6b250YWw6IHRydWUsCiAgICAgICAgICBjaGlsZHJlbjogWyJwYW5lLTIiLCAicGFuZS0zIl0KICAgICAgICB9LAogICAgICAgICJzcGxpdC0zIjogewogICAgICAgICAgY29udGVudDogZmFsc2UsCiAgICAgICAgICBob3Jpem9udGFsOiB0cnVlLAogICAgICAgICAgY2hpbGRyZW46IFsicGFuZS0xIiwgInBhbmUtNCJdCiAgICAgICAgfSwKICAgICAgICAicGFuZS0xIjogewogICAgICAgICAgY29udGVudDogdHJ1ZSwKICAgICAgICAgIGlkOiAxCiAgICAgICAgfSwKICAgICAgICAicGFuZS0yIjogewogICAgICAgICAgY29udGVudDogdHJ1ZSwKICAgICAgICAgIGlkOiAyCiAgICAgICAgfSwKICAgICAgICAicGFuZS0zIjogewogICAgICAgICAgY29udGVudDogdHJ1ZSwKICAgICAgICAgIGlkOiAzCiAgICAgICAgfSwKICAgICAgICAicGFuZS00IjogewogICAgICAgICAgY29udGVudDogdHJ1ZSwKICAgICAgICAgIGlkOiA0CiAgICAgICAgfQogICAgICB9OwogICAgY2FzZSAiNXBhbmVsIjoKICAgICAgcmV0dXJuIHsKICAgICAgICAic3BsaXQtMSI6IHsKICAgICAgICAgIGNvbnRlbnQ6IGZhbHNlLAogICAgICAgICAgaG9yaXpvbnRhbDogdHJ1ZSwKICAgICAgICAgIGNoaWxkcmVuOiBbInNwbGl0LTMiLCAic3BsaXQtMiJdCiAgICAgICAgfSwKICAgICAgICAic3BsaXQtMiI6IHsKICAgICAgICAgIGNvbnRlbnQ6IGZhbHNlLAogICAgICAgICAgaG9yaXpvbnRhbDogZmFsc2UsCiAgICAgICAgICBjaGlsZHJlbjogWyJwYW5lLTIiLCAicGFuZS0zIl0KICAgICAgICB9LAogICAgICAgICJzcGxpdC0zIjogewogICAgICAgICAgY29udGVudDogZmFsc2UsCiAgICAgICAgICBob3Jpem9udGFsOiBmYWxzZSwKICAgICAgICAgIGNoaWxkcmVuOiBbInBhbmUtMSIsICJwYW5lLTQiLCAicGFuZS01Il0KICAgICAgICB9LAogICAgICAgICJwYW5lLTEiOiB7CiAgICAgICAgICBjb250ZW50OiB0cnVlLAogICAgICAgICAgaWQ6IDEKICAgICAgICB9LAogICAgICAgICJwYW5lLTIiOiB7CiAgICAgICAgICBjb250ZW50OiB0cnVlLAogICAgICAgICAgaWQ6IDIKICAgICAgICB9LAogICAgICAgICJwYW5lLTMiOiB7CiAgICAgICAgICBjb250ZW50OiB0cnVlLAogICAgICAgICAgaWQ6IDMKICAgICAgICB9LAogICAgICAgICJwYW5lLTQiOiB7CiAgICAgICAgICBjb250ZW50OiB0cnVlLAogICAgICAgICAgaWQ6IDQKICAgICAgICB9LAogICAgICAgICJwYW5lLTUiOiB7CiAgICAgICAgICBjb250ZW50OiB0cnVlLAogICAgICAgICAgaWQ6IDUKICAgICAgICB9CiAgICAgIH07CiAgICBjYXNlICI2cGFuZWwiOgogICAgICByZXR1cm4gewogICAgICAgICJzcGxpdC0xIjogewogICAgICAgICAgY29udGVudDogZmFsc2UsCiAgICAgICAgICBob3Jpem9udGFsOiB0cnVlLAogICAgICAgICAgY2hpbGRyZW46IFsic3BsaXQtMyIsICJzcGxpdC0yIl0KICAgICAgICB9LAogICAgICAgICJzcGxpdC0yIjogewogICAgICAgICAgY29udGVudDogZmFsc2UsCiAgICAgICAgICBob3Jpem9udGFsOiBmYWxzZSwKICAgICAgICAgIGNoaWxkcmVuOiBbInBhbmUtMiIsICJwYW5lLTMiLCAicGFuZS01Il0KICAgICAgICB9LAogICAgICAgICJzcGxpdC0zIjogewogICAgICAgICAgY29udGVudDogZmFsc2UsCiAgICAgICAgICBob3Jpem9udGFsOiBmYWxzZSwKICAgICAgICAgIGNoaWxkcmVuOiBbInBhbmUtMSIsICJwYW5lLTQiLCAicGFuZS02Il0KICAgICAgICB9LAogICAgICAgICJwYW5lLTEiOiB7CiAgICAgICAgICBjb250ZW50OiB0cnVlLAogICAgICAgICAgaWQ6IDEKICAgICAgICB9LAogICAgICAgICJwYW5lLTIiOiB7CiAgICAgICAgICBjb250ZW50OiB0cnVlLAogICAgICAgICAgaWQ6IDIKICAgICAgICB9LAogICAgICAgICJwYW5lLTMiOiB7CiAgICAgICAgICBjb250ZW50OiB0cnVlLAogICAgICAgICAgaWQ6IDMKICAgICAgICB9LAogICAgICAgICJwYW5lLTQiOiB7CiAgICAgICAgICBjb250ZW50OiB0cnVlLAogICAgICAgICAgaWQ6IDQKICAgICAgICB9LAogICAgICAgICJwYW5lLTUiOiB7CiAgICAgICAgICBjb250ZW50OiB0cnVlLAogICAgICAgICAgaWQ6IDUKICAgICAgICB9LAogICAgICAgICJwYW5lLTYiOiB7CiAgICAgICAgICBjb250ZW50OiB0cnVlLAogICAgICAgICAgaWQ6IDYKICAgICAgICB9CiAgICAgIH07CiAgICBjYXNlICI2cGFuZWxWZXJ0aWNhbCI6CiAgICAgIHJldHVybiB7CiAgICAgICAgInNwbGl0LTEiOiB7CiAgICAgICAgICBjb250ZW50OiBmYWxzZSwKICAgICAgICAgIGhvcml6b250YWw6IGZhbHNlLAogICAgICAgICAgY2hpbGRyZW46IFsic3BsaXQtMyIsICJzcGxpdC0yIl0KICAgICAgICB9LAogICAgICAgICJzcGxpdC0yIjogewogICAgICAgICAgY29udGVudDogZmFsc2UsCiAgICAgICAgICBob3Jpem9udGFsOiB0cnVlLAogICAgICAgICAgY2hpbGRyZW46IFsicGFuZS0yIiwgInBhbmUtMyIsICJwYW5lLTUiXQogICAgICAgIH0sCiAgICAgICAgInNwbGl0LTMiOiB7CiAgICAgICAgICBjb250ZW50OiBmYWxzZSwKICAgICAgICAgIGhvcml6b250YWw6IHRydWUsCiAgICAgICAgICBjaGlsZHJlbjogWyJwYW5lLTEiLCAicGFuZS00IiwgInBhbmUtNiJdCiAgICAgICAgfSwKICAgICAgICAicGFuZS0xIjogewogICAgICAgICAgY29udGVudDogdHJ1ZSwKICAgICAgICAgIGlkOiAxCiAgICAgICAgfSwKICAgICAgICAicGFuZS0yIjogewogICAgICAgICAgY29udGVudDogdHJ1ZSwKICAgICAgICAgIGlkOiAyCiAgICAgICAgfSwKICAgICAgICAicGFuZS0zIjogewogICAgICAgICAgY29udGVudDogdHJ1ZSwKICAgICAgICAgIGlkOiAzCiAgICAgICAgfSwKICAgICAgICAicGFuZS00IjogewogICAgICAgICAgY29udGVudDogdHJ1ZSwKICAgICAgICAgIGlkOiA0CiAgICAgICAgfSwKICAgICAgICAicGFuZS01IjogewogICAgICAgICAgY29udGVudDogdHJ1ZSwKICAgICAgICAgIGlkOiA1CiAgICAgICAgfSwKICAgICAgICAicGFuZS02IjogewogICAgICAgICAgY29udGVudDogdHJ1ZSwKICAgICAgICAgIGlkOiA2CiAgICAgICAgfQogICAgICB9OwogICAgY2FzZSAic2luZ2xlcGFuZWwiOgogICAgZGVmYXVsdDoKICAgICAgcmV0dXJuIHsKICAgICAgICAic3BsaXQtMSI6IHsKICAgICAgICAgIGNvbnRlbnQ6IGZhbHNlLAogICAgICAgICAgaG9yaXpvbnRhbDogZmFsc2UsCiAgICAgICAgICBjaGlsZHJlbjogWyJwYW5lLTEiXQogICAgICAgIH0sCiAgICAgICAgInBhbmUtMSI6IHsKICAgICAgICAgIGNvbnRlbnQ6IHRydWUsCiAgICAgICAgICBpZDogMQogICAgICAgIH0KICAgICAgfTsKICB9Cn07CgovL0EgbWV0aG9kIHRvIGFzc2lnbiB1bnVzZWQgZW50cnkgdG8gcGFuZSB3aXRoIGR1cGxpY2F0ZWQgaWQKdmFyIGF1dG9Bc3NpZ25FbnRyeUlkc1RvUGFuZSA9IGZ1bmN0aW9uIGF1dG9Bc3NpZ25FbnRyeUlkc1RvUGFuZShlbnRyaWVzLCBsYXlvdXQpIHsKICB2YXIgYXNzaWduZWRJZHMgPSBbXTsKICB2YXIgaW52YWxpZElkS2V5cyA9IFtdOwogIGZvciAodmFyIF9pID0gMCwgX09iamVjdCRlbnRyaWVzID0gT2JqZWN0LmVudHJpZXMobGF5b3V0KTsgX2kgPCBfT2JqZWN0JGVudHJpZXMubGVuZ3RoOyBfaSsrKSB7CiAgICB2YXIgX09iamVjdCRlbnRyaWVzJF9pID0gX3NsaWNlZFRvQXJyYXkoX09iamVjdCRlbnRyaWVzW19pXSwgMiksCiAgICAgIGtleSA9IF9PYmplY3QkZW50cmllcyRfaVswXSwKICAgICAgdmFsdWUgPSBfT2JqZWN0JGVudHJpZXMkX2lbMV07CiAgICBpZiAodmFsdWUuY29udGVudCkgewogICAgICBpZiAoYXNzaWduZWRJZHMuaW5jbHVkZXModmFsdWUuaWQpKSB7CiAgICAgICAgLy9pZCBoYXMgZ290IGFuIGFzc2lnbmVkIHBhbmUsIGNhY2hlIGl0IGFuZCBmaW5kIG9uZQogICAgICAgIC8vbGF0ZXIKICAgICAgICBpbnZhbGlkSWRLZXlzLnB1c2goa2V5KTsKICAgICAgfSBlbHNlIHsKICAgICAgICBhc3NpZ25lZElkcy5wdXNoKHZhbHVlLmlkKTsKICAgICAgfQogICAgfQogIH0KICBpbnZhbGlkSWRLZXlzLmZvckVhY2goZnVuY3Rpb24gKGtleSkgewogICAgdmFyIGRvbmUgPSBmYWxzZTsKICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZW50cmllcy5sZW5ndGggJiYgIWRvbmU7IGkrKykgewogICAgICBpZiAoIWFzc2lnbmVkSWRzLmluY2x1ZGVzKGVudHJpZXNbaV0uaWQpKSB7CiAgICAgICAgbGF5b3V0W2tleV0uaWQgPSBlbnRyaWVzW2ldLmlkOwogICAgICAgIGFzc2lnbmVkSWRzLnB1c2goZW50cmllcy5pZCk7CiAgICAgICAgZG9uZSA9IHRydWU7CiAgICAgIH0KICAgIH0KICB9KTsKfTsKdmFyIGV4dHJhY3RQYW5lSW5mbyA9IGZ1bmN0aW9uIGV4dHJhY3RQYW5lSW5mbyhsYXlvdXQpIHsKICB2YXIgcGFuZXMgPSB7fTsKICBmb3IgKHZhciBfaTIgPSAwLCBfT2JqZWN0JGVudHJpZXMyID0gT2JqZWN0LmVudHJpZXMobGF5b3V0KTsgX2kyIDwgX09iamVjdCRlbnRyaWVzMi5sZW5ndGg7IF9pMisrKSB7CiAgICB2YXIgX09iamVjdCRlbnRyaWVzMiRfaSA9IF9zbGljZWRUb0FycmF5KF9PYmplY3QkZW50cmllczJbX2kyXSwgMiksCiAgICAgIGtleSA9IF9PYmplY3QkZW50cmllczIkX2lbMF0sCiAgICAgIHZhbHVlID0gX09iamVjdCRlbnRyaWVzMiRfaVsxXTsKICAgIGlmICh2YWx1ZS5jb250ZW50KSB7CiAgICAgIHBhbmVzW2tleV0gPSB2YWx1ZTsKICAgIH0KICB9CiAgcmV0dXJuIHBhbmVzOwp9Owp2YXIgbmV3TGF5b3V0V2l0aE9yaWdJbmZvID0gZnVuY3Rpb24gbmV3TGF5b3V0V2l0aE9yaWdJbmZvKG9yaWdpbmFsLCBhY3RpdmVWaWV3KSB7CiAgdmFyIHBhbmVzID0gZXh0cmFjdFBhbmVJbmZvKG9yaWdpbmFsKTsKICB2YXIgY3VzdG9tTGF5b3V0ID0gcHJlc2V0TGF5b3V0cyhhY3RpdmVWaWV3KTsKICBmb3IgKHZhciBfaTMgPSAwLCBfT2JqZWN0JGVudHJpZXMzID0gT2JqZWN0LmVudHJpZXMocGFuZXMpOyBfaTMgPCBfT2JqZWN0JGVudHJpZXMzLmxlbmd0aDsgX2kzKyspIHsKICAgIHZhciBfT2JqZWN0JGVudHJpZXMzJF9pID0gX3NsaWNlZFRvQXJyYXkoX09iamVjdCRlbnRyaWVzM1tfaTNdLCAyKSwKICAgICAga2V5ID0gX09iamVjdCRlbnRyaWVzMyRfaVswXSwKICAgICAgdmFsdWUgPSBfT2JqZWN0JGVudHJpZXMzJF9pWzFdOwogICAgY3VzdG9tTGF5b3V0W2tleV0gPSB2YWx1ZTsKICB9CiAgcmV0dXJuIGN1c3RvbUxheW91dDsKfTsKdmFyIGZpbmRLZXlXaXRoSWQgPSBmdW5jdGlvbiBmaW5kS2V5V2l0aElkKGxheW91dCwgaWQpIHsKICByZXR1cm4gT2JqZWN0LmtleXMobGF5b3V0KS5maW5kKGZ1bmN0aW9uIChrZXkpIHsKICAgIHJldHVybiBsYXlvdXRba2V5XVsiaWQiXSA9PT0gaWQ7CiAgfSk7Cn07CnZhciBzdGF0ZSA9IGZ1bmN0aW9uIHN0YXRlKCkgewogIHJldHVybiB7CiAgICBhY3RpdmVWaWV3OiAic2luZ2xlcGFuZWwiLAogICAgdmlld0ljb25zOiBbewogICAgICBpY29uOiAic2luZ2xlcGFuZWwiLAogICAgICBuYW1lOiAiU2luZ2xlIHZpZXciLAogICAgICBtaW46IDEKICAgIH0sIHsKICAgICAgaWNvbjogIjJob3JwYW5lbCIsCiAgICAgIG5hbWU6ICJIb3Jpem9udGFsIHNwbGl0IiwKICAgICAgbWluOiAyCiAgICB9LCB7CiAgICAgIGljb246ICIydmVydHBhbmVsIiwKICAgICAgbmFtZTogIlZlcnRpY2FsIHNwbGl0IiwKICAgICAgbWluOiAyCiAgICB9LCB7CiAgICAgIGljb246ICIzcGFuZWwiLAogICAgICBuYW1lOiAiVGhyZWUgcGFuZXMiLAogICAgICBtaW46IDMKICAgIH0sIHsKICAgICAgaWNvbjogIjRwYW5lbCIsCiAgICAgIG5hbWU6ICJGb3VyIHBhbmVzIiwKICAgICAgbWluOiA0CiAgICB9LCB7CiAgICAgIGljb246ICI1cGFuZWwiLAogICAgICBuYW1lOiAiRml2ZSBwYW5lcyIsCiAgICAgIG1pbjogNQogICAgfSwgewogICAgICBpY29uOiAiNnBhbmVsIiwKICAgICAgbmFtZTogIlNpeCAoaG9yaXpvbnRhbCkiLAogICAgICBtaW46IDYKICAgIH0sIHsKICAgICAgaWNvbjogIjZwYW5lbFZlcnRpY2FsIiwKICAgICAgbmFtZTogIlNpeCAodmVydGljYWwpIiwKICAgICAgbWluOiA2CiAgICB9CiAgICAvL3sgaWNvbjogImN1c3RvbWlzZSIsIG5hbWU6ICJDdXN0b21pc2UiLCBtaW46IDIgfQogICAgXSwKCiAgICBjdXN0b21MYXlvdXQ6IHsKICAgICAgInNwbGl0LTEiOiB7CiAgICAgICAgY29udGVudDogZmFsc2UsCiAgICAgICAgaG9yaXpvbnRhbDogZmFsc2UsCiAgICAgICAgY2hpbGRyZW46IFsicGFuZS0xIl0KICAgICAgfSwKICAgICAgInBhbmUtMSI6IHsKICAgICAgICBjb250ZW50OiB0cnVlLAogICAgICAgIGlkOiAxCiAgICAgIH0KICAgICAgLyoKICAgICAgRXhhbXBsZSBsYXlvdXQKICAgICAgICJzcGxpdC0xIjoge2NvbnRlbnQ6IGZhbHNlLCBob3Jpem9udGFsOiB0cnVlLCBjaGlsZHJlbjogWyJzcGxpdC0yIiwgInBhbmUtMSJdfSwKICAgICAgInNwbGl0LTIiOiB7Y29udGVudDogZmFsc2UsIGhvcml6b250YWw6IGZhbHNlLCBjaGlsZHJlbjogWyJwYW5lLTIiLCAicGFuZS0zIl19LAogICAgICAicGFuZS0xIjoge2NvbnRlbnQ6IHRydWUsICBpZDogMX0sCiAgICAgICJwYW5lLTIiOiB7Y29udGVudDogdHJ1ZSwgIGlkOiAyfSwKICAgICAgInBhbmUtMyI6IHtjb250ZW50OiB0cnVlLCAgaWQ6IDN9LAogICAgICAqLwogICAgfSwKCiAgICBzcGxpdHRlcnM6IHsKICAgICAgImZpcnN0IjogNTAsCiAgICAgICJzZWNvbmQiOiA1MCwKICAgICAgInRoaXJkIjogNTAKICAgIH0sCiAgICBnbG9iYWxDYWxsYmFjazogZmFsc2UsCiAgICBzeW5jTW9kZTogZmFsc2UKICB9Owp9Owp2YXIgZ2V0dGVycyA9IHsKICBnZXRQYW5lTmFtZUJ5SWQ6IGZ1bmN0aW9uIGdldFBhbmVOYW1lQnlJZChzdGF0ZSkgewogICAgcmV0dXJuIGZ1bmN0aW9uIChpZCkgewogICAgICByZXR1cm4gZmluZEtleVdpdGhJZChzdGF0ZS5jdXN0b21MYXlvdXQsIGlkKTsKICAgIH07CiAgfSwKICBnZXRTdGF0ZTogZnVuY3Rpb24gZ2V0U3RhdGUoc3RhdGUpIHsKICAgIHJldHVybiBmdW5jdGlvbiAoKSB7CiAgICAgIHJldHVybiB7CiAgICAgICAgYWN0aXZlVmlldzogc3RhdGUuYWN0aXZlVmlldywKICAgICAgICBzcGxpdHRlcnM6IHN0YXRlLnNwbGl0dGVycywKICAgICAgICBnbG9iYWxDYWxsYmFjazogc3RhdGUuZ2xvYmFsQ2FsbGJhY2ssCiAgICAgICAgY3VzdG9tTGF5b3V0OiBzdGF0ZS5jdXN0b21MYXlvdXQsCiAgICAgICAgc3luY01vZGU6IHN0YXRlLnN5bmNNb2RlCiAgICAgIH07CiAgICB9OwogIH0KfTsKdmFyIG11dGF0aW9ucyA9IHsKICBhc3NpZ25PclN3YXBQYW5lV2l0aElkczogZnVuY3Rpb24gYXNzaWduT3JTd2FwUGFuZVdpdGhJZHMoc3RhdGUsIHBheWxvYWQpIHsKICAgIHZhciBzb3VyY2VLZXkgPSBmaW5kS2V5V2l0aElkKHN0YXRlLmN1c3RvbUxheW91dCwgcGF5bG9hZC5zb3VyY2UpOwogICAgdmFyIHRhcmdldEtleSA9IGZpbmRLZXlXaXRoSWQoc3RhdGUuY3VzdG9tTGF5b3V0LCBwYXlsb2FkLnRhcmdldCk7CiAgICAvLyBDaGVjayBpZiBpdCBpcyBvbiBzeW5jTW9kZQogICAgaWYgKHN0YXRlLnN5bmNNb2RlICYmICEodGFyZ2V0S2V5IHx8IHNvdXJjZUtleSkpIHsKICAgICAgLy9leGl0IHN5bmNNb2QgaWYgdGhlIHR3byBwYW5lbCBpbiBzeW5jIG1vZGUgYXJlIG5vdCBzd2FwcGluZwogICAgICBzdGF0ZS5zeW5jTW9kZSA9IGZhbHNlOwogICAgICBzdGF0ZS5nbG9iYWxDYWxsYmFjayA9IGZhbHNlOwogICAgfQogICAgaWYgKHRhcmdldEtleSkgewogICAgICBzdGF0ZS5jdXN0b21MYXlvdXRbdGFyZ2V0S2V5XS5pZCA9IHBheWxvYWQuc291cmNlOwogICAgfQogICAgaWYgKHNvdXJjZUtleSkgewogICAgICBzdGF0ZS5jdXN0b21MYXlvdXRbc291cmNlS2V5XS5pZCA9IHBheWxvYWQudGFyZ2V0OwogICAgfQogIH0sCiAgdG9nZ2xlR2xvYmFsQ2FsbGJhY2s6IGZ1bmN0aW9uIHRvZ2dsZUdsb2JhbENhbGxiYWNrKHN0YXRlLCBmbGFnKSB7CiAgICBzdGF0ZS5nbG9iYWxDYWxsYmFjayA9IGZsYWc7CiAgfSwKICB1cGRhdGVBY3RpdmVWaWV3OiBmdW5jdGlvbiB1cGRhdGVBY3RpdmVWaWV3KHN0YXRlLCBwYXlsb2FkKSB7CiAgICAvL0RlYWN0aXZhdGUgc3luYyBtb2RlIGlmIGN1cnJlbnQgb3IgZnV0dXJlIHZpZXcKICAgIC8vaXMgbm90IGluIDIgc3BsaXQgcGFuZWxzLwogICAgaWYgKHN0YXRlLnN5bmNNb2RlKSB7CiAgICAgIHZhciB2aWV3MSA9IHN0YXRlLnZpZXdJY29ucy5maW5kKGZ1bmN0aW9uICh2aWV3KSB7CiAgICAgICAgcmV0dXJuIHN0YXRlLmFjdGl2ZVZpZXcgPT09IHZpZXcuaWNvbjsKICAgICAgfSk7CiAgICAgIHZhciB2aWV3MiA9IHN0YXRlLnZpZXdJY29ucy5maW5kKGZ1bmN0aW9uICh2aWV3KSB7CiAgICAgICAgcmV0dXJuIHBheWxvYWQudmlldyA9PT0gdmlldy5pY29uOwogICAgICB9KTsKICAgICAgaWYgKCEodmlldzEubWluID09IDIgJiYgdmlldzIubWluID09IDIpKSB7CiAgICAgICAgc3RhdGUuc3luY01vZGUgPSBmYWxzZTsKICAgICAgICBzdGF0ZS5nbG9iYWxDYWxsYmFjayA9IGZhbHNlOwogICAgICB9CiAgICB9CiAgICBzdGF0ZS5hY3RpdmVWaWV3ID0gcGF5bG9hZC52aWV3OwogICAgdmFyIGN1c3RvbUxheW91dCA9IG5ld0xheW91dFdpdGhPcmlnSW5mbyhzdGF0ZS5jdXN0b21MYXlvdXQsIHN0YXRlLmFjdGl2ZVZpZXcpOwogICAgYXV0b0Fzc2lnbkVudHJ5SWRzVG9QYW5lKHBheWxvYWQuZW50cmllcywgY3VzdG9tTGF5b3V0KTsKICAgIGZvciAodmFyIF9pNCA9IDAsIF9PYmplY3QkZW50cmllczQgPSBPYmplY3QuZW50cmllcyhjdXN0b21MYXlvdXQpOyBfaTQgPCBfT2JqZWN0JGVudHJpZXM0Lmxlbmd0aDsgX2k0KyspIHsKICAgICAgdmFyIF9PYmplY3QkZW50cmllczQkX2kgPSBfc2xpY2VkVG9BcnJheShfT2JqZWN0JGVudHJpZXM0W19pNF0sIDIpLAogICAgICAgIGtleSA9IF9PYmplY3QkZW50cmllczQkX2lbMF0sCiAgICAgICAgdmFsdWUgPSBfT2JqZWN0JGVudHJpZXM0JF9pWzFdOwogICAgICBWdWUuc2V0KHN0YXRlLmN1c3RvbUxheW91dCwga2V5LCB2YWx1ZSk7CiAgICB9CiAgfSwKICBzZXRTcGxpdHRlcjogZnVuY3Rpb24gc2V0U3BsaXR0ZXIoc3RhdGUsIHBheWxvYWQpIHsKICAgIGlmIChzdGF0ZS5zcGxpdHRlcnNbcGF5bG9hZC5uYW1lXSkgc3RhdGUuc3BsaXR0ZXJzW3BheWxvYWQubmFtZV0gPSBwYXlsb2FkLnZhbHVlOwogIH0sCiAgc2V0U3RhdGU6IGZ1bmN0aW9uIHNldFN0YXRlKHN0YXRlLCBuZXdTdGF0ZSkgewogICAgaWYgKG5ld1N0YXRlKSB7CiAgICAgIHZhciBjdXN0b21MYXlvdXQgPSB1bmRlZmluZWQ7CiAgICAgIGlmIChuZXdTdGF0ZS5hY3RpdmVWaWV3KSB7CiAgICAgICAgc3RhdGUuYWN0aXZlVmlldyA9IG5ld1N0YXRlLmFjdGl2ZVZpZXc7CiAgICAgIH0KICAgICAgaWYgKG5ld1N0YXRlLmN1c3RvbUxheW91dCkgewogICAgICAgIGN1c3RvbUxheW91dCA9IG5ld1N0YXRlLmN1c3RvbUxheW91dDsKICAgICAgfSBlbHNlIHsKICAgICAgICBjdXN0b21MYXlvdXQgPSBwcmVzZXRMYXlvdXRzKHN0YXRlLmFjdGl2ZVZpZXcpOwogICAgICAgIGNvbnNvbGUubG9nKG5ld1N0YXRlLCBjdXN0b21MYXlvdXQpOwogICAgICAgIGlmIChuZXdTdGF0ZS5zbG90SW5mbykgewogICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBuZXdTdGF0ZS5zbG90SW5mby5sZW5ndGg7IGkrKykgewogICAgICAgICAgICBzd2l0Y2ggKG5ld1N0YXRlLnNsb3RJbmZvW2ldLm5hbWUpIHsKICAgICAgICAgICAgICBjYXNlICJmaXJzdCI6CiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgIGN1c3RvbUxheW91dFsicGFuZS0xIl0uaWQgPSBuZXdTdGF0ZS5zbG90SW5mb1tpXS5pZDsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgInNlY29uZCI6CiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgIGlmICgicGFuZS0yIiBpbiBjdXN0b21MYXlvdXQpIGN1c3RvbUxheW91dFsicGFuZS0yIl0uaWQgPSBuZXdTdGF0ZS5zbG90SW5mb1tpXS5pZDsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgInRocmlkIjoKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgaWYgKCJwYW5lLTMiIGluIGN1c3RvbUxheW91dCkgY3VzdG9tTGF5b3V0WyJwYW5lLTMiXS5pZCA9IG5ld1N0YXRlLnNsb3RJbmZvW2ldLmlkOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAiZm91cnRoIjoKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgaWYgKCJwYW5lLTQiIGluIGN1c3RvbUxheW91dCkgY3VzdG9tTGF5b3V0WyJwYW5lLTQiXS5pZCA9IG5ld1N0YXRlLnNsb3RJbmZvW2ldLmlkOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAiZmlmdGgiOgogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICBpZiAoInBhbmUtNSIgaW4gY3VzdG9tTGF5b3V0KSBjdXN0b21MYXlvdXRbInBhbmUtNSJdLmlkID0gbmV3U3RhdGUuc2xvdEluZm9baV0uaWQ7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlICJzaXh0aCI6CiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgIGlmICgicGFuZS02IiBpbiBjdXN0b21MYXlvdXQpIGN1c3RvbUxheW91dFsicGFuZS02Il0uaWQgPSBuZXdTdGF0ZS5zbG90SW5mb1tpXS5pZDsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICBmb3IgKHZhciBfaTUgPSAwLCBfT2JqZWN0JGVudHJpZXM1ID0gT2JqZWN0LmVudHJpZXMoY3VzdG9tTGF5b3V0KTsgX2k1IDwgX09iamVjdCRlbnRyaWVzNS5sZW5ndGg7IF9pNSsrKSB7CiAgICAgICAgdmFyIF9PYmplY3QkZW50cmllczUkX2kgPSBfc2xpY2VkVG9BcnJheShfT2JqZWN0JGVudHJpZXM1W19pNV0sIDIpLAogICAgICAgICAga2V5ID0gX09iamVjdCRlbnRyaWVzNSRfaVswXSwKICAgICAgICAgIHZhbHVlID0gX09iamVjdCRlbnRyaWVzNSRfaVsxXTsKICAgICAgICBWdWUuc2V0KHN0YXRlLmN1c3RvbUxheW91dCwga2V5LCB2YWx1ZSk7CiAgICAgIH0KICAgICAgaWYgKG5ld1N0YXRlLmdsb2JhbENhbGxiYWNrKSB7CiAgICAgICAgc3RhdGUuZ2xvYmFsQ2FsbGJhY2sgPSBuZXdTdGF0ZS5nbG9iYWxDYWxsYmFjazsKICAgICAgfQogICAgICBmb3IgKHZhciBfaTYgPSAwLCBfT2JqZWN0JGVudHJpZXM2ID0gT2JqZWN0LmVudHJpZXMobmV3U3RhdGUuc3BsaXR0ZXJzKTsgX2k2IDwgX09iamVjdCRlbnRyaWVzNi5sZW5ndGg7IF9pNisrKSB7CiAgICAgICAgdmFyIF9PYmplY3QkZW50cmllczYkX2kgPSBfc2xpY2VkVG9BcnJheShfT2JqZWN0JGVudHJpZXM2W19pNl0sIDIpLAogICAgICAgICAgX2tleSA9IF9PYmplY3QkZW50cmllczYkX2lbMF0sCiAgICAgICAgICBfdmFsdWUgPSBfT2JqZWN0JGVudHJpZXM2JF9pWzFdOwogICAgICAgIHN0YXRlLnNwbGl0dGVyc1tfa2V5XSA9IF92YWx1ZTsKICAgICAgfQogICAgICBpZiAobmV3U3RhdGUuc3luY01vZGUpIHsKICAgICAgICBzdGF0ZS5zeW5jTW9kZSA9IG5ld1N0YXRlLnN5bmNNb2RlOwogICAgICB9CiAgICB9CiAgfSwKICBzZXRJZFRvUHJpbWFyeVBhbmU6IGZ1bmN0aW9uIHNldElkVG9QcmltYXJ5UGFuZShzdGF0ZSwgaWQpIHsKICAgIHZhciBjdXJyZW50S2V5ID0gZmluZEtleVdpdGhJZChzdGF0ZS5jdXN0b21MYXlvdXQsIGlkKTsKICAgIHZhciBmaXJzdFBhbmVJZCA9IHN0YXRlLmN1c3RvbUxheW91dFsicGFuZS0xIl0uaWQ7CiAgICBzdGF0ZS5jdXN0b21MYXlvdXRbInBhbmUtMSJdLmlkID0gaWQ7CiAgICBpZiAoY3VycmVudEtleSkgewogICAgICBzdGF0ZS5jdXN0b21MYXlvdXRbY3VycmVudEtleV0uaWQgPSBmaXJzdFBhbmVJZDsKICAgIH0KICB9LAogIHNldFN5bmNNb2RlOiBmdW5jdGlvbiBzZXRTeW5jTW9kZShzdGF0ZSwgcGF5bG9hZCkgewogICAgaWYgKHBheWxvYWQpIHsKICAgICAgLy9Gb3JjZSB0aGUgc2Vjb25kIHNsb3QgdG8gYmUgdGhlIG5ldyB2aWV3ZXIgaW4gcGF5bG9hZCBhbmQgY2hhbmdlIHRoZSAKICAgICAgLy92aWV3IHRvIHRoZSBwYXlsb2FkJ3MgbGF5b3V0CiAgICAgIC8vc3RhdGUuY3VzdG9tTGF5b3V0WyJwYW5lLTIiXS5pZCA9IGlkOwogICAgICBpZiAocGF5bG9hZC5mbGFnID09PSB0cnVlKSB7CiAgICAgICAgc3RhdGUuYWN0aXZlVmlldyA9IHBheWxvYWQubGF5b3V0OwogICAgICAgIC8vRXh0cmFjdCBwYW5lIGluZm8gZm9ybSBvcmlnaW5hbCBzdGF0ZSBhbmQgY29weSB0byB0aGUgbmV3IGxheW91dAogICAgICAgIHZhciBjdXN0b21MYXlvdXQgPSBuZXdMYXlvdXRXaXRoT3JpZ0luZm8oc3RhdGUuY3VzdG9tTGF5b3V0LCBzdGF0ZS5hY3RpdmVWaWV3KTsKICAgICAgICB2YXIgb3JpZ2luYWxLZXkgPSBmaW5kS2V5V2l0aElkKGN1c3RvbUxheW91dCwgMSk7CiAgICAgICAgdmFyIGZpcnN0UGFuZUlkID0gY3VzdG9tTGF5b3V0WyJwYW5lLTEiXS5pZDsKICAgICAgICBpZiAob3JpZ2luYWxLZXkgIT09ICJwYW5lLTEiKSB7CiAgICAgICAgICBjdXN0b21MYXlvdXRbInBhbmUtMSJdLmlkID0gZmlyc3RQYW5lSWQ7CiAgICAgICAgfQogICAgICAgIGN1c3RvbUxheW91dFsicGFuZS0xIl0uaWQgPSAxOwogICAgICAgIGN1c3RvbUxheW91dFsicGFuZS0yIl0uaWQgPSBwYXlsb2FkLm5ld0lkOwogICAgICAgIGZvciAodmFyIF9pNyA9IDAsIF9PYmplY3QkZW50cmllczcgPSBPYmplY3QuZW50cmllcyhjdXN0b21MYXlvdXQpOyBfaTcgPCBfT2JqZWN0JGVudHJpZXM3Lmxlbmd0aDsgX2k3KyspIHsKICAgICAgICAgIHZhciBfT2JqZWN0JGVudHJpZXM3JF9pID0gX3NsaWNlZFRvQXJyYXkoX09iamVjdCRlbnRyaWVzN1tfaTddLCAyKSwKICAgICAgICAgICAga2V5ID0gX09iamVjdCRlbnRyaWVzNyRfaVswXSwKICAgICAgICAgICAgdmFsdWUgPSBfT2JqZWN0JGVudHJpZXM3JF9pWzFdOwogICAgICAgICAgVnVlLnNldChzdGF0ZS5jdXN0b21MYXlvdXQsIGtleSwgdmFsdWUpOwogICAgICAgIH0KICAgICAgICBzdGF0ZS5zeW5jTW9kZSA9IHRydWU7CiAgICAgICAgc3RhdGUuZ2xvYmFsQ2FsbGJhY2sgPSB0cnVlOwogICAgICB9IGVsc2UgewogICAgICAgIHN0YXRlLmFjdGl2ZVZpZXcgPSAic2luZ2xlcGFuZWwiOwogICAgICAgIHZhciBfY3VzdG9tTGF5b3V0ID0gbmV3TGF5b3V0V2l0aE9yaWdJbmZvKHN0YXRlLmN1c3RvbUxheW91dCwgc3RhdGUuYWN0aXZlVmlldyk7CiAgICAgICAgZm9yICh2YXIgX2k4ID0gMCwgX09iamVjdCRlbnRyaWVzOCA9IE9iamVjdC5lbnRyaWVzKF9jdXN0b21MYXlvdXQpOyBfaTggPCBfT2JqZWN0JGVudHJpZXM4Lmxlbmd0aDsgX2k4KyspIHsKICAgICAgICAgIHZhciBfT2JqZWN0JGVudHJpZXM4JF9pID0gX3NsaWNlZFRvQXJyYXkoX09iamVjdCRlbnRyaWVzOFtfaThdLCAyKSwKICAgICAgICAgICAgX2tleTIgPSBfT2JqZWN0JGVudHJpZXM4JF9pWzBdLAogICAgICAgICAgICBfdmFsdWUyID0gX09iamVjdCRlbnRyaWVzOCRfaVsxXTsKICAgICAgICAgIFZ1ZS5zZXQoc3RhdGUuY3VzdG9tTGF5b3V0LCBfa2V5MiwgX3ZhbHVlMik7CiAgICAgICAgfQogICAgICAgIHN0YXRlLnN5bmNNb2RlID0gZmFsc2U7CiAgICAgICAgc3RhdGUuZ2xvYmFsQ2FsbGJhY2sgPSBmYWxzZTsKICAgICAgfQogICAgfQogIH0sCiAgY2xvc2VTbG90OiBmdW5jdGlvbiBjbG9zZVNsb3Qoc3RhdGUsIHBheWxvYWQpIHsKICAgIGlmIChwYXlsb2FkKSB7CiAgICAgIHN0YXRlLnN5bmNNb2RlID0gZmFsc2U7CiAgICAgIHN0YXRlLmdsb2JhbENhbGxiYWNrID0gZmFsc2U7CiAgICAgIHZhciBhdmFpbGFibGVJZCA9IDA7CiAgICAgIC8vUHJpbWFyeSBpZCBjYW5ub3QgYmUgY2hhbmdlZAogICAgICBpZiAocGF5bG9hZC5pZCA9PT0gMSkgewogICAgICAgIGF2YWlsYWJsZUlkID0gMTsKICAgICAgfSBlbHNlIGlmIChwYXlsb2FkLmVudHJpZXMpIHsKICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHBheWxvYWQuZW50cmllcy5sZW5ndGggJiYgYXZhaWxhYmxlSWQgPT0gMDsgaSsrKSB7CiAgICAgICAgICAvL0ZpbmQgdGhlIGZpcnN0IGVudHJ5IG5vdCBjdXJyZW50bHkgaW4gdXNlCiAgICAgICAgICBpZiAoZmluZEtleVdpdGhJZChwYXlsb2FkLmVudHJpZXNbaV0uaWQpID09PSB1bmRlZmluZWQpIHsKICAgICAgICAgICAgYXZhaWxhYmxlSWQgPSBwYXlsb2FkLmVudHJpZXNbaV0uaWQ7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIC8vU3dpdGNoIHRoZSB2aWV3CiAgICAgIGlmIChzdGF0ZS5hY3RpdmVWaWV3ICE9PSAiY3VzdG9taXNlIikgewogICAgICAgIC8vY2xvc2VQYW5lV2l0aFN0YW5kYXJkTGF5b3V0CiAgICAgICAgdmFyIHBWaWV3ID0gc3RhdGUuYWN0aXZlVmlldzsKICAgICAgICBzd2l0Y2ggKHN0YXRlLmFjdGl2ZVZpZXcpIHsKICAgICAgICAgIGNhc2UgIjJob3JwYW5lbCI6CiAgICAgICAgICBjYXNlICIydmVydHBhbmVsIjoKICAgICAgICAgICAgc3RhdGUuYWN0aXZlVmlldyA9ICJzaW5nbGVwYW5lbCI7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgY2FzZSAiM3BhbmVsIjoKICAgICAgICAgICAgc3RhdGUuYWN0aXZlVmlldyA9ICIydmVydHBhbmVsIjsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICBjYXNlICI0cGFuZWwiOgogICAgICAgICAgICBzdGF0ZS5hY3RpdmVWaWV3ID0gIjNwYW5lbCI7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgY2FzZSAiNXBhbmVsIjoKICAgICAgICAgICAgc3RhdGUuYWN0aXZlVmlldyA9ICI0cGFuZWwiOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIGNhc2UgIjZwYW5lbFZlcnRpY2FsIjoKICAgICAgICAgIGNhc2UgIjZwYW5lbCI6CiAgICAgICAgICAgIHN0YXRlLmFjdGl2ZVZpZXcgPSAiNXBhbmVsIjsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgICAgdmFyIGN1c3RvbUxheW91dCA9IG5ld0xheW91dFdpdGhPcmlnSW5mbyhzdGF0ZS5jdXN0b21MYXlvdXQsIHN0YXRlLmFjdGl2ZVZpZXcpOwogICAgICAgIHZhciBrZXkgPSBmaW5kS2V5V2l0aElkKGN1c3RvbUxheW91dCwgcGF5bG9hZC5pZCk7CgogICAgICAgIC8vIFRoZSBmb2xsb3dpbmcgbW92ZSB0aGUgZW50cnkgaWQgdG8gdGhlIGFwcHJvcHJpYXRlIHNsb3QKICAgICAgICAvLyBhbmQgcmVtb3ZlIHRoZSB0YXJnZXQgaWQKICAgICAgICBzd2l0Y2ggKGtleSkgewogICAgICAgICAgY2FzZSAicGFuZS0xIjoKICAgICAgICAgICAgewogICAgICAgICAgICAgIHN3aXRjaCAocFZpZXcpIHsKICAgICAgICAgICAgICAgIGNhc2UgIjJob3JwYW5lbCI6CiAgICAgICAgICAgICAgICBjYXNlICIydmVydHBhbmVsIjoKICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIGN1c3RvbUxheW91dFsicGFuZS0xIl0uaWQgPSBjdXN0b21MYXlvdXRbInBhbmUtMiJdLmlkOwogICAgICAgICAgICAgICAgICAgIGN1c3RvbUxheW91dFsicGFuZS0yIl0uaWQgPSBhdmFpbGFibGVJZDsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgIjNwYW5lbCI6CiAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBjdXN0b21MYXlvdXRbInBhbmUtMSJdLmlkID0gY3VzdG9tTGF5b3V0WyJwYW5lLTIiXS5pZDsKICAgICAgICAgICAgICAgICAgICBjdXN0b21MYXlvdXRbInBhbmUtMiJdLmlkID0gY3VzdG9tTGF5b3V0WyJwYW5lLTMiXS5pZDsKICAgICAgICAgICAgICAgICAgICBjdXN0b21MYXlvdXRbInBhbmUtMyJdLmlkID0gYXZhaWxhYmxlSWQ7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlICI0cGFuZWwiOgogICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgY3VzdG9tTGF5b3V0WyJwYW5lLTEiXS5pZCA9IGN1c3RvbUxheW91dFsicGFuZS0yIl0uaWQ7CiAgICAgICAgICAgICAgICAgICAgY3VzdG9tTGF5b3V0WyJwYW5lLTIiXS5pZCA9IGN1c3RvbUxheW91dFsicGFuZS0zIl0uaWQ7CiAgICAgICAgICAgICAgICAgICAgY3VzdG9tTGF5b3V0WyJwYW5lLTMiXS5pZCA9IGN1c3RvbUxheW91dFsicGFuZS00Il0uaWQ7CiAgICAgICAgICAgICAgICAgICAgY3VzdG9tTGF5b3V0WyJwYW5lLTQiXS5pZCA9IGF2YWlsYWJsZUlkOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAiNXBhbmVsIjoKICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIGN1c3RvbUxheW91dFsicGFuZS0xIl0uaWQgPSBjdXN0b21MYXlvdXRbInBhbmUtMiJdLmlkOwogICAgICAgICAgICAgICAgICAgIGN1c3RvbUxheW91dFsicGFuZS0yIl0uaWQgPSBjdXN0b21MYXlvdXRbInBhbmUtMyJdLmlkOwogICAgICAgICAgICAgICAgICAgIGN1c3RvbUxheW91dFsicGFuZS0zIl0uaWQgPSBjdXN0b21MYXlvdXRbInBhbmUtNCJdLmlkOwogICAgICAgICAgICAgICAgICAgIGN1c3RvbUxheW91dFsicGFuZS00Il0uaWQgPSBjdXN0b21MYXlvdXRbInBhbmUtNSJdLmlkOwogICAgICAgICAgICAgICAgICAgIGN1c3RvbUxheW91dFsicGFuZS01Il0uaWQgPSBhdmFpbGFibGVJZDsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgIjZwYW5lbFZlcnRpY2FsIjoKICAgICAgICAgICAgICAgIGNhc2UgIjZwYW5lbCI6CiAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBjdXN0b21MYXlvdXRbInBhbmUtMSJdLmlkID0gY3VzdG9tTGF5b3V0WyJwYW5lLTIiXS5pZDsKICAgICAgICAgICAgICAgICAgICBjdXN0b21MYXlvdXRbInBhbmUtMiJdLmlkID0gY3VzdG9tTGF5b3V0WyJwYW5lLTMiXS5pZDsKICAgICAgICAgICAgICAgICAgICBjdXN0b21MYXlvdXRbInBhbmUtMyJdLmlkID0gY3VzdG9tTGF5b3V0WyJwYW5lLTQiXS5pZDsKICAgICAgICAgICAgICAgICAgICBjdXN0b21MYXlvdXRbInBhbmUtNCJdLmlkID0gY3VzdG9tTGF5b3V0WyJwYW5lLTUiXS5pZDsKICAgICAgICAgICAgICAgICAgICBjdXN0b21MYXlvdXRbInBhbmUtNSJdLmlkID0gY3VzdG9tTGF5b3V0WyJwYW5lLTYiXS5pZDsKICAgICAgICAgICAgICAgICAgICBjdXN0b21MYXlvdXRbInBhbmUtNiJdLmlkID0gYXZhaWxhYmxlSWQ7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICBjYXNlICJwYW5lLTIiOgogICAgICAgICAgICB7CiAgICAgICAgICAgICAgc3dpdGNoIChwVmlldykgewogICAgICAgICAgICAgICAgY2FzZSAiMmhvcnBhbmVsIjoKICAgICAgICAgICAgICAgIGNhc2UgIjJ2ZXJ0cGFuZWwiOgogICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgY3VzdG9tTGF5b3V0WyJwYW5lLTIiXS5pZCA9IGF2YWlsYWJsZUlkOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAiM3BhbmVsIjoKICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIGN1c3RvbUxheW91dFsicGFuZS0yIl0uaWQgPSBjdXN0b21MYXlvdXRbInBhbmUtMyJdLmlkOwogICAgICAgICAgICAgICAgICAgIGN1c3RvbUxheW91dFsicGFuZS0zIl0uaWQgPSBhdmFpbGFibGVJZDsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgIjRwYW5lbCI6CiAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBjdXN0b21MYXlvdXRbInBhbmUtMiJdLmlkID0gY3VzdG9tTGF5b3V0WyJwYW5lLTMiXS5pZDsKICAgICAgICAgICAgICAgICAgICBjdXN0b21MYXlvdXRbInBhbmUtMyJdLmlkID0gY3VzdG9tTGF5b3V0WyJwYW5lLTQiXS5pZDsKICAgICAgICAgICAgICAgICAgICBjdXN0b21MYXlvdXRbInBhbmUtNCJdLmlkID0gYXZhaWxhYmxlSWQ7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlICI1cGFuZWwiOgogICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgY3VzdG9tTGF5b3V0WyJwYW5lLTIiXS5pZCA9IGN1c3RvbUxheW91dFsicGFuZS0zIl0uaWQ7CiAgICAgICAgICAgICAgICAgICAgY3VzdG9tTGF5b3V0WyJwYW5lLTMiXS5pZCA9IGN1c3RvbUxheW91dFsicGFuZS00Il0uaWQ7CiAgICAgICAgICAgICAgICAgICAgY3VzdG9tTGF5b3V0WyJwYW5lLTQiXS5pZCA9IGN1c3RvbUxheW91dFsicGFuZS01Il0uaWQ7CiAgICAgICAgICAgICAgICAgICAgY3VzdG9tTGF5b3V0WyJwYW5lLTUiXS5pZCA9IGF2YWlsYWJsZUlkOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAiNnBhbmVsVmVydGljYWwiOgogICAgICAgICAgICAgICAgY2FzZSAiNnBhbmVsIjoKICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIGN1c3RvbUxheW91dFsicGFuZS0yIl0uaWQgPSBjdXN0b21MYXlvdXRbInBhbmUtMyJdLmlkOwogICAgICAgICAgICAgICAgICAgIGN1c3RvbUxheW91dFsicGFuZS0zIl0uaWQgPSBjdXN0b21MYXlvdXRbInBhbmUtNCJdLmlkOwogICAgICAgICAgICAgICAgICAgIGN1c3RvbUxheW91dFsicGFuZS00Il0uaWQgPSBjdXN0b21MYXlvdXRbInBhbmUtNSJdLmlkOwogICAgICAgICAgICAgICAgICAgIGN1c3RvbUxheW91dFsicGFuZS01Il0uaWQgPSBjdXN0b21MYXlvdXRbInBhbmUtNiJdLmlkOwogICAgICAgICAgICAgICAgICAgIGN1c3RvbUxheW91dFsicGFuZS02Il0uaWQgPSBhdmFpbGFibGVJZDsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBicmVhazsKICAgICAgICAgIGNhc2UgInBhbmUtMyI6CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICBzd2l0Y2ggKHBWaWV3KSB7CiAgICAgICAgICAgICAgICBjYXNlICIzcGFuZWwiOgogICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgY3VzdG9tTGF5b3V0WyJwYW5lLTMiXS5pZCA9IGF2YWlsYWJsZUlkOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAiNHBhbmVsIjoKICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIGN1c3RvbUxheW91dFsicGFuZS0zIl0uaWQgPSBjdXN0b21MYXlvdXRbInBhbmUtNCJdLmlkOwogICAgICAgICAgICAgICAgICAgIGN1c3RvbUxheW91dFsicGFuZS00Il0uaWQgPSBhdmFpbGFibGVJZDsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgIjVwYW5lbCI6CiAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBjdXN0b21MYXlvdXRbInBhbmUtMyJdLmlkID0gY3VzdG9tTGF5b3V0WyJwYW5lLTQiXS5pZDsKICAgICAgICAgICAgICAgICAgICBjdXN0b21MYXlvdXRbInBhbmUtNCJdLmlkID0gY3VzdG9tTGF5b3V0WyJwYW5lLTUiXS5pZDsKICAgICAgICAgICAgICAgICAgICBjdXN0b21MYXlvdXRbInBhbmUtNSJdLmlkID0gYXZhaWxhYmxlSWQ7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlICI2cGFuZWxWZXJ0aWNhbCI6CiAgICAgICAgICAgICAgICBjYXNlICI2cGFuZWwiOgogICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgY3VzdG9tTGF5b3V0WyJwYW5lLTMiXS5pZCA9IGN1c3RvbUxheW91dFsicGFuZS00Il0uaWQ7CiAgICAgICAgICAgICAgICAgICAgY3VzdG9tTGF5b3V0WyJwYW5lLTQiXS5pZCA9IGN1c3RvbUxheW91dFsicGFuZS01Il0uaWQ7CiAgICAgICAgICAgICAgICAgICAgY3VzdG9tTGF5b3V0WyJwYW5lLTUiXS5pZCA9IGN1c3RvbUxheW91dFsicGFuZS02Il0uaWQ7CiAgICAgICAgICAgICAgICAgICAgY3VzdG9tTGF5b3V0WyJwYW5lLTYiXS5pZCA9IGF2YWlsYWJsZUlkOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgY2FzZSAicGFuZS00IjoKICAgICAgICAgICAgewogICAgICAgICAgICAgIHN3aXRjaCAocFZpZXcpIHsKICAgICAgICAgICAgICAgIGNhc2UgIjRwYW5lbCI6CiAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBjdXN0b21MYXlvdXRbInBhbmUtNCJdLmlkID0gYXZhaWxhYmxlSWQ7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlICI1cGFuZWwiOgogICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgY3VzdG9tTGF5b3V0WyJwYW5lLTQiXS5pZCA9IGN1c3RvbUxheW91dFsicGFuZS01Il0uaWQ7CiAgICAgICAgICAgICAgICAgICAgY3VzdG9tTGF5b3V0WyJwYW5lLTUiXS5pZCA9IGF2YWlsYWJsZUlkOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAiNnBhbmVsVmVydGljYWwiOgogICAgICAgICAgICAgICAgY2FzZSAiNnBhbmVsIjoKICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIGN1c3RvbUxheW91dFsicGFuZS00Il0uaWQgPSBjdXN0b21MYXlvdXRbInBhbmUtNSJdLmlkOwogICAgICAgICAgICAgICAgICAgIGN1c3RvbUxheW91dFsicGFuZS01Il0uaWQgPSBjdXN0b21MYXlvdXRbInBhbmUtNiJdLmlkOwogICAgICAgICAgICAgICAgICAgIGN1c3RvbUxheW91dFsicGFuZS02Il0uaWQgPSBhdmFpbGFibGVJZDsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBicmVhazsKICAgICAgICAgIGNhc2UgInBhbmUtNSI6CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICBzd2l0Y2ggKHBWaWV3KSB7CiAgICAgICAgICAgICAgICBjYXNlICI1cGFuZWwiOgogICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgY3VzdG9tTGF5b3V0WyJwYW5lLTUiXS5pZCA9IGF2YWlsYWJsZUlkOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSAiNnBhbmVsVmVydGljYWwiOgogICAgICAgICAgICAgICAgY2FzZSAiNnBhbmVsIjoKICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIGN1c3RvbUxheW91dFsicGFuZS01Il0uaWQgPSBjdXN0b21MYXlvdXRbInBhbmUtNiJdLmlkOwogICAgICAgICAgICAgICAgICAgIGN1c3RvbUxheW91dFsicGFuZS02Il0uaWQgPSBhdmFpbGFibGVJZDsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBicmVhazsKICAgICAgICAgIGNhc2UgInBhbmUtNiI6CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICBzd2l0Y2ggKHBWaWV3KSB7CiAgICAgICAgICAgICAgICBjYXNlICI2cGFuZWxWZXJ0aWNhbCI6CiAgICAgICAgICAgICAgICBjYXNlICI2cGFuZWwiOgogICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgY3VzdG9tTGF5b3V0WyJwYW5lLTYiXS5pZCA9IGF2YWlsYWJsZUlkOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGZvciAodmFyIF9pOSA9IDAsIF9PYmplY3QkZW50cmllczkgPSBPYmplY3QuZW50cmllcyhjdXN0b21MYXlvdXQpOyBfaTkgPCBfT2JqZWN0JGVudHJpZXM5Lmxlbmd0aDsgX2k5KyspIHsKICAgICAgICAgIHZhciBfT2JqZWN0JGVudHJpZXM5JF9pID0gX3NsaWNlZFRvQXJyYXkoX09iamVjdCRlbnRyaWVzOVtfaTldLCAyKSwKICAgICAgICAgICAgX2tleTMgPSBfT2JqZWN0JGVudHJpZXM5JF9pWzBdLAogICAgICAgICAgICB2YWx1ZSA9IF9PYmplY3QkZW50cmllczkkX2lbMV07CiAgICAgICAgICBWdWUuc2V0KHN0YXRlLmN1c3RvbUxheW91dCwgX2tleTMsIHZhbHVlKTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KICB9Cn07CmV4cG9ydCBkZWZhdWx0IHsKICBuYW1lc3BhY2VkOiB0cnVlLAogIHN0YXRlOiBzdGF0ZSwKICBnZXR0ZXJzOiBnZXR0ZXJzLAogIG11dGF0aW9uczogbXV0YXRpb25zCn07"},{"version":3,"names":["Vue","presetLayouts","view","content","horizontal","children","id","autoAssignEntryIdsToPane","entries","layout","assignedIds","invalidIdKeys","_i","_Object$entries","Object","length","_Object$entries$_i","_slicedToArray","key","value","includes","push","forEach","done","i","extractPaneInfo","panes","_i2","_Object$entries2","_Object$entries2$_i","newLayoutWithOrigInfo","original","activeView","customLayout","_i3","_Object$entries3","_Object$entries3$_i","findKeyWithId","keys","find","state","viewIcons","icon","name","min","splitters","globalCallback","syncMode","getters","getPaneNameById","getState","mutations","assignOrSwapPaneWithIds","payload","sourceKey","source","targetKey","target","toggleGlobalCallback","flag","updateActiveView","view1","view2","_i4","_Object$entries4","_Object$entries4$_i","set","setSplitter","setState","newState","undefined","console","log","slotInfo","_i5","_Object$entries5","_Object$entries5$_i","_i6","_Object$entries6","_Object$entries6$_i","setIdToPrimaryPane","currentKey","firstPaneId","setSyncMode","originalKey","newId","_i7","_Object$entries7","_Object$entries7$_i","_i8","_Object$entries8","_Object$entries8$_i","closeSlot","availableId","pView","_i9","_Object$entries9","_Object$entries9$_i","namespaced"],"sources":["/home/cmiss/Jenkins/workspace/mapintegratedvuer/src/store/modules/splitFlow.js"],"sourcesContent":["/* eslint-disable no-alert, no-console */\nimport Vue from \"vue\";\n\nconst presetLayouts = (view) => {\n switch (view) {\n case \"2horpanel\":\n return {\n \"split-1\": {content: false, horizontal: true, children: [\"pane-1\", \"pane-2\"]},\n \"pane-1\": {content: true, id: 1},\n \"pane-2\": {content: true, id: 2},\n };\n case \"2vertpanel\": \n return {\n \"split-1\": {content: false, horizontal: false, children: [\"pane-1\", \"pane-2\"]},\n \"pane-1\": {content: true, id: 1},\n \"pane-2\": {content: true, id: 2},\n }\n case \"3panel\": \n return {\n \"split-1\": {content: false, horizontal: false, children: [\"pane-1\", \"split-2\"]},\n \"split-2\": {content: false, horizontal: true, children: [\"pane-2\", \"pane-3\"]},\n \"pane-1\": {content: true, id: 1},\n \"pane-2\": {content: true, id: 2},\n \"pane-3\": {content: true, id: 3},\n }\n case \"4panel\": \n return {\n \"split-1\": {content: false, horizontal: false, children: [\"split-3\", \"split-2\"]},\n \"split-2\": {content: false, horizontal: true, children: [\"pane-2\", \"pane-3\"]},\n \"split-3\": {content: false, horizontal: true, children: [\"pane-1\", \"pane-4\"]},\n \"pane-1\": {content: true, id: 1},\n \"pane-2\": {content: true, id: 2},\n \"pane-3\": {content: true, id: 3},\n \"pane-4\": {content: true, id: 4},\n }\n case \"5panel\": \n return {\n \"split-1\": {content: false, horizontal: true, children: [\"split-3\", \"split-2\"]},\n \"split-2\": {content: false, horizontal: false, children: [\"pane-2\", \"pane-3\"]},\n \"split-3\": {content: false, horizontal: false, children: [\"pane-1\",\"pane-4\", \"pane-5\"]},\n \"pane-1\": {content: true, id: 1},\n \"pane-2\": {content: true, id: 2},\n \"pane-3\": {content: true, id: 3},\n \"pane-4\": {content: true, id: 4},\n \"pane-5\": {content: true, id: 5},\n }\n case \"6panel\": \n return {\n \"split-1\": {content: false, horizontal: true, children: [\"split-3\", \"split-2\"]},\n \"split-2\": {content: false, horizontal: false, children: [\"pane-2\", \"pane-3\", \"pane-5\"]},\n \"split-3\": {content: false, horizontal: false, children: [\"pane-1\",\"pane-4\", \"pane-6\"]},\n \"pane-1\": {content: true, id: 1},\n \"pane-2\": {content: true, id: 2},\n \"pane-3\": {content: true, id: 3},\n \"pane-4\": {content: true, id: 4},\n \"pane-5\": {content: true, id: 5},\n \"pane-6\": {content: true, id: 6},\n }\n case \"6panelVertical\":\n return {\n \"split-1\": {content: false, horizontal: false, children: [\"split-3\", \"split-2\"]},\n \"split-2\": {content: false, horizontal: true, children: [\"pane-2\", \"pane-3\", \"pane-5\"]},\n \"split-3\": {content: false, horizontal: true, children: [\"pane-1\",\"pane-4\", \"pane-6\"]},\n \"pane-1\": {content: true, id: 1},\n \"pane-2\": {content: true, id: 2},\n \"pane-3\": {content: true, id: 3},\n \"pane-4\": {content: true, id: 4},\n \"pane-5\": {content: true, id: 5},\n \"pane-6\": {content: true, id: 6},\n }\n case \"singlepanel\":\n default:\n return {\n \"split-1\": {content: false, horizontal: false, children: [\"pane-1\"]},\n \"pane-1\": {content: true, id: 1},\n }\n }\n}\n\n//A method to assign unused entry to pane with duplicated id\nconst autoAssignEntryIdsToPane = (entries, layout) => {\n const assignedIds = [];\n const invalidIdKeys = [];\n for (const [key, value] of Object.entries(layout)) {\n if (value.content) {\n if (assignedIds.includes(value.id)) {\n //id has got an assigned pane, cache it and find one\n //later\n invalidIdKeys.push(key);\n } else {\n assignedIds.push(value.id);\n }\n }\n }\n invalidIdKeys.forEach((key) => {\n let done = false;\n for (let i = 0; i < entries.length && !done; i++) {\n if (!(assignedIds.includes(entries[i].id))) {\n layout[key].id = entries[i].id;\n assignedIds.push(entries.id);\n done = true;\n }\n }\n });\n}\n\nconst extractPaneInfo = (layout) => {\n const panes = {};\n for (const [key, value] of Object.entries(layout)) {\n if (value.content) {\n panes[key] = value;\n }\n }\n return panes;\n}\n\nconst newLayoutWithOrigInfo = (original, activeView) => {\n const panes = extractPaneInfo(original);\n const customLayout = presetLayouts(activeView);\n for (const [key, value] of Object.entries(panes)) {\n customLayout[key] = value;\n }\n return customLayout;\n}\n\nconst findKeyWithId = (layout, id) => {\n return Object.keys(layout).find(key => layout[key][\"id\"] === id);\n}\n\nconst state = () => ({\n activeView: \"singlepanel\",\n viewIcons: [\n { icon: \"singlepanel\", name: \"Single view\", min: 1 },\n { icon: \"2horpanel\", name: \"Horizontal split\", min: 2 },\n { icon: \"2vertpanel\", name: \"Vertical split\", min: 2 },\n { icon: \"3panel\", name: \"Three panes\", min: 3 },\n { icon: \"4panel\", name: \"Four panes\", min: 4 },\n { icon: \"5panel\", name: \"Five panes\", min: 5 },\n { icon: \"6panel\", name: \"Six (horizontal)\", min: 6 },\n { icon: \"6panelVertical\", name: \"Six (vertical)\", min: 6 },\n //{ icon: \"customise\", name: \"Customise\", min: 2 }\n ],\n customLayout: {\n \"split-1\": {content: false, horizontal: false, children: [\"pane-1\"]},\n \"pane-1\": {content: true, id: 1},\n /*\n Example layout\n\n \"split-1\": {content: false, horizontal: true, children: [\"split-2\", \"pane-1\"]},\n \"split-2\": {content: false, horizontal: false, children: [\"pane-2\", \"pane-3\"]},\n \"pane-1\": {content: true, id: 1},\n \"pane-2\": {content: true, id: 2},\n \"pane-3\": {content: true, id: 3},\n */\n },\n splitters: { \"first\": 50, \"second\": 50, \"third\": 50 },\n globalCallback: false,\n syncMode: false,\n});\n\nconst getters = {\n getPaneNameById: (state) => (id) => {\n return findKeyWithId(state.customLayout, id);\n },\n getState: (state) => () => {\n return {\n activeView: state.activeView,\n splitters: state.splitters,\n globalCallback: state.globalCallback,\n customLayout: state.customLayout,\n syncMode: state.syncMode,\n };\n },\n}\n\nconst mutations = {\n assignOrSwapPaneWithIds(state, payload) {\n let sourceKey = findKeyWithId(state.customLayout, payload.source);\n let targetKey = findKeyWithId(state.customLayout, payload.target);\n // Check if it is on syncMode\n if (state.syncMode && (!(targetKey || sourceKey))) {\n //exit syncMod if the two panel in sync mode are not swapping\n state.syncMode = false;\n state.globalCallback = false;\n }\n if (targetKey) {\n state.customLayout[targetKey].id = payload.source;\n }\n if (sourceKey) {\n state.customLayout[sourceKey].id = payload.target;\n }\n },\n toggleGlobalCallback(state, flag) {\n state.globalCallback = flag;\n },\n updateActiveView(state, payload) {\n //Deactivate sync mode if current or future view\n //is not in 2 split panels/\n if (state.syncMode) {\n const view1 = state.viewIcons.find(\n view => state.activeView === view.icon);\n const view2 = state.viewIcons.find(\n view => payload.view === view.icon);\n if (!(view1.min == 2 && view2.min == 2)) {\n state.syncMode = false;\n state.globalCallback = false;\n }\n }\n state.activeView = payload.view;\n const customLayout = newLayoutWithOrigInfo(\n state.customLayout, state.activeView);\n autoAssignEntryIdsToPane(payload.entries, customLayout);\n for (const [key, value] of Object.entries(customLayout)) {\n Vue.set(state.customLayout, key, value);\n }\n },\n setSplitter(state, payload) {\n if (state.splitters[payload.name])\n state.splitters[payload.name] = payload.value;\n },\n setState(state, newState) {\n if (newState) {\n let customLayout = undefined;\n if (newState.activeView) {\n state.activeView = newState.activeView;\n }\n if (newState.customLayout) {\n customLayout = newState.customLayout;\n } else {\n customLayout = presetLayouts(state.activeView);\n console.log(newState, customLayout)\n if (newState.slotInfo) {\n for (let i = 0; i < newState.slotInfo.length; i++) {\n switch (newState.slotInfo[i].name) {\n case \"first\": {\n customLayout[\"pane-1\"].id = newState.slotInfo[i].id;\n } break;\n case \"second\": {\n if(\"pane-2\" in customLayout)\n customLayout[\"pane-2\"].id = newState.slotInfo[i].id;\n } break;\n case \"thrid\": {\n if(\"pane-3\" in customLayout)\n customLayout[\"pane-3\"].id = newState.slotInfo[i].id;\n } break;\n case \"fourth\": {\n if(\"pane-4\" in customLayout)\n customLayout[\"pane-4\"].id = newState.slotInfo[i].id;\n } break;\n case \"fifth\": {\n if(\"pane-5\" in customLayout)\n customLayout[\"pane-5\"].id = newState.slotInfo[i].id;\n } break;\n case \"sixth\": {\n if(\"pane-6\" in customLayout)\n customLayout[\"pane-6\"].id = newState.slotInfo[i].id;\n } break;\n default:\n break;\n }\n }\n }\n }\n for (const [key, value] of Object.entries(customLayout)) {\n Vue.set(state.customLayout, key, value);\n }\n if (newState.globalCallback) {\n state.globalCallback = newState.globalCallback;\n }\n for (const [key, value] of Object.entries(newState.splitters)) {\n state.splitters[key] = value;\n }\n if (newState.syncMode) {\n state.syncMode = newState.syncMode;\n }\n }\n },\n setIdToPrimaryPane(state, id) {\n const currentKey = findKeyWithId(state.customLayout, id);\n const firstPaneId = state.customLayout[\"pane-1\"].id;\n state.customLayout[\"pane-1\"].id = id;\n if (currentKey) {\n state.customLayout[currentKey].id = firstPaneId;\n }\n },\n setSyncMode(state, payload) {\n if (payload) {\n //Force the second slot to be the new viewer in payload and change the \n //view to the payload's layout\n //state.customLayout[\"pane-2\"].id = id;\n if (payload.flag === true) {\n state.activeView = payload.layout;\n //Extract pane info form original state and copy to the new layout\n const customLayout = newLayoutWithOrigInfo(\n state.customLayout, state.activeView);\n const originalKey = findKeyWithId(customLayout, 1);\n const firstPaneId = customLayout[\"pane-1\"].id;\n if (originalKey !== \"pane-1\") {\n customLayout[\"pane-1\"].id = firstPaneId;\n }\n customLayout[\"pane-1\"].id = 1;\n customLayout[\"pane-2\"].id = payload.newId;\n for (const [key, value] of Object.entries(customLayout)) {\n Vue.set(state.customLayout, key, value);\n }\n state.syncMode = true;\n state.globalCallback = true;\n } else {\n state.activeView = \"singlepanel\";\n const customLayout = newLayoutWithOrigInfo(\n state.customLayout, state.activeView);\n for (const [key, value] of Object.entries(customLayout)) {\n Vue.set(state.customLayout, key, value);\n }\n state.syncMode = false;\n state.globalCallback = false;\n }\n }\n },\n closeSlot(state, payload) {\n if (payload) {\n state.syncMode = false;\n state.globalCallback = false;\n let availableId = 0;\n //Primary id cannot be changed\n if (payload.id === 1) {\n availableId = 1;\n } else if (payload.entries) {\n for (let i = 0; i < payload.entries.length &&\n availableId == 0; i++) {\n //Find the first entry not currently in use\n if (findKeyWithId(payload.entries[i].id) === undefined) {\n availableId = payload.entries[i].id;\n }\n }\n }\n //Switch the view\n if (state.activeView !== \"customise\") {\n //closePaneWithStandardLayout\n const pView = state.activeView;\n switch (state.activeView) {\n case \"2horpanel\":\n case \"2vertpanel\":\n state.activeView = \"singlepanel\";\n break;\n case \"3panel\":\n state.activeView = \"2vertpanel\";\n break;\n case \"4panel\":\n state.activeView = \"3panel\";\n break;\n case \"5panel\":\n state.activeView = \"4panel\";\n break;\n case \"6panelVertical\":\n case \"6panel\":\n state.activeView = \"5panel\";\n break;\n default:\n break;\n }\n const customLayout = newLayoutWithOrigInfo(\n state.customLayout, state.activeView);\n const key = findKeyWithId(customLayout, payload.id);\n \n // The following move the entry id to the appropriate slot\n // and remove the target id\n switch (key) {\n case \"pane-1\": {\n switch (pView) {\n case \"2horpanel\":\n case \"2vertpanel\": {\n customLayout[\"pane-1\"].id = customLayout[\"pane-2\"].id;\n customLayout[\"pane-2\"].id = availableId;\n } break;\n case \"3panel\": {\n customLayout[\"pane-1\"].id = customLayout[\"pane-2\"].id;\n customLayout[\"pane-2\"].id = customLayout[\"pane-3\"].id;\n customLayout[\"pane-3\"].id = availableId;\n } break;\n case \"4panel\": {\n customLayout[\"pane-1\"].id = customLayout[\"pane-2\"].id;\n customLayout[\"pane-2\"].id = customLayout[\"pane-3\"].id;\n customLayout[\"pane-3\"].id = customLayout[\"pane-4\"].id;\n customLayout[\"pane-4\"].id = availableId;\n } break;\n case \"5panel\": {\n customLayout[\"pane-1\"].id = customLayout[\"pane-2\"].id;\n customLayout[\"pane-2\"].id = customLayout[\"pane-3\"].id;\n customLayout[\"pane-3\"].id = customLayout[\"pane-4\"].id;\n customLayout[\"pane-4\"].id = customLayout[\"pane-5\"].id;\n customLayout[\"pane-5\"].id = availableId;\n } break;\n case \"6panelVertical\":\n case \"6panel\":\n {\n customLayout[\"pane-1\"].id = customLayout[\"pane-2\"].id;\n customLayout[\"pane-2\"].id = customLayout[\"pane-3\"].id;\n customLayout[\"pane-3\"].id = customLayout[\"pane-4\"].id;\n customLayout[\"pane-4\"].id = customLayout[\"pane-5\"].id;\n customLayout[\"pane-5\"].id = customLayout[\"pane-6\"].id;\n customLayout[\"pane-6\"].id = availableId;\n } break;\n default:\n break;\n }\n } break;\n case \"pane-2\": {\n switch (pView) {\n case \"2horpanel\":\n case \"2vertpanel\": {\n customLayout[\"pane-2\"].id = availableId;\n } break;\n case \"3panel\": {\n customLayout[\"pane-2\"].id = customLayout[\"pane-3\"].id;\n customLayout[\"pane-3\"].id = availableId;\n } break;\n case \"4panel\": {\n customLayout[\"pane-2\"].id = customLayout[\"pane-3\"].id;\n customLayout[\"pane-3\"].id = customLayout[\"pane-4\"].id;\n customLayout[\"pane-4\"].id = availableId;\n } break;\n case \"5panel\": {\n customLayout[\"pane-2\"].id = customLayout[\"pane-3\"].id;\n customLayout[\"pane-3\"].id = customLayout[\"pane-4\"].id;\n customLayout[\"pane-4\"].id = customLayout[\"pane-5\"].id;\n customLayout[\"pane-5\"].id = availableId;\n } break;\n case \"6panelVertical\":\n case \"6panel\":\n {\n customLayout[\"pane-2\"].id = customLayout[\"pane-3\"].id;\n customLayout[\"pane-3\"].id = customLayout[\"pane-4\"].id;\n customLayout[\"pane-4\"].id = customLayout[\"pane-5\"].id;\n customLayout[\"pane-5\"].id = customLayout[\"pane-6\"].id;\n customLayout[\"pane-6\"].id = availableId;\n } break;\n default:\n break;\n }\n } break;\n case \"pane-3\": {\n switch (pView) {\n case \"3panel\": {\n customLayout[\"pane-3\"].id = availableId;\n } break;\n case \"4panel\": {\n customLayout[\"pane-3\"].id = customLayout[\"pane-4\"].id;\n customLayout[\"pane-4\"].id = availableId;\n } break;\n case \"5panel\": {\n customLayout[\"pane-3\"].id = customLayout[\"pane-4\"].id;\n customLayout[\"pane-4\"].id = customLayout[\"pane-5\"].id;\n customLayout[\"pane-5\"].id = availableId;\n } break;\n case \"6panelVertical\":\n case \"6panel\":\n {\n customLayout[\"pane-3\"].id = customLayout[\"pane-4\"].id;\n customLayout[\"pane-4\"].id = customLayout[\"pane-5\"].id;\n customLayout[\"pane-5\"].id = customLayout[\"pane-6\"].id;\n customLayout[\"pane-6\"].id = availableId;\n } break;\n default:\n break;\n }\n } break;\n case \"pane-4\": {\n switch (pView) {\n case \"4panel\": {\n customLayout[\"pane-4\"].id = availableId;\n } break;\n case \"5panel\": {\n customLayout[\"pane-4\"].id = customLayout[\"pane-5\"].id;\n customLayout[\"pane-5\"].id = availableId;\n } break;\n case \"6panelVertical\":\n case \"6panel\": {\n customLayout[\"pane-4\"].id = customLayout[\"pane-5\"].id;\n customLayout[\"pane-5\"].id = customLayout[\"pane-6\"].id;\n customLayout[\"pane-6\"].id = availableId;\n } break;\n default:\n break;\n }\n } break;\n case \"pane-5\": {\n switch (pView) {\n case \"5panel\": {\n customLayout[\"pane-5\"].id = availableId;\n } break;\n case \"6panelVertical\":\n case \"6panel\": {\n customLayout[\"pane-5\"].id = customLayout[\"pane-6\"].id;\n customLayout[\"pane-6\"].id = availableId;\n } break;\n default:\n break;\n }\n } break;\n case \"pane-6\" : {\n switch (pView) {\n case \"6panelVertical\":\n case \"6panel\":\n {\n customLayout[\"pane-6\"].id = availableId;\n } break;\n default:\n break;\n }\n } break;\n default:\n break;\n }\n for (const [key, value] of Object.entries(customLayout)) {\n Vue.set(state.customLayout, key, value);\n }\n }\n }\n },\n};\n\nexport default {\n namespaced: true,\n state,\n getters,\n mutations\n}\n"],"mappings":";;;;;;;;;;AAAA;AACA,OAAOA,GAAG,MAAM,KAAK;AAErB,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAIC,IAAI,EAAK;EAC9B,QAAQA,IAAI;IACV,KAAK,WAAW;MACd,OAAO;QACL,SAAS,EAAE;UAACC,OAAO,EAAE,KAAK;UAAEC,UAAU,EAAE,IAAI;UAAEC,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ;QAAC,CAAC;QAC7E,QAAQ,EAAE;UAACF,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC,CAAC;QACjC,QAAQ,EAAE;UAACH,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC;MAClC,CAAC;IACH,KAAK,YAAY;MACf,OAAO;QACL,SAAS,EAAE;UAACH,OAAO,EAAE,KAAK;UAAEC,UAAU,EAAE,KAAK;UAAEC,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ;QAAC,CAAC;QAC9E,QAAQ,EAAE;UAACF,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC,CAAC;QACjC,QAAQ,EAAE;UAACH,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC;MAClC,CAAC;IACH,KAAK,QAAQ;MACX,OAAO;QACL,SAAS,EAAE;UAACH,OAAO,EAAE,KAAK;UAAEC,UAAU,EAAE,KAAK;UAAEC,QAAQ,EAAE,CAAC,QAAQ,EAAE,SAAS;QAAC,CAAC;QAC/E,SAAS,EAAE;UAACF,OAAO,EAAE,KAAK;UAAEC,UAAU,EAAE,IAAI;UAAEC,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ;QAAC,CAAC;QAC7E,QAAQ,EAAE;UAACF,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC,CAAC;QACjC,QAAQ,EAAE;UAACH,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC,CAAC;QACjC,QAAQ,EAAE;UAACH,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC;MAClC,CAAC;IACH,KAAK,QAAQ;MACX,OAAO;QACL,SAAS,EAAE;UAACH,OAAO,EAAE,KAAK;UAAEC,UAAU,EAAE,KAAK;UAAEC,QAAQ,EAAE,CAAC,SAAS,EAAE,SAAS;QAAC,CAAC;QAChF,SAAS,EAAE;UAACF,OAAO,EAAE,KAAK;UAAEC,UAAU,EAAE,IAAI;UAAEC,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ;QAAC,CAAC;QAC7E,SAAS,EAAE;UAACF,OAAO,EAAE,KAAK;UAAEC,UAAU,EAAE,IAAI;UAAEC,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ;QAAC,CAAC;QAC7E,QAAQ,EAAE;UAACF,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC,CAAC;QACjC,QAAQ,EAAE;UAACH,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC,CAAC;QACjC,QAAQ,EAAE;UAACH,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC,CAAC;QACjC,QAAQ,EAAE;UAACH,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC;MAClC,CAAC;IACH,KAAK,QAAQ;MACX,OAAO;QACL,SAAS,EAAE;UAACH,OAAO,EAAE,KAAK;UAAEC,UAAU,EAAE,IAAI;UAAEC,QAAQ,EAAE,CAAC,SAAS,EAAE,SAAS;QAAC,CAAC;QAC/E,SAAS,EAAE;UAACF,OAAO,EAAE,KAAK;UAAEC,UAAU,EAAE,KAAK;UAAEC,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ;QAAC,CAAC;QAC9E,SAAS,EAAE;UAACF,OAAO,EAAE,KAAK;UAAEC,UAAU,EAAE,KAAK;UAAEC,QAAQ,EAAE,CAAC,QAAQ,EAAC,QAAQ,EAAE,QAAQ;QAAC,CAAC;QACvF,QAAQ,EAAE;UAACF,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC,CAAC;QACjC,QAAQ,EAAE;UAACH,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC,CAAC;QACjC,QAAQ,EAAE;UAACH,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC,CAAC;QACjC,QAAQ,EAAE;UAACH,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC,CAAC;QACjC,QAAQ,EAAE;UAACH,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC;MAClC,CAAC;IACH,KAAK,QAAQ;MACX,OAAO;QACL,SAAS,EAAE;UAACH,OAAO,EAAE,KAAK;UAAEC,UAAU,EAAE,IAAI;UAAEC,QAAQ,EAAE,CAAC,SAAS,EAAE,SAAS;QAAC,CAAC;QAC/E,SAAS,EAAE;UAACF,OAAO,EAAE,KAAK;UAAEC,UAAU,EAAE,KAAK;UAAEC,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ;QAAC,CAAC;QACxF,SAAS,EAAE;UAACF,OAAO,EAAE,KAAK;UAAEC,UAAU,EAAE,KAAK;UAAEC,QAAQ,EAAE,CAAC,QAAQ,EAAC,QAAQ,EAAE,QAAQ;QAAC,CAAC;QACvF,QAAQ,EAAE;UAACF,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC,CAAC;QACjC,QAAQ,EAAE;UAACH,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC,CAAC;QACjC,QAAQ,EAAE;UAACH,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC,CAAC;QACjC,QAAQ,EAAE;UAACH,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC,CAAC;QACjC,QAAQ,EAAE;UAACH,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC,CAAC;QACjC,QAAQ,EAAE;UAACH,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC;MAClC,CAAC;IACH,KAAK,gBAAgB;MACnB,OAAO;QACL,SAAS,EAAE;UAACH,OAAO,EAAE,KAAK;UAAEC,UAAU,EAAE,KAAK;UAAEC,QAAQ,EAAE,CAAC,SAAS,EAAE,SAAS;QAAC,CAAC;QAChF,SAAS,EAAE;UAACF,OAAO,EAAE,KAAK;UAAEC,UAAU,EAAE,IAAI;UAAEC,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ;QAAC,CAAC;QACvF,SAAS,EAAE;UAACF,OAAO,EAAE,KAAK;UAAEC,UAAU,EAAE,IAAI;UAAEC,QAAQ,EAAE,CAAC,QAAQ,EAAC,QAAQ,EAAE,QAAQ;QAAC,CAAC;QACtF,QAAQ,EAAE;UAACF,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC,CAAC;QACjC,QAAQ,EAAE;UAACH,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC,CAAC;QACjC,QAAQ,EAAE;UAACH,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC,CAAC;QACjC,QAAQ,EAAE;UAACH,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC,CAAC;QACjC,QAAQ,EAAE;UAACH,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC,CAAC;QACjC,QAAQ,EAAE;UAACH,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC;MAClC,CAAC;IACH,KAAK,aAAa;IAClB;MACE,OAAO;QACL,SAAS,EAAE;UAACH,OAAO,EAAE,KAAK;UAAEC,UAAU,EAAE,KAAK;UAAEC,QAAQ,EAAE,CAAC,QAAQ;QAAC,CAAC;QACpE,QAAQ,EAAE;UAACF,OAAO,EAAE,IAAI;UAAGG,EAAE,EAAE;QAAC;MACpC,CAAC;EAAA;AAEL,CAAC;;AAED;AACA,IAAMC,wBAAwB,GAAG,SAA3BA,wBAAwBA,CAAIC,OAAO,EAAEC,MAAM,EAAK;EACpD,IAAMC,WAAW,GAAI,EAAE;EACvB,IAAMC,aAAa,GAAG,EAAE;EACxB,SAAAC,EAAA,MAAAC,eAAA,GAA2BC,MAAM,CAACN,OAAO,CAACC,MAAM,CAAC,EAAAG,EAAA,GAAAC,eAAA,CAAAE,MAAA,EAAAH,EAAA,IAAE;IAA9C,IAAAI,kBAAA,GAAAC,cAAA,CAAAJ,eAAA,CAAAD,EAAA;MAAOM,GAAG,GAAAF,kBAAA;MAAEG,KAAK,GAAAH,kBAAA;IACpB,IAAIG,KAAK,CAAChB,OAAO,EAAE;MACjB,IAAIO,WAAW,CAACU,QAAQ,CAACD,KAAK,CAACb,EAAE,CAAC,EAAE;QAClC;QACA;QACAK,aAAa,CAACU,IAAI,CAACH,GAAG,CAAC;MACzB,CAAC,MAAM;QACLR,WAAW,CAACW,IAAI,CAACF,KAAK,CAACb,EAAE,CAAC;MAC5B;IACF;EACF;EACAK,aAAa,CAACW,OAAO,CAAC,UAACJ,GAAG,EAAK;IAC7B,IAAIK,IAAI,GAAG,KAAK;IAChB,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGhB,OAAO,CAACO,MAAM,IAAI,CAACQ,IAAI,EAAEC,CAAC,EAAE,EAAE;MAChD,IAAI,CAAEd,WAAW,CAACU,QAAQ,CAACZ,OAAO,CAACgB,CAAC,CAAC,CAAClB,EAAE,CAAE,EAAE;QAC1CG,MAAM,CAACS,GAAG,CAAC,CAACZ,EAAE,GAAGE,OAAO,CAACgB,CAAC,CAAC,CAAClB,EAAE;QAC9BI,WAAW,CAACW,IAAI,CAACb,OAAO,CAACF,EAAE,CAAC;QAC5BiB,IAAI,GAAG,IAAI;MACb;IACF;EACF,CAAC,CAAC;AACJ,CAAC;AAED,IAAME,eAAe,GAAG,SAAlBA,eAAeA,CAAIhB,MAAM,EAAK;EAClC,IAAMiB,KAAK,GAAG,CAAC,CAAC;EAChB,SAAAC,GAAA,MAAAC,gBAAA,GAA2Bd,MAAM,CAACN,OAAO,CAACC,MAAM,CAAC,EAAAkB,GAAA,GAAAC,gBAAA,CAAAb,MAAA,EAAAY,GAAA,IAAE;IAA9C,IAAAE,mBAAA,GAAAZ,cAAA,CAAAW,gBAAA,CAAAD,GAAA;MAAOT,GAAG,GAAAW,mBAAA;MAAEV,KAAK,GAAAU,mBAAA;IACpB,IAAIV,KAAK,CAAChB,OAAO,EAAE;MACjBuB,KAAK,CAACR,GAAG,CAAC,GAAGC,KAAK;IACpB;EACF;EACA,OAAOO,KAAK;AACd,CAAC;AAED,IAAMI,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAIC,QAAQ,EAAEC,UAAU,EAAK;EACtD,IAAMN,KAAK,GAAGD,eAAe,CAACM,QAAQ,CAAC;EACvC,IAAME,YAAY,GAAGhC,aAAa,CAAC+B,UAAU,CAAC;EAC9C,SAAAE,GAAA,MAAAC,gBAAA,GAA2BrB,MAAM,CAACN,OAAO,CAACkB,KAAK,CAAC,EAAAQ,GAAA,GAAAC,gBAAA,CAAApB,MAAA,EAAAmB,GAAA,IAAE;IAA7C,IAAAE,mBAAA,GAAAnB,cAAA,CAAAkB,gBAAA,CAAAD,GAAA;MAAOhB,GAAG,GAAAkB,mBAAA;MAAEjB,KAAK,GAAAiB,mBAAA;IACpBH,YAAY,CAACf,GAAG,CAAC,GAAGC,KAAK;EAC3B;EACA,OAAOc,YAAY;AACrB,CAAC;AAED,IAAMI,aAAa,GAAG,SAAhBA,aAAaA,CAAI5B,MAAM,EAAEH,EAAE,EAAK;EACpC,OAAOQ,MAAM,CAACwB,IAAI,CAAC7B,MAAM,CAAC,CAAC8B,IAAI,CAAC,UAAArB,GAAG;IAAA,OAAIT,MAAM,CAACS,GAAG,CAAC,CAAC,IAAI,CAAC,KAAKZ,EAAE;EAAA,EAAC;AAClE,CAAC;AAED,IAAMkC,KAAK,GAAG,SAARA,KAAKA,CAAA;EAAA,OAAU;IACnBR,UAAU,EAAE,aAAa;IACzBS,SAAS,EAAE,CACT;MAAEC,IAAI,EAAE,aAAa;MAAEC,IAAI,EAAE,aAAa;MAAEC,GAAG,EAAE;IAAE,CAAC,EACpD;MAAEF,IAAI,EAAE,WAAW;MAAEC,IAAI,EAAE,kBAAkB;MAAEC,GAAG,EAAE;IAAE,CAAC,EACvD;MAAEF,IAAI,EAAE,YAAY;MAAEC,IAAI,EAAE,gBAAgB;MAAEC,GAAG,EAAE;IAAE,CAAC,EACtD;MAAEF,IAAI,EAAE,QAAQ;MAAEC,IAAI,EAAE,aAAa;MAAEC,GAAG,EAAE;IAAE,CAAC,EAC/C;MAAEF,IAAI,EAAE,QAAQ;MAAEC,IAAI,EAAE,YAAY;MAAEC,GAAG,EAAE;IAAE,CAAC,EAC9C;MAAEF,IAAI,EAAE,QAAQ;MAAEC,IAAI,EAAE,YAAY;MAAEC,GAAG,EAAE;IAAE,CAAC,EAC9C;MAAEF,IAAI,EAAE,QAAQ;MAAEC,IAAI,EAAE,kBAAkB;MAAEC,GAAG,EAAE;IAAE,CAAC,EACpD;MAAEF,IAAI,EAAE,gBAAgB;MAAEC,IAAI,EAAE,gBAAgB;MAAEC,GAAG,EAAE;IAAE;IACzD;IAAA,CACD;;IACDX,YAAY,EAAE;MACZ,SAAS,EAAE;QAAC9B,OAAO,EAAE,KAAK;QAAEC,UAAU,EAAE,KAAK;QAAEC,QAAQ,EAAE,CAAC,QAAQ;MAAC,CAAC;MACpE,QAAQ,EAAE;QAACF,OAAO,EAAE,IAAI;QAAGG,EAAE,EAAE;MAAC;MAChC;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;IAEE,CAAC;;IACDuC,SAAS,EAAE;MAAE,OAAO,EAAE,EAAE;MAAE,QAAQ,EAAE,EAAE;MAAE,OAAO,EAAE;IAAG,CAAC;IACrDC,cAAc,EAAE,KAAK;IACrBC,QAAQ,EAAE;EACZ,CAAC;AAAA,CAAC;AAEF,IAAMC,OAAO,GAAG;EACdC,eAAe,EAAE,SAAAA,gBAACT,KAAK;IAAA,OAAK,UAAClC,EAAE,EAAK;MAClC,OAAO+B,aAAa,CAACG,KAAK,CAACP,YAAY,EAAE3B,EAAE,CAAC;IAC9C,CAAC;EAAA;EACD4C,QAAQ,EAAE,SAAAA,SAACV,KAAK;IAAA,OAAK,YAAM;MACzB,OAAO;QACLR,UAAU,EAAEQ,KAAK,CAACR,UAAU;QAC5Ba,SAAS,EAAEL,KAAK,CAACK,SAAS;QAC1BC,cAAc,EAAEN,KAAK,CAACM,cAAc;QACpCb,YAAY,EAAEO,KAAK,CAACP,YAAY;QAChCc,QAAQ,EAAEP,KAAK,CAACO;MAClB,CAAC;IACH,CAAC;EAAA;AACH,CAAC;AAED,IAAMI,SAAS,GAAG;EAChBC,uBAAuB,WAAAA,wBAACZ,KAAK,EAAEa,OAAO,EAAE;IACtC,IAAIC,SAAS,GAAGjB,aAAa,CAACG,KAAK,CAACP,YAAY,EAAEoB,OAAO,CAACE,MAAM,CAAC;IACjE,IAAIC,SAAS,GAAGnB,aAAa,CAACG,KAAK,CAACP,YAAY,EAAEoB,OAAO,CAACI,MAAM,CAAC;IACjE;IACA,IAAIjB,KAAK,CAACO,QAAQ,IAAK,EAAES,SAAS,IAAIF,SAAS,CAAE,EAAE;MACjD;MACAd,KAAK,CAACO,QAAQ,GAAG,KAAK;MACtBP,KAAK,CAACM,cAAc,GAAG,KAAK;IAC9B;IACA,IAAIU,SAAS,EAAE;MACbhB,KAAK,CAACP,YAAY,CAACuB,SAAS,CAAC,CAAClD,EAAE,GAAG+C,OAAO,CAACE,MAAM;IACnD;IACA,IAAID,SAAS,EAAE;MACbd,KAAK,CAACP,YAAY,CAACqB,SAAS,CAAC,CAAChD,EAAE,GAAG+C,OAAO,CAACI,MAAM;IACnD;EACF,CAAC;EACDC,oBAAoB,WAAAA,qBAAClB,KAAK,EAAEmB,IAAI,EAAE;IAChCnB,KAAK,CAACM,cAAc,GAAGa,IAAI;EAC7B,CAAC;EACDC,gBAAgB,WAAAA,iBAACpB,KAAK,EAAEa,OAAO,EAAE;IAC/B;IACA;IACA,IAAIb,KAAK,CAACO,QAAQ,EAAE;MAClB,IAAMc,KAAK,GAAGrB,KAAK,CAACC,SAAS,CAACF,IAAI,CAChC,UAAArC,IAAI;QAAA,OAAIsC,KAAK,CAACR,UAAU,KAAK9B,IAAI,CAACwC,IAAI;MAAA,EAAC;MACzC,IAAMoB,KAAK,GAAGtB,KAAK,CAACC,SAAS,CAACF,IAAI,CAChC,UAAArC,IAAI;QAAA,OAAImD,OAAO,CAACnD,IAAI,KAAKA,IAAI,CAACwC,IAAI;MAAA,EAAC;MACrC,IAAI,EAAEmB,KAAK,CAACjB,GAAG,IAAI,CAAC,IAAIkB,KAAK,CAAClB,GAAG,IAAI,CAAC,CAAC,EAAE;QACvCJ,KAAK,CAACO,QAAQ,GAAG,KAAK;QACtBP,KAAK,CAACM,cAAc,GAAG,KAAK;MAC9B;IACF;IACAN,KAAK,CAACR,UAAU,GAAGqB,OAAO,CAACnD,IAAI;IAC/B,IAAM+B,YAAY,GAAGH,qBAAqB,CACxCU,KAAK,CAACP,YAAY,EAAEO,KAAK,CAACR,UAAU,CAAC;IACvCzB,wBAAwB,CAAC8C,OAAO,CAAC7C,OAAO,EAAEyB,YAAY,CAAC;IACvD,SAAA8B,GAAA,MAAAC,gBAAA,GAA2BlD,MAAM,CAACN,OAAO,CAACyB,YAAY,CAAC,EAAA8B,GAAA,GAAAC,gBAAA,CAAAjD,MAAA,EAAAgD,GAAA,IAAE;MAApD,IAAAE,mBAAA,GAAAhD,cAAA,CAAA+C,gBAAA,CAAAD,GAAA;QAAO7C,GAAG,GAAA+C,mBAAA;QAAE9C,KAAK,GAAA8C,mBAAA;MACpBjE,GAAG,CAACkE,GAAG,CAAC1B,KAAK,CAACP,YAAY,EAAEf,GAAG,EAAEC,KAAK,CAAC;IACzC;EACF,CAAC;EACDgD,WAAW,WAAAA,YAAC3B,KAAK,EAAEa,OAAO,EAAE;IAC1B,IAAIb,KAAK,CAACK,SAAS,CAACQ,OAAO,CAACV,IAAI,CAAC,EAC/BH,KAAK,CAACK,SAAS,CAACQ,OAAO,CAACV,IAAI,CAAC,GAAGU,OAAO,CAAClC,KAAK;EACjD,CAAC;EACDiD,QAAQ,WAAAA,SAAC5B,KAAK,EAAE6B,QAAQ,EAAE;IACxB,IAAIA,QAAQ,EAAE;MACZ,IAAIpC,YAAY,GAAGqC,SAAS;MAC5B,IAAID,QAAQ,CAACrC,UAAU,EAAE;QACvBQ,KAAK,CAACR,UAAU,GAAGqC,QAAQ,CAACrC,UAAU;MACxC;MACA,IAAIqC,QAAQ,CAACpC,YAAY,EAAE;QACzBA,YAAY,GAAGoC,QAAQ,CAACpC,YAAY;MACtC,CAAC,MAAM;QACLA,YAAY,GAAGhC,aAAa,CAACuC,KAAK,CAACR,UAAU,CAAC;QAC9CuC,OAAO,CAACC,GAAG,CAACH,QAAQ,EAAEpC,YAAY,CAAC;QACnC,IAAIoC,QAAQ,CAACI,QAAQ,EAAE;UACrB,KAAK,IAAIjD,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG6C,QAAQ,CAACI,QAAQ,CAAC1D,MAAM,EAAES,CAAC,EAAE,EAAE;YACjD,QAAQ6C,QAAQ,CAACI,QAAQ,CAACjD,CAAC,CAAC,CAACmB,IAAI;cAC/B,KAAK,OAAO;gBAAE;kBACZV,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG+D,QAAQ,CAACI,QAAQ,CAACjD,CAAC,CAAC,CAAClB,EAAE;gBACrD;gBAAE;cACF,KAAK,QAAQ;gBAAE;kBACb,IAAG,QAAQ,IAAI2B,YAAY,EACzBA,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG+D,QAAQ,CAACI,QAAQ,CAACjD,CAAC,CAAC,CAAClB,EAAE;gBACvD;gBAAE;cACF,KAAK,OAAO;gBAAE;kBACZ,IAAG,QAAQ,IAAI2B,YAAY,EACzBA,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG+D,QAAQ,CAACI,QAAQ,CAACjD,CAAC,CAAC,CAAClB,EAAE;gBACvD;gBAAE;cACF,KAAK,QAAQ;gBAAE;kBACb,IAAG,QAAQ,IAAI2B,YAAY,EACzBA,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG+D,QAAQ,CAACI,QAAQ,CAACjD,CAAC,CAAC,CAAClB,EAAE;gBACvD;gBAAE;cACF,KAAK,OAAO;gBAAE;kBACZ,IAAG,QAAQ,IAAI2B,YAAY,EACzBA,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG+D,QAAQ,CAACI,QAAQ,CAACjD,CAAC,CAAC,CAAClB,EAAE;gBACvD;gBAAE;cACF,KAAK,OAAO;gBAAE;kBACZ,IAAG,QAAQ,IAAI2B,YAAY,EACzBA,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG+D,QAAQ,CAACI,QAAQ,CAACjD,CAAC,CAAC,CAAClB,EAAE;gBACvD;gBAAE;cACF;gBACE;YAAM;UAEZ;QACF;MACF;MACA,SAAAoE,GAAA,MAAAC,gBAAA,GAA2B7D,MAAM,CAACN,OAAO,CAACyB,YAAY,CAAC,EAAAyC,GAAA,GAAAC,gBAAA,CAAA5D,MAAA,EAAA2D,GAAA,IAAE;QAApD,IAAAE,mBAAA,GAAA3D,cAAA,CAAA0D,gBAAA,CAAAD,GAAA;UAAOxD,GAAG,GAAA0D,mBAAA;UAAEzD,KAAK,GAAAyD,mBAAA;QACpB5E,GAAG,CAACkE,GAAG,CAAC1B,KAAK,CAACP,YAAY,EAAEf,GAAG,EAAEC,KAAK,CAAC;MACzC;MACA,IAAIkD,QAAQ,CAACvB,cAAc,EAAE;QAC3BN,KAAK,CAACM,cAAc,GAAGuB,QAAQ,CAACvB,cAAc;MAChD;MACA,SAAA+B,GAAA,MAAAC,gBAAA,GAA2BhE,MAAM,CAACN,OAAO,CAAC6D,QAAQ,CAACxB,SAAS,CAAC,EAAAgC,GAAA,GAAAC,gBAAA,CAAA/D,MAAA,EAAA8D,GAAA,IAAE;QAA1D,IAAAE,mBAAA,GAAA9D,cAAA,CAAA6D,gBAAA,CAAAD,GAAA;UAAO3D,IAAG,GAAA6D,mBAAA;UAAE5D,MAAK,GAAA4D,mBAAA;QACpBvC,KAAK,CAACK,SAAS,CAAC3B,IAAG,CAAC,GAAGC,MAAK;MAC9B;MACA,IAAIkD,QAAQ,CAACtB,QAAQ,EAAE;QACrBP,KAAK,CAACO,QAAQ,GAAGsB,QAAQ,CAACtB,QAAQ;MACpC;IACF;EACF,CAAC;EACDiC,kBAAkB,WAAAA,mBAACxC,KAAK,EAAElC,EAAE,EAAE;IAC5B,IAAM2E,UAAU,GAAG5C,aAAa,CAACG,KAAK,CAACP,YAAY,EAAE3B,EAAE,CAAC;IACxD,IAAM4E,WAAW,GAAG1C,KAAK,CAACP,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;IACnDkC,KAAK,CAACP,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAGA,EAAE;IACpC,IAAI2E,UAAU,EAAE;MACdzC,KAAK,CAACP,YAAY,CAACgD,UAAU,CAAC,CAAC3E,EAAE,GAAG4E,WAAW;IACjD;EACF,CAAC;EACDC,WAAW,WAAAA,YAAC3C,KAAK,EAAEa,OAAO,EAAE;IAC1B,IAAIA,OAAO,EAAE;MACX;MACA;MACA;MACA,IAAIA,OAAO,CAACM,IAAI,KAAK,IAAI,EAAE;QACzBnB,KAAK,CAACR,UAAU,GAAGqB,OAAO,CAAC5C,MAAM;QACjC;QACA,IAAMwB,YAAY,GAAGH,qBAAqB,CACxCU,KAAK,CAACP,YAAY,EAAEO,KAAK,CAACR,UAAU,CAAC;QACvC,IAAMoD,WAAW,GAAG/C,aAAa,CAACJ,YAAY,EAAE,CAAC,CAAC;QAClD,IAAMiD,WAAW,GAAGjD,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;QAC7C,IAAI8E,WAAW,KAAK,QAAQ,EAAE;UAC5BnD,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG4E,WAAW;QACzC;QACAjD,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG,CAAC;QAC7B2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG+C,OAAO,CAACgC,KAAK;QACzC,SAAAC,GAAA,MAAAC,gBAAA,GAA2BzE,MAAM,CAACN,OAAO,CAACyB,YAAY,CAAC,EAAAqD,GAAA,GAAAC,gBAAA,CAAAxE,MAAA,EAAAuE,GAAA,IAAE;UAApD,IAAAE,mBAAA,GAAAvE,cAAA,CAAAsE,gBAAA,CAAAD,GAAA;YAAOpE,GAAG,GAAAsE,mBAAA;YAAErE,KAAK,GAAAqE,mBAAA;UACpBxF,GAAG,CAACkE,GAAG,CAAC1B,KAAK,CAACP,YAAY,EAAEf,GAAG,EAAEC,KAAK,CAAC;QACzC;QACAqB,KAAK,CAACO,QAAQ,GAAG,IAAI;QACrBP,KAAK,CAACM,cAAc,GAAG,IAAI;MAC7B,CAAC,MAAM;QACLN,KAAK,CAACR,UAAU,GAAG,aAAa;QAChC,IAAMC,aAAY,GAAGH,qBAAqB,CACxCU,KAAK,CAACP,YAAY,EAAEO,KAAK,CAACR,UAAU,CAAC;QACvC,SAAAyD,GAAA,MAAAC,gBAAA,GAA2B5E,MAAM,CAACN,OAAO,CAACyB,aAAY,CAAC,EAAAwD,GAAA,GAAAC,gBAAA,CAAA3E,MAAA,EAAA0E,GAAA,IAAE;UAApD,IAAAE,mBAAA,GAAA1E,cAAA,CAAAyE,gBAAA,CAAAD,GAAA;YAAOvE,KAAG,GAAAyE,mBAAA;YAAExE,OAAK,GAAAwE,mBAAA;UACpB3F,GAAG,CAACkE,GAAG,CAAC1B,KAAK,CAACP,YAAY,EAAEf,KAAG,EAAEC,OAAK,CAAC;QACzC;QACAqB,KAAK,CAACO,QAAQ,GAAG,KAAK;QACtBP,KAAK,CAACM,cAAc,GAAG,KAAK;MAC9B;IACF;EACF,CAAC;EACD8C,SAAS,WAAAA,UAACpD,KAAK,EAAEa,OAAO,EAAE;IACxB,IAAIA,OAAO,EAAE;MACXb,KAAK,CAACO,QAAQ,GAAG,KAAK;MACtBP,KAAK,CAACM,cAAc,GAAG,KAAK;MAC5B,IAAI+C,WAAW,GAAG,CAAC;MACnB;MACA,IAAIxC,OAAO,CAAC/C,EAAE,KAAK,CAAC,EAAE;QACpBuF,WAAW,GAAG,CAAC;MACjB,CAAC,MAAM,IAAIxC,OAAO,CAAC7C,OAAO,EAAE;QAC1B,KAAK,IAAIgB,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG6B,OAAO,CAAC7C,OAAO,CAACO,MAAM,IACxC8E,WAAW,IAAI,CAAC,EAAErE,CAAC,EAAE,EAAE;UACvB;UACA,IAAIa,aAAa,CAACgB,OAAO,CAAC7C,OAAO,CAACgB,CAAC,CAAC,CAAClB,EAAE,CAAC,KAAKgE,SAAS,EAAE;YACtDuB,WAAW,GAAGxC,OAAO,CAAC7C,OAAO,CAACgB,CAAC,CAAC,CAAClB,EAAE;UACrC;QACF;MACF;MACA;MACA,IAAIkC,KAAK,CAACR,UAAU,KAAK,WAAW,EAAE;QACpC;QACA,IAAM8D,KAAK,GAAGtD,KAAK,CAACR,UAAU;QAC9B,QAAQQ,KAAK,CAACR,UAAU;UACtB,KAAK,WAAW;UAChB,KAAK,YAAY;YACfQ,KAAK,CAACR,UAAU,GAAG,aAAa;YAChC;UACF,KAAK,QAAQ;YACXQ,KAAK,CAACR,UAAU,GAAG,YAAY;YAC/B;UACF,KAAK,QAAQ;YACXQ,KAAK,CAACR,UAAU,GAAG,QAAQ;YAC3B;UACF,KAAK,QAAQ;YACXQ,KAAK,CAACR,UAAU,GAAG,QAAQ;YAC3B;UACF,KAAK,gBAAgB;UACrB,KAAK,QAAQ;YACXQ,KAAK,CAACR,UAAU,GAAG,QAAQ;YAC3B;UACF;YACE;QAAM;QAEV,IAAMC,YAAY,GAAGH,qBAAqB,CACxCU,KAAK,CAACP,YAAY,EAAEO,KAAK,CAACR,UAAU,CAAC;QACvC,IAAMd,GAAG,GAAGmB,aAAa,CAACJ,YAAY,EAAEoB,OAAO,CAAC/C,EAAE,CAAC;;QAEnD;QACA;QACA,QAAQY,GAAG;UACT,KAAK,QAAQ;YAAE;cACb,QAAQ4E,KAAK;gBACX,KAAK,WAAW;gBAChB,KAAK,YAAY;kBAAE;oBACjB7D,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAGuF,WAAW;kBACzC;kBAAE;gBACF,KAAK,QAAQ;kBAAE;oBACb5D,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAGuF,WAAW;kBACzC;kBAAE;gBACF,KAAK,QAAQ;kBAAE;oBACb5D,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAGuF,WAAW;kBACzC;kBAAE;gBACF,KAAK,QAAQ;kBAAE;oBACb5D,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAGuF,WAAW;kBACzC;kBAAE;gBACF,KAAK,gBAAgB;gBACrB,KAAK,QAAQ;kBACb;oBACE5D,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAGuF,WAAW;kBACzC;kBAAE;gBACF;kBACE;cAAM;YAEZ;YAAE;UACF,KAAK,QAAQ;YAAE;cACb,QAAQC,KAAK;gBACX,KAAK,WAAW;gBAChB,KAAK,YAAY;kBAAE;oBACjB7D,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAGuF,WAAW;kBACzC;kBAAE;gBACF,KAAK,QAAQ;kBAAE;oBACb5D,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAGuF,WAAW;kBACzC;kBAAE;gBACF,KAAK,QAAQ;kBAAE;oBACb5D,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAGuF,WAAW;kBACzC;kBAAE;gBACF,KAAK,QAAQ;kBAAE;oBACb5D,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAGuF,WAAW;kBACzC;kBAAE;gBACF,KAAK,gBAAgB;gBACrB,KAAK,QAAQ;kBACb;oBACE5D,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAGuF,WAAW;kBACzC;kBAAE;gBACF;kBACE;cAAM;YAEZ;YAAE;UACF,KAAK,QAAQ;YAAE;cACb,QAAQC,KAAK;gBACX,KAAK,QAAQ;kBAAE;oBACb7D,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAGuF,WAAW;kBACzC;kBAAE;gBACF,KAAK,QAAQ;kBAAE;oBACb5D,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAGuF,WAAW;kBACzC;kBAAE;gBACF,KAAK,QAAQ;kBAAE;oBACb5D,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAGuF,WAAW;kBACzC;kBAAE;gBACF,KAAK,gBAAgB;gBACrB,KAAK,QAAQ;kBACb;oBACE5D,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAGuF,WAAW;kBACzC;kBAAE;gBACF;kBACE;cAAM;YAEZ;YAAE;UACF,KAAK,QAAQ;YAAE;cACb,QAAQC,KAAK;gBACX,KAAK,QAAQ;kBAAE;oBACb7D,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAGuF,WAAW;kBACzC;kBAAE;gBACF,KAAK,QAAQ;kBAAE;oBACb5D,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAGuF,WAAW;kBACzC;kBAAE;gBACF,KAAK,gBAAgB;gBACrB,KAAK,QAAQ;kBAAE;oBACb5D,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAGuF,WAAW;kBACzC;kBAAE;gBACF;kBACE;cAAM;YAEZ;YAAE;UACF,KAAK,QAAQ;YAAE;cACb,QAAQC,KAAK;gBACX,KAAK,QAAQ;kBAAE;oBACb7D,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAGuF,WAAW;kBACzC;kBAAE;gBACF,KAAK,gBAAgB;gBACrB,KAAK,QAAQ;kBAAE;oBACb5D,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAG2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE;oBACrD2B,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAGuF,WAAW;kBACzC;kBAAE;gBACF;kBACE;cAAM;YAEZ;YAAE;UACF,KAAK,QAAQ;YAAG;cACd,QAAQC,KAAK;gBACX,KAAK,gBAAgB;gBACrB,KAAK,QAAQ;kBACb;oBACE7D,YAAY,CAAC,QAAQ,CAAC,CAAC3B,EAAE,GAAGuF,WAAW;kBACzC;kBAAE;gBACF;kBACE;cAAM;YAEZ;YAAE;UACF;YACE;QAAM;QAEV,SAAAE,GAAA,MAAAC,gBAAA,GAA2BlF,MAAM,CAACN,OAAO,CAACyB,YAAY,CAAC,EAAA8D,GAAA,GAAAC,gBAAA,CAAAjF,MAAA,EAAAgF,GAAA,IAAE;UAApD,IAAAE,mBAAA,GAAAhF,cAAA,CAAA+E,gBAAA,CAAAD,GAAA;YAAO7E,KAAG,GAAA+E,mBAAA;YAAE9E,KAAK,GAAA8E,mBAAA;UACpBjG,GAAG,CAACkE,GAAG,CAAC1B,KAAK,CAACP,YAAY,EAAEf,KAAG,EAAEC,KAAK,CAAC;QACzC;MACF;IACF;EACF;AACF,CAAC;AAED,eAAe;EACb+E,UAAU,EAAE,IAAI;EAChB1D,KAAK,EAALA,KAAK;EACLQ,OAAO,EAAPA,OAAO;EACPG,SAAS,EAATA;AACF,CAAC"}]}