atr-components 0.1.17 → 0.1.19

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.
@@ -89,7 +89,7 @@ export declare interface AtrFormOpt {
89
89
  }
90
90
  export declare interface AtrFormDetail {
91
91
  label: string;
92
- type: 'cascader' | 'radio' | 'text' | 'image' | 'select' | 'date' | 'number' | 'telphone' | 'password' | 'checkbox' | 'editor' | 'textarea' | 'dateTime' | 'title' | 'dateRange' | 'selectc' | 'selectIcon' | 'treeSelect';
92
+ type: 'cascader' | 'radio' | 'text' | 'image' | 'select' | 'date' | 'number' | 'telphone' | 'password' | 'checkbox' | 'editor' | 'textarea' | 'dateTime' | 'title' | 'dateRange' | 'selectc' | 'selectIcon' | 'treeSelect' | 'switch';
93
93
  key: string;
94
94
  isHidden?: boolean;
95
95
  defaultValue?: any;
@@ -220,6 +220,7 @@ export declare interface TableAction {
220
220
  url?: string;
221
221
  gType?: 'normal' | 'upload';
222
222
  data?: any;
223
+ firstData?: any;
223
224
  datas?: any[];
224
225
  icon?: string;
225
226
  numberOfChecked?: number;
@@ -30,4 +30,4 @@ export var UserAction;
30
30
  UserAction[UserAction["QUERY"] = 3] = "QUERY";
31
31
  UserAction[UserAction["SUPPERADD"] = 4] = "SUPPERADD";
32
32
  })(UserAction || (UserAction = {}));
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXRyLWNvbW1vbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2NvcmUvYmFzZS9hdHItY29tbW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHO0lBQzlCLElBQUksRUFBRSxHQUFHO0lBQ1Q7O09BRUc7SUFDSCxPQUFPLEVBQUMsRUFBRTtJQUNWLFVBQVUsRUFBQyxxQkFBcUI7SUFDaEMsV0FBVyxFQUFDLEtBQUs7SUFDakIsUUFBUSxFQUFDLEVBQUU7SUFDWDs7T0FFRztJQUNILFlBQVksRUFBQyxVQUFVO0lBQ3ZCLFVBQVUsRUFBQyxFQUFFO0lBQ2IsbUJBQW1CO0lBQ25CLGVBQWUsRUFBQyxLQUFLO0lBQ3JCLGVBQWUsRUFBQyxDQUFDLFFBQXFCLEVBQUMsRUFBRTtRQUN2QyxPQUFPLFFBQVEsQ0FBQTtJQUNqQixDQUFDO0NBQ0YsQ0FBQztBQUNGLE1BQU0sT0FBTyxXQUFXOztBQUNmLG1CQUFPLEdBQUcsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUE7QUFDNUksaUJBQUssR0FBRyxxOUhBQXE5SCxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQTtBQW1Dai9ILE1BQU0sQ0FBTixJQUFZLFVBTVg7QUFORCxXQUFZLFVBQVU7SUFDcEIseUNBQUcsQ0FBQTtJQUNILDJDQUFJLENBQUE7SUFDSix5Q0FBRyxDQUFBO0lBQ0gsNkNBQUssQ0FBQTtJQUNMLHFEQUFTLENBQUE7QUFDWCxDQUFDLEVBTlcsVUFBVSxLQUFWLFVBQVUsUUFNckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0h0dHBIZWFkZXJzfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuXHJcbmV4cG9ydCBjb25zdCBhdHJfc3RhdGljX2RhdGFzID0ge1xyXG4gIHRlc3Q6ICcxJyxcclxuICAvKipcclxuICAgKiBvc3PlnLDlnYDliY3nvIBcclxuICAgKi9cclxuICBPU1NfVVJMOicnLFxyXG4gIE9TU19QT0xJQ1k6J3RoaXJkL29zcy9nZXRQb2xpY3knLFxyXG4gIFNUT1JBR0VfUFJFOidEUV8nLFxyXG4gIG1lbnVfdXJsOicnLFxyXG4gIC8qKlxyXG4gICAqIOeZu+W9lei3r+eUsVxyXG4gICAqL1xyXG4gIGxvZ2luX3JvdXRlcjonL3AvbG9naW4nLFxyXG4gIFNFUlZFUl9VUkw6JycsXHJcbiAgLy9odHRwIGhlYWTmmK/lkKbpu5jorqRoZWFkXHJcbiAgbmVlZE5vcm1hbEhlYWRlOmZhbHNlLFxyXG4gIGdldE5vcm1hbEhlYWRlcjooX2hlYWRlcnM6IEh0dHBIZWFkZXJzKT0+e1xyXG4gICAgcmV0dXJuIF9oZWFkZXJzXHJcbiAgfVxyXG59O1xyXG5leHBvcnQgY2xhc3MgY29tbW9uRGF0YXMge1xyXG4gIHN0YXRpYyBsZXR0ZXJzID0gW1wiQVwiLCBcIkJcIiwgXCJDXCIsIFwiRFwiLCBcIkVcIiwgXCJGXCIsIFwiR1wiLCBcIkhcIiwgXCJJXCIsIFwiSlwiLCBcIktcIiwgXCJMXCIsIFwiTVwiLCBcIk5cIiwgXCJPXCIsIFwiUFwiLCBcIlFcIiwgXCJSXCIsIFwiU1wiLCBcIlRcIiwgXCJVXCIsIFwiVlwiLCBcIldcIiwgXCJYXCIsIFwiWVwiLCBcIlpcIl1cclxuICBzdGF0aWMgaWNvbnMgPSAnc3RlcC1iYWNrd2FyZCxzdGVwLWZvcndhcmQsZmFzdC1iYWNrd2FyZCxmYXN0LWZvcndhcmQsc2hyaW5rLGFycm93cy1hbHQsZG93bix1cCxsZWZ0LHJpZ2h0LGNhcmV0LXVwLGNhcmV0LWRvd24sY2FyZXQtbGVmdCxjYXJldC1yaWdodCx1cC1jaXJjbGUsZG93bi1jaXJjbGUsbGVmdC1jaXJjbGUscmlnaHQtY2lyY2xlLGRvdWJsZS1yaWdodCxkb3VibGUtbGVmdCx2ZXJ0aWNhbC1sZWZ0LHZlcnRpY2FsLXJpZ2h0LHZlcnRpY2FsLWFsaWduLXRvcCx2ZXJ0aWNhbC1hbGlnbi1taWRkbGUsdmVydGljYWwtYWxpZ24tYm90dG9tLGZvcndhcmQsYmFja3dhcmQscm9sbGJhY2ssZW50ZXIscmV0d2VldCxzd2FwLHN3YXAtbGVmdCxzd2FwLXJpZ2h0LGFycm93LXVwLGFycm93LWRvd24sYXJyb3ctbGVmdCxhcnJvdy1yaWdodCxwbGF5LWNpcmNsZSx1cC1zcXVhcmUsZG93bi1zcXVhcmUsbGVmdC1zcXVhcmUscmlnaHQtc3F1YXJlLGxvZ2luLGxvZ291dCxtZW51LWZvbGQsbWVudS11bmZvbGQsYm9yZGVyLWJvdHRvbSxib3JkZXItaG9yaXpvbnRhbCxib3JkZXItaW5uZXIsYm9yZGVyLW91dGVyLGJvcmRlci1sZWZ0LGJvcmRlci1yaWdodCxib3JkZXItdG9wLGJvcmRlci12ZXJ0aWNsZSxwaWMtY2VudGVyLHBpYy1sZWZ0LHBpYy1yaWdodCxyYWRpdXMtYm90dG9tbGVmdCxyYWRpdXMtYm90dG9tcmlnaHQscmFkaXVzLXVwbGVmdCxyYWRpdXMtdXByaWdodCxmdWxsc2NyZWVuLGZ1bGxzY3JlZW4tZXhpdCxxdWVzdGlvbixxdWVzdGlvbi1jaXJjbGUscGx1cyxwbHVzLWNpcmNsZSxwYXVzZSxwYXVzZS1jaXJjbGUsbWludXMsbWludXMtY2lyY2xlLHBsdXMtc3F1YXJlLG1pbnVzLXNxdWFyZSxpbmZvLGluZm8tY2lyY2xlLGV4Y2xhbWF0aW9uLGV4Y2xhbWF0aW9uLWNpcmNsZSxjbG9zZSxjbG9zZS1jaXJjbGUsY2xvc2Utc3F1YXJlLGNoZWNrLGNoZWNrLWNpcmNsZSxjaGVjay1zcXVhcmUsY2xvY2stY2lyY2xlLHdhcm5pbmcsaXNzdWVzLWNsb3NlLHN0b3AsZWRpdCxmb3JtLGNvcHksc2Npc3NvcixkZWxldGUsc25pcHBldHMsZGlmZixoaWdobGlnaHQsYWxpZ24tY2VudGVyLGFsaWduLWxlZnQsYWxpZ24tcmlnaHQsYmctY29sb3JzLGJvbGQsaXRhbGljLHVuZGVybGluZSxzdHJpa2V0aHJvdWdoLHJlZG8sdW5kbyx6b29tLWluLHpvb20tb3V0LGZvbnQtY29sb3JzLGZvbnQtc2l6ZSxsaW5lLWhlaWdodCxkYXNoLHNtYWxsLWRhc2gsc29ydC1hc2NlbmRpbmcsc29ydC1kZXNjZW5kaW5nLGRyYWcsb3JkZXJlZC1saXN0LHVub3JkZXJlZC1saXN0LHJhZGl1cy1zZXR0aW5nLGNvbHVtbi13aWR0aCxjb2x1bW4taGVpZ2h0LGFyZWEtY2hhcnQscGllLWNoYXJ0LGJhci1jaGFydCxkb3QtY2hhcnQsbGluZS1jaGFydCxyYWRhci1jaGFydCxoZWF0LW1hcCxmYWxsLHJpc2Usc3RvY2ssYm94LXBsb3QsZnVuZCxzbGlkZXJzLGFuZHJvaWQsYXBwbGUsd2luZG93cyxpZSxjaHJvbWUsZ2l0aHViLGFsaXdhbmd3YW5nLGRpbmdkaW5nLHdlaWJvLXNxdWFyZSx3ZWliby1jaXJjbGUsdGFvYmFvLWNpcmNsZSxodG1sNSx3ZWlibyx0d2l0dGVyLHdlY2hhdCx5b3V0dWJlLGFsaXBheS1jaXJjbGUsdGFvYmFvLHNreXBlLHFxLG1lZGl1bS13b3JrbWFyayxnaXRsYWIsbWVkaXVtLGxpbmtlZGluLGdvb2dsZS1wbHVzLGRyb3Bib3gsZmFjZWJvb2ssY29kZXBlbixjb2RlLXNhbmRib3gsYW1hem9uLGdvb2dsZSxjb2RlcGVuLWNpcmNsZSxhbGlwYXksYW50LWRlc2lnbixhbnQtY2xvdWQsYWxpeXVuLHpoaWh1LHNsYWNrLHNsYWNrLXNxdWFyZSxiZWhhbmNlLGJlaGFuY2Utc3F1YXJlLGRyaWJiYmxlLGRyaWJiYmxlLXNxdWFyZSxpbnN0YWdyYW0seXVxdWUsYWxpYmFiYSx5YWhvbyxyZWRkaXQsc2tldGNoLGFsZXJ0LGFpbSxhY2NvdW50LWJvb2ssYXBhcnRtZW50LGFwaSxhcHBzdG9yZSxhdWRpby1tdXRlZCxhdWRpdCxiYW5rLGJhcmNvZGUsYmFycyxibG9jayxib29rLGJlbGwsYXBwc3RvcmUtYWRkLGF1ZGlvLGJvcmRlcixib3JkZXJsZXNzLXRhYmxlLGJ1ZyxicmFuY2hlcyxjYW1lcmEsY2FsY3VsYXRvcixjYWxlbmRhcixidWlsZCxjYXJyeS1vdXQsYnVsYixjYXIsY2xlYXIsY2ksY2xvdWQtZG93bmxvYWQsY2xvdWQsY2xvdWQtc3luYyxjbG91ZC1zZXJ2ZXIsY2xvdWQtdXBsb2FkLGNvZGUsY29mZmVlLGNvbXByZXNzLGNvbXBhc3MsY29tbWVudCxjaS1jaXJjbGUsY29udGFpbmVyLGNvbnRyb2wsY29weXJpZ2h0LGNyZWRpdC1jYXJkLGNsdXN0ZXIsY3VzdG9tZXItc2VydmljZSxjb250YWN0cyxjb25zb2xlLXNxbCxkYXNoYm9hcmQsZGF0YWJhc2UsY29weXJpZ2h0LWNpcmNsZSxkZWxldGUtY29sdW1uLGRlc2t0b3AsZGVwbG95bWVudC11bml0LGRlbGl2ZXJlZC1wcm9jZWR1cmUsZGlzY29ubmVjdCxkaW5ndGFsayxkb2xsYXItY2lyY2xlLGRpc2xpa2UsZGVsZXRlLXJvdyxkb2xsYXIsY3Jvd24sZG93bmxvYWQsZWxsaXBzaXMsZW52aXJvbm1lbnQsZXVyby1jaXJjbGUsZXhjZXB0aW9uLGV4cGFuZC1hbHQsZXVybyxleHBlcmltZW50LGV4cG9ydCxleHBhbmQsZXllLWludmlzaWJsZSxleWUsZmlsZS1hZGQsZmllbGQtc3RyaW5nLGZpbGUtZXhjbGFtYXRpb24sZmlsZS1kb25lLGZpZWxkLXRpbWUsZmlsZS1leGNlbCxmaWVsZC1iaW5hcnksZmlsZS1naWYsZmlsZS1pbWFnZSxmaWxlLGZpbGUtbWFya2Rvd24sZmlsZS1wcHQsZmlsZS1wZGYsZmllbGQtbnVtYmVyLGZpbGUtc2VhcmNoLGZpbGUtc3luYyxmaWxlLWpwZyxmaWxlLXRleHQsZmlsdGVyLGZpbGUtemlwLGZsYWcsZm9sZGVyLWFkZCxmaWxlLXVua25vd24sZm9sZGVyLW9wZW4sZmlyZSxmaWxlLXByb3RlY3QsZm9sZGVyLXZpZXcsZm9sZGVyLGZvcmssZm9ybWF0LXBhaW50ZXIsZnJvd24sZnVuZC1wcm9qZWN0aW9uLXNjcmVlbixnaWZ0LGdhdGV3YXksZnVuZC12aWV3LGdpZixmdW5uZWwtcGxvdCxnb2xkLGdsb2JhbCxncm91cCxoZGQsZnVuY3Rpb24saGlzdG9yeSxmaWxlLXdvcmQsaG9tZSxpZGNhcmQsaG91cmdsYXNzLGhlYXJ0LGluc2VydC1yb3ctYmVsb3csaW1wb3J0LGluc2VydC1yb3ctbGVmdCxpbnNlcnQtcm93LWFib3ZlLGluc2VydC1yb3ctcmlnaHQsa2V5LGluYm94LGluc3VyYW5jZSxsYXB0b3AsbGlrZSxsaW5lLGxpbmssbG9hZGluZy0zLXF1YXJ0ZXJzLGxvYWRpbmcsbG9jayxtYW4sbWFpbCxtYWMtY29tbWFuZCxtZWRpY2luZS1ib3gsbGF5b3V0LG1laCxpbnRlcmFjdGlvbixtZXNzYWdlLG1lbnUsbWVyZ2UtY2VsbHMsbW9iaWxlLG1vbmV5LWNvbGxlY3Qsbm9kZS1pbmRleCxtb25pdG9yLG5vZGUtZXhwYW5kLG1vcmUsbnVtYmVyLG5vdGlmaWNhdGlvbixvbmUtdG8tb25lLHBlcmNlbnRhZ2UscGhvbmUscGFwZXItY2xpcCxwYXJ0aXRpb24scGljdHVyZSxub2RlLWNvbGxhcHNlLHBsYXktc3F1YXJlLHBheS1jaXJjbGUscG91bmQscHJvZmlsZSxwcm9qZWN0LHByb3BlcnR5LXNhZmV0eSxwb3dlcm9mZixwdXNocGluLHFyY29kZSxwcmludGVyLHBvdW5kLWNpcmNsZSxwdWxsLXJlcXVlc3QscmVzdCxyZWFkLHJlbG9hZCxyZWNvbmNpbGlhdGlvbixyb2JvdCxyb2NrZXQscm90YXRlLXJpZ2h0LHNhZmV0eS1jZXJ0aWZpY2F0ZSxyZWQtZW52ZWxvcGUscm90YXRlLWxlZnQsc2F2ZSxzYWZldHksc2VhcmNoLHNlY3VyaXR5LXNjYW4sc2NhbixzZW5kLHNldHRpbmcsc2VsZWN0LHNoYWtlLHNob3BwaW5nLWNhcnQsc2lzdGVybm9kZSxzaG9wLHNob3BwaW5nLHNoYXJlLWFsdCxzY2hlZHVsZSxza2luLHNtaWxlLHNvbHV0aW9uLHNvdW5kLHNwbGl0LWNlbGxzLHN0YXIsc3Vibm9kZSx0YWdzLHRhYmxldCx0YWcsdGFibGUsc3dpdGNoZXIsc3luYyx0ZWFtLHRvb2wsdHJhZGVtYXJrLWNpcmNsZSx0aHVuZGVyYm9sdCx0by10b3AsdHJhbnNsYXRpb24sdHJhZGVtYXJrLHRyb3BoeSx1bmdyb3VwLHVubG9jayx1cGxvYWQsdHJhbnNhY3Rpb24sdXNlci1kZWxldGUsdXNiLHVzZXItYWRkLHVzZXJncm91cC1kZWxldGUsdmlkZW8tY2FtZXJhLWFkZCx2ZXJpZmllZCx1c2VyZ3JvdXAtYWRkLHVzZXIsdXNlci1zd2l0Y2gsdmlkZW8tY2FtZXJhLHdpZmksd2FsbGV0LHdoYXRzLWFwcCx3b21hbixhcHBzdG9yZScuc3BsaXQoJywnKVxyXG59XHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UganNvbiBleHRlbmRzIE9iamVjdCB7XHJcbiAgW2tleTogc3RyaW5nXTogYW55XHJcbn1cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTZXJ2ZXJQYWdpbmF0aW9uU3RhbmRhcmQge1xyXG4gIGN1cnJlbnRQYWdlOiBudW1iZXI7XHJcbiAgc2hvd0NvdW50OiBudW1iZXI7XHJcbiAgdG90YWxSZXN1bHQ6IG51bWJlcjtcclxuICB0b3RhbFBhZ2U/OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBIdHRwUmVzcG9uc2VEYXRhU3RhbmRhcmQge1xyXG4gIHN0YXRlOiBudW1iZXI7IC8vIOS4ujHmiY3mmK/miJDlip9cclxuICBkYXRhOiBqc29uIHwgW3t9XSB8IG9iamVjdCB8IHN0cmluZyB8IGFueTsgLy/msqHmnInlgLwgZGF0YTogJydcclxuICBtZXNzOiBzdHJpbmc7IC8v6L+U5Zue55qE5raI5oGvXHJcbiAgcGFnZT86IFNlcnZlclBhZ2luYXRpb25TdGFuZGFyZDtcclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBIdHRwUnNlcG9uc2VUcmFuc2Zvcm1DZWxsIHtcclxuICBba2V5OiBzdHJpbmddOiBqc29uXHJcbn1cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBIdHRwT3B0aW9ucyB7XHJcbiAgaGVhZGVycz86IHt9LFxyXG4gIGlzSnNvbkVuY29kZT86IGJvb2xlYW5cclxuICBpc1VybEVuY29kZT86IGJvb2xlYW5cclxuICBpc0F1dG9TaG93TWVzc2FnZT86IGJvb2xlYW5cclxuICBpc1dpdGhDcmVkZW50aWFscz86IGJvb2xlYW5cclxuICBpc0NvbW1vbkh0dHBIZWFkZXI/OiBib29sZWFuXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIFVzZXJBY3Rpb24ge1xyXG4gIEFERCxcclxuICBFRElULFxyXG4gIERFTCxcclxuICBRVUVSWSxcclxuICBTVVBQRVJBRERcclxufVxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRUNoYXJ0c09wdGlvbiB7XHJcbiAgdGl0bGU/OiBhbnksXHJcbiAgbGVnZW5kPzogYW55LFxyXG4gIGdyaWQ/OiBhbnksXHJcbiAgYnJ1c2g/OiBhbnksXHJcbiAgdG9vbGJveD86IGFueSxcclxuICB0b29sdGlwPzogYW55LFxyXG4gIGRhdGFzZXQ/OiBhbnksXHJcbiAgeEF4aXM/OiB7XHJcbiAgICB0eXBlPzogJ2NhdGVnb3J5JyxcclxuICAgIGRhdGE/OiBzdHJpbmdbXSxcclxuICAgIGJvdW5kYXJ5R2FwPzpib29sZWFuLFxyXG4gICAgc2hvdz86IGJvb2xlYW4sXHJcbiAgfSxcclxuICB5QXhpcz86IGFueSwvL3sgICAgc2hvdzpmYWxzZSwgICAgdHlwZTogJ3ZhbHVlJywgICAgbWluSW50ZXJ2YWw6IDEsfVtdXHJcbiAgc2VyaWVzPzoge1xyXG4gICAgbmFtZT86IHN0cmluZyxcclxuICAgIGRhdGE/OiBhbnlbXSxcclxuICAgIGl0ZW1TdHlsZT86IGFueSxcclxuICAgIHN0YWNrPzogYW55LFxyXG4gICAgZW1waGFzaXM/OiBhbnksXHJcbiAgICBsYWJlbD86IGFueSxcclxuICAgIHJhZGl1cz86IGFueVtdLFxyXG4gICAgc21vb3RoPzpib29sZWFuLFxyXG4gICAgc2VyaWVzTGF5b3V0Qnk/OnN0cmluZyxcclxuICAgIHR5cGU/OiAnYmFyJyB8ICdwaWUnIHwgJ2xpbmUnLFxyXG4gICAgYmFja2dyb3VuZFN0eWxlPzogYW55XHJcbiAgfVtdXHJcbn1cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEF0ckZvcm1PcHQge1xyXG4gIHR5cGU6ICdhZGQnIHwgJ2VkaXQnIHwgJ3ZpZXcnLFxyXG4gIGxheW91dD86IFwiZnVsbFwiIHwgJzFsMmMnIHwgJzFsMWMnLFxyXG4gIGl0ZW1zOiBBdHJGb3JtRGV0YWlsW10sLy/ooajljZXpobnnm65cclxufVxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEF0ckZvcm1EZXRhaWwge1xyXG4gIGxhYmVsOiBzdHJpbmcsXHJcbiAgdHlwZTogJ2Nhc2NhZGVyJyB8ICdyYWRpbycgfCAndGV4dCcgfCAnaW1hZ2UnIHwgJ3NlbGVjdCcgfCAnZGF0ZScgfCAnbnVtYmVyJyB8ICd0ZWxwaG9uZScgfCAncGFzc3dvcmQnIHwgJ2NoZWNrYm94J1xyXG4gICAgfCAnZWRpdG9yJyB8ICd0ZXh0YXJlYScgfCAnZGF0ZVRpbWUnIHwgJ3RpdGxlJyB8ICdkYXRlUmFuZ2UnIHwgJ3NlbGVjdGMnIHwgJ3NlbGVjdEljb24nIHwgJ3RyZWVTZWxlY3QnLFxyXG4gIGtleTogc3RyaW5nLFxyXG4gIGlzSGlkZGVuPzogYm9vbGVhbixcclxuICBkZWZhdWx0VmFsdWU/OiBhbnksXHJcbiAgdmFsdWU/OiBhbnksLy/nvJbovpHkuIvljp/lp4vmlbDlgLxcclxuICBkaWN0Q29kZT86IHN0cmluZywvL3NlbGVjdCDmqKHlvI/kuIvphY3nva5cclxuICBzcGFuPzogbnVtYmVyLC8v5pi+56S65a695bqmXHJcbiAgdmFsaWRhdG9ycz86IEF0ckZvcm1WYWxpZFtdLC8v6aqM6K+B5p2h5Lu2XHJcbiAgaXNSZXF1aXJlZD86IGJvb2xlYW4gfCBzdHJpbmcsLy/pmpDmgKfmnaHku7Yg5peg6ZyA5aGr5YaZLCBzdHJpbmfnsbvlnovmoLzlvI/lkIxvcGVyYXRvclxyXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nLFxyXG4gIGltYWdlT3B0cz86IEltYWdlT3B0cyxcclxuICBlZGl0Q29udGVudD86IHN0cmluZyxcclxuICBoZWlnaHQ/OiBudW1iZXIsLy9lZGl0b3LmnInmlYhcclxuICBkaXNhYmxlPzogYm9vbGVhbixcclxuICBsc3Bhbj86IG51bWJlcixcclxuICBjc3Bhbj86IG51bWJlcixcclxuICByb3dzPzogbnVtYmVyLC8vdGV4dGFyZWEg5pi+56S66KGM5pWwXHJcbiAgb3BlcmF0b3I/OiBzdHJpbmcsLy/mmL7npLrmk43kvZznrKYg5qC85byPIOWmgjpzdGF0dXN8ZXF8MFxyXG4gIGJ1dHRvbj86IGZvcm1CdXR0b24sXHJcbiAgcmVhZG9ubHk/OiBib29sZWFuLFxyXG4gIGRhdGVGb3JtYXQ/OiBzdHJpbmcsXHJcbiAgZGljdExpc3Q/OiBDdXNEaWN0W10sXHJcbiAgc2VsZWN0VXJsPzogeyB1cmw6IHN0cmluZywgY29udmVydD86IHN0cmluZywgdHlwZT86ICdnZXQnIHwgJ3Bvc3QnLCBob3N0PzogJ29zcycgfCAnc2VydmUnLCBpc011bHRpcGxlPzogYm9vbGVhbiB9LFxyXG4gIHRyZWVMaXN0PzogeyBrZXk6IHN0cmluZywgdGl0bGU6IHN0cmluZyB9W10sXHJcbiAgZW5kcz86IHN0cmluZyxcclxuICBwcm9wb3NhbD86IHN0cmluZyxcclxuICB0ZW1wPzogYW55LFxyXG4gIG5vdE51bGw/OiBib29sZWFuXHJcblxyXG59XHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQXRyRm9ybVZhbGlkIHtcclxuICB0eXBlOiAncmVxdWlyZWQnIHwgJ2VtYWlsJyB8ICd0ZWxwaG9uZScgfCAnbWF4bGVuZ3RoJyB8ICdtaW5sZW5ndGgnIHwgJ3BhdHRlcm4nIHwgJ29wZXJhdG9yJyxcclxuICBlcnJvckxhYmVsOiBzdHJpbmcsXHJcbiAgbWF4bGVuZ3RoPzogbnVtYmVyLFxyXG4gIG1pbmxlbmd0aD86IG51bWJlcixcclxuICBwYXR0ZXJuVmFsdWU/OiBzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIGZvcm1CdXR0b24ge1xyXG4gIG5hbWU6IHN0cmluZyxcclxuICBpc1Nob3c6IGJvb2xlYW4sXHJcbiAgY29kZTogc3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBjb2xvck9wZXJhdG9yIHtcclxuICBjb2xvcjogc3RyaW5nLFxyXG4gIG9wZXJhdG9yOiBzdHJpbmcsLy/op4TliJlcclxufVxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEF0clF1ZXlyT3B0IHtcclxuICBhY3Rpb25zPzogVGFibGVBY3Rpb25bXSxcclxuICBpc0luZGV4PzogYm9vbGVhbiwvL+aYr+WQpuaYvuekuuW6j+WPtyxcclxuICBjb2xvcj86IGNvbG9yT3BlcmF0b3IsLy/popzoibJcclxuICBjaGVja0JveD86IHtcclxuICAgIGlzU2hvd0NoZWNrYm94PzogYm9vbGVhbixcclxuICAgIGlzUmFkaW8/OiBib29sZWFuLFxyXG4gICAgaXNGb3JiaWQ/OiBib29sZWFuLC8vdHJ1ZeaXtuWPquWFgeiuuOeCueWHu+WkmumAieahhumAieaLqVxyXG4gIH0sXHJcbiAgLy8gaXNTaG93Q2hlY2tib3g/OiBib29sZWFuLFxyXG4gIHNob3dOdW0/OiBudW1iZXIsXHJcbiAgdXJsOiBzdHJpbmcsXHJcbiAgc29ydD86IHN0cmluZyxcclxuICBoZWFkZXJzPzogQXRyUXVlcnlIZWFkZXJbXSxcclxuICB0YWJsZXM6IFRhYmxlW10sXHJcbiAgaXNBdXRvUXVlcnk/OiBib29sZWFuLC8vdHJ1ZeaXtuWAmem7mOiupOinpuWPkeafpeivolxyXG4gIGRlZmF1bHRQYXJhbXM/OiBqc29uLFxyXG4gIGlzSGlkZVF1ZXJ5PzogYm9vbGVhblxyXG4gIC8vIGlzUmFkaW8/OmJvb2xlYW4sXHJcbiAgLy8gaXNGb3JiaWQ/OmJvb2xlYW4sLy90cnVl5pe25Y+q5YWB6K6454K55Ye75aSa6YCJ5qGG6YCJ5oupXHJcbn1cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUYWJsZSB7XHJcbiAgbmFtZTogc3RyaW5nLC8v6KGo5aS05ZCN56ewXHJcbiAga2V5Pzogc3RyaW5nLC8v5a6e6ZmF5pWw5o2u5a2X5q61XHJcbiAgZGVmYXVsdFZhbD86IGFueSxcclxuICBzb3J0S2V5Pzogc3RyaW5nLC8v5piv5ZCm5o6S5bqPXHJcbiAgc29ydGFibGU/OiBib29sZWFuLFxyXG4gIHR5cGU6ICd0ZXh0Y29sb3InIHwgJ2ZpeGVkVGV4dCcgfCAndGV4dCcgfCAnbGluaycgfCAnYWN0aW9uJyB8ICdpbWFnZScgfCAnZGF0ZScgfCAnZGF0ZVRpbWUnIHwgJ3NEYXRlVGltZScgfCAnZGljdCcsLy/nsbvlnovvvJog5paH5a2X44CB6ZO+5o6l44CB5pON5L2cXHJcbiAgZGljdENvZGU/OiBzdHJpbmcsXHJcbiAgaXNTaG93PzogYm9vbGVhbixcclxuICB3aWR0aD86IHN0cmluZywvLzE1MHB4XHJcbiAgYWN0aW9ucz86IFRhYmxlQWN0aW9uW10sXHJcbiAgaXNSb3dTcGFuPzogYm9vbGVhbixcclxuICBpc1JpZ2h0PzogYm9vbGVhblxyXG4gIGlzTGVmdD86IGJvb2xlYW4sXHJcbiAgY29sb3I/OiBjb2xvck9wZXJhdG9yLC8v6aKc6ImyXHJcbiAgY29sb3JTaG93Pzogc3RyaW5nLFxyXG59XHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQXRyUXVlcnlIZWFkZXIge1xyXG4gIG5hbWU6IHN0cmluZyxcclxuICB0eXBlOiAnY2FzY2FkZXInIHwgJ3RleHQnIHwgJ251bWJlcicgfCAnY2hlY2tib3gnIHwgJ3NlbGVjdCcgfCAnZGF0ZXBpY2tlcicgfCAnc2VsZWN0Q3VzJyB8ICdkYXRlUmFuZ2UnIHwgJ3NkYXRlJyB8ICd0cmVlU2VsZWN0JyxcclxuICBrZXk6IHN0cmluZyxcclxuICBpc1Nob3c/OiBib29sZWFuLFxyXG4gIGNvZGU/OiBzdHJpbmcsXHJcbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmcsXHJcbiAgc3Bhbj86IG51bWJlcixcclxuICBkaWN0Q29kZT86IHN0cmluZywvL+Wtl+WFuOe8lueggVxyXG4gIGRpY3RMaXN0PzogQ3VzRGljdFtdLFxyXG4gIGRlZmF1bHRWYWw/OiBhbnkgLy8g6buY6K6k5YC8XHJcbiAgbWF4VGFnQ291bnQ/OiBudW1iZXIsXHJcbiAgbHNwYW4/OiBudW1iZXIsXHJcbiAgY3NwYW4/OiBudW1iZXIsXHJcbiAgZGlzYWJsZUNsZWFyPzogYm9vbGVhbixcclxuICB0cmVlTGlzdD86IHsga2V5OiBzdHJpbmcsIHRpdGxlOiBzdHJpbmcgfVtdXHJcbiAgLyoqXHJcbiAgICog5qC85byPXHJcbiAgICogY29udmVydDona2V5fGlkLHRpdGxlfHJlYWxOYW1lJyh0cmVlU2VsZWN0KVxyXG4gICAqICAgIHZhbHVlfGlkLGxhYmVsfG5hbWUoc2VsZWN0Q3VzKVxyXG4gICAqL1xyXG4gIHNlbGVjdFVybD86IHsgdXJsOiBzdHJpbmcsIGNvbnZlcnQ6IHN0cmluZywgaXNNdWx0aXBsZT86IGJvb2xlYW4gfSwvL2NvbnZlcnQ6IG5ld0tleXxvbGRLZXksbmV3S2V5fG9sZEtleSjmjqXlj6Pov5Tlm57nmoTlgLwpXHJcbiAgaWNvbj86IHsgaXNTaG93OiBib29sZWFuLCBjb2RlOiBzdHJpbmcsIGljb246IGFueSB9LFxyXG4gIGRhdGVNb2RlPzogJ3dlZWsnIHwgJ21vbnRoJyB8ICd5ZWFyJyxcclxufVxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRhYmxlQWN0aW9uIHtcclxuICBuYW1lOiBzdHJpbmcsXHJcbiAgY29kZTogc3RyaW5nLFxyXG4gIHVybD86IHN0cmluZyxcclxuICBnVHlwZT86ICdub3JtYWwnIHwgJ3VwbG9hZCcsXHJcbiAgZGF0YT86IGFueSxcclxuICBkYXRhcz86IGFueVtdLFxyXG4gIGljb24/OiBzdHJpbmcsXHJcbiAgbnVtYmVyT2ZDaGVja2VkPzogbnVtYmVyLFxyXG4gIHR5cGU/OiAncm93cycgfCAncm93JyxcclxuICBvcGVyYXRvcj86IHN0cmluZywvL+aYvuekuuaTjeS9nOesplxyXG4gIGJ1dHRvblR5cGU/OiAncHJpbWFyeScgfCAnZGFzaGVkJyB8ICdkYW5nZXInIHwgJ2RlZmF1bHQnIHwgJ2xpbmsnLFxyXG4gIHZhbHVlPzogYW55LFxyXG4gIHdpdGhvdXRSb2xlPzogYm9vbGVhbi8v5LiN6ZyA6KaB5p2D6ZmQ5o6n5Yi2XHJcbn1cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBGb3JtQWN0aW9uIHtcclxuICBuYW1lOiBzdHJpbmcsXHJcbiAgY29kZTogc3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEaWN0IHtcclxuICBpZDogc3RyaW5nLFxyXG4gIHR5cGVOYW1lOiBzdHJpbmcsXHJcblxyXG59XHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRGljdEdyb3VwIHtcclxuICBncm91cENvZGU6IHN0cmluZyxcclxuICBkaWN0czogRGljdFtdXHJcbn1cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBDdXNEaWN0IHtcclxuICBsYWJlbDogc3RyaW5nLFxyXG4gIHZhbHVlOiBzdHJpbmcsXHJcbn1cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJbWFnZU9wdHMge1xyXG4gIGxpbWl0PzogbnVtYmVyLFxyXG4gIHVwbG9hZERpcjogc3RyaW5nLFxyXG4gIHJlbW92ZUFjdGlvbj86IHN0cmluZyxcclxuICBpbWFnZUxpc3Q/OiBhbnlbXSxcclxuICBrZXk/OiBzdHJpbmcsXHJcbiAgbGFiZT86IHN0cmluZyxcclxuICBmaWxlTmFtZT86IHN0cmluZyxcclxuICB1cGxvYWRUeXBlPzogJ2RyYWcnIHwgJycsXHJcbiAgbnpGaWxlVHlwZT86IHN0cmluZ1xyXG59XHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgZXF1aXBUZXN0RGF0YSB7XHJcbiAgY29kZTogc3RyaW5nXHJcbiAgaXRlbU5hbWU6IHN0cmluZ1xyXG4gIHpob3UxOiBudW1iZXJcclxuICB6aG91MjogbnVtYmVyXHJcbiAgemhvdTM6IG51bWJlclxyXG4gIHpob3U0OiBudW1iZXJcclxuICB6aG91NTogbnVtYmVyXHJcbiAgemhvdTY6IG51bWJlclxyXG4gIGlzV3JvbmcxPzogYm9vbGVhblxyXG4gIGlzV3JvbmcyPzogYm9vbGVhblxyXG4gIGlzV3JvbmczPzogYm9vbGVhblxyXG4gIGlzV3Jvbmc0PzogYm9vbGVhblxyXG4gIGlzV3Jvbmc1PzogYm9vbGVhblxyXG4gIGlzV3Jvbmc2PzogYm9vbGVhblxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNlbGVjdEFjdGlvbiB7XHJcbiAgbmFtZTogc3RyaW5nLFxyXG4gIGNvZGU6IFwibmdNb2RlbENoYW5nZVwiIHwgJ256T3BlbkNoYW5nZScsXHJcbiAgZGF0YT86IGFueSxcclxuICBrZXk/OiBzdHJpbmcsXHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBNZW51SWNvbiB7XHJcbiAgLyoqIFR5cGUgZm9yIGljb24gKi9cclxuICB0eXBlOiAnY2xhc3MnIHwgJ2ljb24nIHwgJ2ljb25mb250JyB8ICdpbWcnO1xyXG4gIC8qKiBWYWx1ZSBmb3IgdGhlIGljb24sIGNhbiBiZSBzZXQgQ2xhc3MgTmFtZSwgbnotaWNvbiBvZiBgbnpUeXBlYCwgaW1hZ2UgKi9cclxuICB2YWx1ZT86IHN0cmluZztcclxuICAvKiogVHlwZSBvZiB0aGUgYW50IGRlc2lnbiBpY29uLCBkZWZhdWx0OiBgb3V0bGluZWAgKi9cclxuICB0aGVtZT86ICdvdXRsaW5lJyB8ICd0d290b25lJyB8ICdmaWxsJztcclxuICAvKiogUm90YXRlIGljb24gd2l0aCBhbmltYXRpb24sIGRlZmF1bHQ6IGBmYWxzZWAgKi9cclxuICBzcGluPzogYm9vbGVhbjtcclxuICAvKiogT25seSBzdXBwb3J0IHRoZSB0d28tdG9uZSBpY29uLiBTcGVjaWZpYyB0aGUgcHJpbWFyeSBjb2xvciAqL1xyXG4gIHR3b1RvbmVDb2xvcj86IHN0cmluZztcclxuICAvKiogVHlwZSBvZiB0aGUgaWNvbiBmcm9tIGljb25mb250ICovXHJcbiAgaWNvbmZvbnQ/OiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTWVudSB7XHJcbiAgdGV4dD86IHN0cmluZztcclxuICBsaW5rPzogc3RyaW5nO1xyXG4gIHJlYWxMaW5rPzpzdHJpbmc7XHJcbiAgaXNTZWxlY3RlZD86IEJvb2xlYW47XHJcbiAgaXNPcGVuPzogQm9vbGVhbjtcclxuICB0YXJnZXQ/OiAnX2JsYW5rJyB8ICdfc2VsZicgfCAnX3BhcmVudCcgfCAnX3RvcCc7XHJcbiAgLyoqIEljb24gZm9yIHRoZSBtZW51IGl0ZW0sIG9ubHkgdmFsaWQgZm9yIHRoZSBmaXJzdCBsZXZlbCBtZW51ICovXHJcbiAgaWNvbj86IHN0cmluZyB8IE1lbnVJY29uIHwgbnVsbDtcclxuICAvKiogQmFkZ2V0IGZvciB0aGUgbWVudSBpdGVtIHdoZW4gYGdyb3VwYCBpcyBgdHJ1ZWAgKi9cclxuICBvcGVyYXRpb24/OiBzdHJpbmc7XHJcbiAgLyoqIFdoZXRoZXIgc2hvcnRjdXQgbWVudSBpdGVtICovXHJcbiAgc2VxPzogbnVtYmVyO1xyXG4gIGxldmVsPzogbnVtYmVyO1xyXG4gIC8qKiBXaGV0ZXIgc2hvcnRjdXQgbWVudSByb290IG5vZGUgKi9cclxuICBsaW5rVHlwZT86IHN0cmluZztcclxuICAvKiogV2hldGhlciB0byBhbGxvdyByZXVzZSwgbmVlZCB0byBjb29wZXJhdGUgd2l0aCB0aGUgYHJldXNlLXRhYmAgY29tcG9uZW50ICovXHJcbiAgY2hpbGRyZW4/OiBNZW51W107XHJcbiAgaXNWaXNpYmxlPzonMCcgfCcxJ1xyXG59XHJcbiJdfQ==
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXRyLWNvbW1vbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2NvcmUvYmFzZS9hdHItY29tbW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHO0lBQzlCLElBQUksRUFBRSxHQUFHO0lBQ1Q7O09BRUc7SUFDSCxPQUFPLEVBQUMsRUFBRTtJQUNWLFVBQVUsRUFBQyxxQkFBcUI7SUFDaEMsV0FBVyxFQUFDLEtBQUs7SUFDakIsUUFBUSxFQUFDLEVBQUU7SUFDWDs7T0FFRztJQUNILFlBQVksRUFBQyxVQUFVO0lBQ3ZCLFVBQVUsRUFBQyxFQUFFO0lBQ2IsbUJBQW1CO0lBQ25CLGVBQWUsRUFBQyxLQUFLO0lBQ3JCLGVBQWUsRUFBQyxDQUFDLFFBQXFCLEVBQUMsRUFBRTtRQUN2QyxPQUFPLFFBQVEsQ0FBQTtJQUNqQixDQUFDO0NBQ0YsQ0FBQztBQUNGLE1BQU0sT0FBTyxXQUFXOztBQUNmLG1CQUFPLEdBQUcsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUE7QUFDNUksaUJBQUssR0FBRyxxOUhBQXE5SCxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQTtBQW1Dai9ILE1BQU0sQ0FBTixJQUFZLFVBTVg7QUFORCxXQUFZLFVBQVU7SUFDcEIseUNBQUcsQ0FBQTtJQUNILDJDQUFJLENBQUE7SUFDSix5Q0FBRyxDQUFBO0lBQ0gsNkNBQUssQ0FBQTtJQUNMLHFEQUFTLENBQUE7QUFDWCxDQUFDLEVBTlcsVUFBVSxLQUFWLFVBQVUsUUFNckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0h0dHBIZWFkZXJzfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuXHJcbmV4cG9ydCBjb25zdCBhdHJfc3RhdGljX2RhdGFzID0ge1xyXG4gIHRlc3Q6ICcxJyxcclxuICAvKipcclxuICAgKiBvc3PlnLDlnYDliY3nvIBcclxuICAgKi9cclxuICBPU1NfVVJMOicnLFxyXG4gIE9TU19QT0xJQ1k6J3RoaXJkL29zcy9nZXRQb2xpY3knLFxyXG4gIFNUT1JBR0VfUFJFOidEUV8nLFxyXG4gIG1lbnVfdXJsOicnLFxyXG4gIC8qKlxyXG4gICAqIOeZu+W9lei3r+eUsVxyXG4gICAqL1xyXG4gIGxvZ2luX3JvdXRlcjonL3AvbG9naW4nLFxyXG4gIFNFUlZFUl9VUkw6JycsXHJcbiAgLy9odHRwIGhlYWTmmK/lkKbpu5jorqRoZWFkXHJcbiAgbmVlZE5vcm1hbEhlYWRlOmZhbHNlLFxyXG4gIGdldE5vcm1hbEhlYWRlcjooX2hlYWRlcnM6IEh0dHBIZWFkZXJzKT0+e1xyXG4gICAgcmV0dXJuIF9oZWFkZXJzXHJcbiAgfVxyXG59O1xyXG5leHBvcnQgY2xhc3MgY29tbW9uRGF0YXMge1xyXG4gIHN0YXRpYyBsZXR0ZXJzID0gW1wiQVwiLCBcIkJcIiwgXCJDXCIsIFwiRFwiLCBcIkVcIiwgXCJGXCIsIFwiR1wiLCBcIkhcIiwgXCJJXCIsIFwiSlwiLCBcIktcIiwgXCJMXCIsIFwiTVwiLCBcIk5cIiwgXCJPXCIsIFwiUFwiLCBcIlFcIiwgXCJSXCIsIFwiU1wiLCBcIlRcIiwgXCJVXCIsIFwiVlwiLCBcIldcIiwgXCJYXCIsIFwiWVwiLCBcIlpcIl1cclxuICBzdGF0aWMgaWNvbnMgPSAnc3RlcC1iYWNrd2FyZCxzdGVwLWZvcndhcmQsZmFzdC1iYWNrd2FyZCxmYXN0LWZvcndhcmQsc2hyaW5rLGFycm93cy1hbHQsZG93bix1cCxsZWZ0LHJpZ2h0LGNhcmV0LXVwLGNhcmV0LWRvd24sY2FyZXQtbGVmdCxjYXJldC1yaWdodCx1cC1jaXJjbGUsZG93bi1jaXJjbGUsbGVmdC1jaXJjbGUscmlnaHQtY2lyY2xlLGRvdWJsZS1yaWdodCxkb3VibGUtbGVmdCx2ZXJ0aWNhbC1sZWZ0LHZlcnRpY2FsLXJpZ2h0LHZlcnRpY2FsLWFsaWduLXRvcCx2ZXJ0aWNhbC1hbGlnbi1taWRkbGUsdmVydGljYWwtYWxpZ24tYm90dG9tLGZvcndhcmQsYmFja3dhcmQscm9sbGJhY2ssZW50ZXIscmV0d2VldCxzd2FwLHN3YXAtbGVmdCxzd2FwLXJpZ2h0LGFycm93LXVwLGFycm93LWRvd24sYXJyb3ctbGVmdCxhcnJvdy1yaWdodCxwbGF5LWNpcmNsZSx1cC1zcXVhcmUsZG93bi1zcXVhcmUsbGVmdC1zcXVhcmUscmlnaHQtc3F1YXJlLGxvZ2luLGxvZ291dCxtZW51LWZvbGQsbWVudS11bmZvbGQsYm9yZGVyLWJvdHRvbSxib3JkZXItaG9yaXpvbnRhbCxib3JkZXItaW5uZXIsYm9yZGVyLW91dGVyLGJvcmRlci1sZWZ0LGJvcmRlci1yaWdodCxib3JkZXItdG9wLGJvcmRlci12ZXJ0aWNsZSxwaWMtY2VudGVyLHBpYy1sZWZ0LHBpYy1yaWdodCxyYWRpdXMtYm90dG9tbGVmdCxyYWRpdXMtYm90dG9tcmlnaHQscmFkaXVzLXVwbGVmdCxyYWRpdXMtdXByaWdodCxmdWxsc2NyZWVuLGZ1bGxzY3JlZW4tZXhpdCxxdWVzdGlvbixxdWVzdGlvbi1jaXJjbGUscGx1cyxwbHVzLWNpcmNsZSxwYXVzZSxwYXVzZS1jaXJjbGUsbWludXMsbWludXMtY2lyY2xlLHBsdXMtc3F1YXJlLG1pbnVzLXNxdWFyZSxpbmZvLGluZm8tY2lyY2xlLGV4Y2xhbWF0aW9uLGV4Y2xhbWF0aW9uLWNpcmNsZSxjbG9zZSxjbG9zZS1jaXJjbGUsY2xvc2Utc3F1YXJlLGNoZWNrLGNoZWNrLWNpcmNsZSxjaGVjay1zcXVhcmUsY2xvY2stY2lyY2xlLHdhcm5pbmcsaXNzdWVzLWNsb3NlLHN0b3AsZWRpdCxmb3JtLGNvcHksc2Npc3NvcixkZWxldGUsc25pcHBldHMsZGlmZixoaWdobGlnaHQsYWxpZ24tY2VudGVyLGFsaWduLWxlZnQsYWxpZ24tcmlnaHQsYmctY29sb3JzLGJvbGQsaXRhbGljLHVuZGVybGluZSxzdHJpa2V0aHJvdWdoLHJlZG8sdW5kbyx6b29tLWluLHpvb20tb3V0LGZvbnQtY29sb3JzLGZvbnQtc2l6ZSxsaW5lLWhlaWdodCxkYXNoLHNtYWxsLWRhc2gsc29ydC1hc2NlbmRpbmcsc29ydC1kZXNjZW5kaW5nLGRyYWcsb3JkZXJlZC1saXN0LHVub3JkZXJlZC1saXN0LHJhZGl1cy1zZXR0aW5nLGNvbHVtbi13aWR0aCxjb2x1bW4taGVpZ2h0LGFyZWEtY2hhcnQscGllLWNoYXJ0LGJhci1jaGFydCxkb3QtY2hhcnQsbGluZS1jaGFydCxyYWRhci1jaGFydCxoZWF0LW1hcCxmYWxsLHJpc2Usc3RvY2ssYm94LXBsb3QsZnVuZCxzbGlkZXJzLGFuZHJvaWQsYXBwbGUsd2luZG93cyxpZSxjaHJvbWUsZ2l0aHViLGFsaXdhbmd3YW5nLGRpbmdkaW5nLHdlaWJvLXNxdWFyZSx3ZWliby1jaXJjbGUsdGFvYmFvLWNpcmNsZSxodG1sNSx3ZWlibyx0d2l0dGVyLHdlY2hhdCx5b3V0dWJlLGFsaXBheS1jaXJjbGUsdGFvYmFvLHNreXBlLHFxLG1lZGl1bS13b3JrbWFyayxnaXRsYWIsbWVkaXVtLGxpbmtlZGluLGdvb2dsZS1wbHVzLGRyb3Bib3gsZmFjZWJvb2ssY29kZXBlbixjb2RlLXNhbmRib3gsYW1hem9uLGdvb2dsZSxjb2RlcGVuLWNpcmNsZSxhbGlwYXksYW50LWRlc2lnbixhbnQtY2xvdWQsYWxpeXVuLHpoaWh1LHNsYWNrLHNsYWNrLXNxdWFyZSxiZWhhbmNlLGJlaGFuY2Utc3F1YXJlLGRyaWJiYmxlLGRyaWJiYmxlLXNxdWFyZSxpbnN0YWdyYW0seXVxdWUsYWxpYmFiYSx5YWhvbyxyZWRkaXQsc2tldGNoLGFsZXJ0LGFpbSxhY2NvdW50LWJvb2ssYXBhcnRtZW50LGFwaSxhcHBzdG9yZSxhdWRpby1tdXRlZCxhdWRpdCxiYW5rLGJhcmNvZGUsYmFycyxibG9jayxib29rLGJlbGwsYXBwc3RvcmUtYWRkLGF1ZGlvLGJvcmRlcixib3JkZXJsZXNzLXRhYmxlLGJ1ZyxicmFuY2hlcyxjYW1lcmEsY2FsY3VsYXRvcixjYWxlbmRhcixidWlsZCxjYXJyeS1vdXQsYnVsYixjYXIsY2xlYXIsY2ksY2xvdWQtZG93bmxvYWQsY2xvdWQsY2xvdWQtc3luYyxjbG91ZC1zZXJ2ZXIsY2xvdWQtdXBsb2FkLGNvZGUsY29mZmVlLGNvbXByZXNzLGNvbXBhc3MsY29tbWVudCxjaS1jaXJjbGUsY29udGFpbmVyLGNvbnRyb2wsY29weXJpZ2h0LGNyZWRpdC1jYXJkLGNsdXN0ZXIsY3VzdG9tZXItc2VydmljZSxjb250YWN0cyxjb25zb2xlLXNxbCxkYXNoYm9hcmQsZGF0YWJhc2UsY29weXJpZ2h0LWNpcmNsZSxkZWxldGUtY29sdW1uLGRlc2t0b3AsZGVwbG95bWVudC11bml0LGRlbGl2ZXJlZC1wcm9jZWR1cmUsZGlzY29ubmVjdCxkaW5ndGFsayxkb2xsYXItY2lyY2xlLGRpc2xpa2UsZGVsZXRlLXJvdyxkb2xsYXIsY3Jvd24sZG93bmxvYWQsZWxsaXBzaXMsZW52aXJvbm1lbnQsZXVyby1jaXJjbGUsZXhjZXB0aW9uLGV4cGFuZC1hbHQsZXVybyxleHBlcmltZW50LGV4cG9ydCxleHBhbmQsZXllLWludmlzaWJsZSxleWUsZmlsZS1hZGQsZmllbGQtc3RyaW5nLGZpbGUtZXhjbGFtYXRpb24sZmlsZS1kb25lLGZpZWxkLXRpbWUsZmlsZS1leGNlbCxmaWVsZC1iaW5hcnksZmlsZS1naWYsZmlsZS1pbWFnZSxmaWxlLGZpbGUtbWFya2Rvd24sZmlsZS1wcHQsZmlsZS1wZGYsZmllbGQtbnVtYmVyLGZpbGUtc2VhcmNoLGZpbGUtc3luYyxmaWxlLWpwZyxmaWxlLXRleHQsZmlsdGVyLGZpbGUtemlwLGZsYWcsZm9sZGVyLWFkZCxmaWxlLXVua25vd24sZm9sZGVyLW9wZW4sZmlyZSxmaWxlLXByb3RlY3QsZm9sZGVyLXZpZXcsZm9sZGVyLGZvcmssZm9ybWF0LXBhaW50ZXIsZnJvd24sZnVuZC1wcm9qZWN0aW9uLXNjcmVlbixnaWZ0LGdhdGV3YXksZnVuZC12aWV3LGdpZixmdW5uZWwtcGxvdCxnb2xkLGdsb2JhbCxncm91cCxoZGQsZnVuY3Rpb24saGlzdG9yeSxmaWxlLXdvcmQsaG9tZSxpZGNhcmQsaG91cmdsYXNzLGhlYXJ0LGluc2VydC1yb3ctYmVsb3csaW1wb3J0LGluc2VydC1yb3ctbGVmdCxpbnNlcnQtcm93LWFib3ZlLGluc2VydC1yb3ctcmlnaHQsa2V5LGluYm94LGluc3VyYW5jZSxsYXB0b3AsbGlrZSxsaW5lLGxpbmssbG9hZGluZy0zLXF1YXJ0ZXJzLGxvYWRpbmcsbG9jayxtYW4sbWFpbCxtYWMtY29tbWFuZCxtZWRpY2luZS1ib3gsbGF5b3V0LG1laCxpbnRlcmFjdGlvbixtZXNzYWdlLG1lbnUsbWVyZ2UtY2VsbHMsbW9iaWxlLG1vbmV5LWNvbGxlY3Qsbm9kZS1pbmRleCxtb25pdG9yLG5vZGUtZXhwYW5kLG1vcmUsbnVtYmVyLG5vdGlmaWNhdGlvbixvbmUtdG8tb25lLHBlcmNlbnRhZ2UscGhvbmUscGFwZXItY2xpcCxwYXJ0aXRpb24scGljdHVyZSxub2RlLWNvbGxhcHNlLHBsYXktc3F1YXJlLHBheS1jaXJjbGUscG91bmQscHJvZmlsZSxwcm9qZWN0LHByb3BlcnR5LXNhZmV0eSxwb3dlcm9mZixwdXNocGluLHFyY29kZSxwcmludGVyLHBvdW5kLWNpcmNsZSxwdWxsLXJlcXVlc3QscmVzdCxyZWFkLHJlbG9hZCxyZWNvbmNpbGlhdGlvbixyb2JvdCxyb2NrZXQscm90YXRlLXJpZ2h0LHNhZmV0eS1jZXJ0aWZpY2F0ZSxyZWQtZW52ZWxvcGUscm90YXRlLWxlZnQsc2F2ZSxzYWZldHksc2VhcmNoLHNlY3VyaXR5LXNjYW4sc2NhbixzZW5kLHNldHRpbmcsc2VsZWN0LHNoYWtlLHNob3BwaW5nLWNhcnQsc2lzdGVybm9kZSxzaG9wLHNob3BwaW5nLHNoYXJlLWFsdCxzY2hlZHVsZSxza2luLHNtaWxlLHNvbHV0aW9uLHNvdW5kLHNwbGl0LWNlbGxzLHN0YXIsc3Vibm9kZSx0YWdzLHRhYmxldCx0YWcsdGFibGUsc3dpdGNoZXIsc3luYyx0ZWFtLHRvb2wsdHJhZGVtYXJrLWNpcmNsZSx0aHVuZGVyYm9sdCx0by10b3AsdHJhbnNsYXRpb24sdHJhZGVtYXJrLHRyb3BoeSx1bmdyb3VwLHVubG9jayx1cGxvYWQsdHJhbnNhY3Rpb24sdXNlci1kZWxldGUsdXNiLHVzZXItYWRkLHVzZXJncm91cC1kZWxldGUsdmlkZW8tY2FtZXJhLWFkZCx2ZXJpZmllZCx1c2VyZ3JvdXAtYWRkLHVzZXIsdXNlci1zd2l0Y2gsdmlkZW8tY2FtZXJhLHdpZmksd2FsbGV0LHdoYXRzLWFwcCx3b21hbixhcHBzdG9yZScuc3BsaXQoJywnKVxyXG59XHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UganNvbiBleHRlbmRzIE9iamVjdCB7XHJcbiAgW2tleTogc3RyaW5nXTogYW55XHJcbn1cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTZXJ2ZXJQYWdpbmF0aW9uU3RhbmRhcmQge1xyXG4gIGN1cnJlbnRQYWdlOiBudW1iZXI7XHJcbiAgc2hvd0NvdW50OiBudW1iZXI7XHJcbiAgdG90YWxSZXN1bHQ6IG51bWJlcjtcclxuICB0b3RhbFBhZ2U/OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBIdHRwUmVzcG9uc2VEYXRhU3RhbmRhcmQge1xyXG4gIHN0YXRlOiBudW1iZXI7IC8vIOS4ujHmiY3mmK/miJDlip9cclxuICBkYXRhOiBqc29uIHwgW3t9XSB8IG9iamVjdCB8IHN0cmluZyB8IGFueTsgLy/msqHmnInlgLwgZGF0YTogJydcclxuICBtZXNzOiBzdHJpbmc7IC8v6L+U5Zue55qE5raI5oGvXHJcbiAgcGFnZT86IFNlcnZlclBhZ2luYXRpb25TdGFuZGFyZDtcclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBIdHRwUnNlcG9uc2VUcmFuc2Zvcm1DZWxsIHtcclxuICBba2V5OiBzdHJpbmddOiBqc29uXHJcbn1cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBIdHRwT3B0aW9ucyB7XHJcbiAgaGVhZGVycz86IHt9LFxyXG4gIGlzSnNvbkVuY29kZT86IGJvb2xlYW5cclxuICBpc1VybEVuY29kZT86IGJvb2xlYW5cclxuICBpc0F1dG9TaG93TWVzc2FnZT86IGJvb2xlYW5cclxuICBpc1dpdGhDcmVkZW50aWFscz86IGJvb2xlYW5cclxuICBpc0NvbW1vbkh0dHBIZWFkZXI/OiBib29sZWFuXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIFVzZXJBY3Rpb24ge1xyXG4gIEFERCxcclxuICBFRElULFxyXG4gIERFTCxcclxuICBRVUVSWSxcclxuICBTVVBQRVJBRERcclxufVxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRUNoYXJ0c09wdGlvbiB7XHJcbiAgdGl0bGU/OiBhbnksXHJcbiAgbGVnZW5kPzogYW55LFxyXG4gIGdyaWQ/OiBhbnksXHJcbiAgYnJ1c2g/OiBhbnksXHJcbiAgdG9vbGJveD86IGFueSxcclxuICB0b29sdGlwPzogYW55LFxyXG4gIGRhdGFzZXQ/OiBhbnksXHJcbiAgeEF4aXM/OiB7XHJcbiAgICB0eXBlPzogJ2NhdGVnb3J5JyxcclxuICAgIGRhdGE/OiBzdHJpbmdbXSxcclxuICAgIGJvdW5kYXJ5R2FwPzpib29sZWFuLFxyXG4gICAgc2hvdz86IGJvb2xlYW4sXHJcbiAgfSxcclxuICB5QXhpcz86IGFueSwvL3sgICAgc2hvdzpmYWxzZSwgICAgdHlwZTogJ3ZhbHVlJywgICAgbWluSW50ZXJ2YWw6IDEsfVtdXHJcbiAgc2VyaWVzPzoge1xyXG4gICAgbmFtZT86IHN0cmluZyxcclxuICAgIGRhdGE/OiBhbnlbXSxcclxuICAgIGl0ZW1TdHlsZT86IGFueSxcclxuICAgIHN0YWNrPzogYW55LFxyXG4gICAgZW1waGFzaXM/OiBhbnksXHJcbiAgICBsYWJlbD86IGFueSxcclxuICAgIHJhZGl1cz86IGFueVtdLFxyXG4gICAgc21vb3RoPzpib29sZWFuLFxyXG4gICAgc2VyaWVzTGF5b3V0Qnk/OnN0cmluZyxcclxuICAgIHR5cGU/OiAnYmFyJyB8ICdwaWUnIHwgJ2xpbmUnLFxyXG4gICAgYmFja2dyb3VuZFN0eWxlPzogYW55XHJcbiAgfVtdXHJcbn1cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEF0ckZvcm1PcHQge1xyXG4gIHR5cGU6ICdhZGQnIHwgJ2VkaXQnIHwgJ3ZpZXcnLFxyXG4gIGxheW91dD86IFwiZnVsbFwiIHwgJzFsMmMnIHwgJzFsMWMnLFxyXG4gIGl0ZW1zOiBBdHJGb3JtRGV0YWlsW10sLy/ooajljZXpobnnm65cclxufVxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEF0ckZvcm1EZXRhaWwge1xyXG4gIGxhYmVsOiBzdHJpbmcsXHJcbiAgdHlwZTogJ2Nhc2NhZGVyJyB8ICdyYWRpbycgfCAndGV4dCcgfCAnaW1hZ2UnIHwgJ3NlbGVjdCcgfCAnZGF0ZScgfCAnbnVtYmVyJyB8ICd0ZWxwaG9uZScgfCAncGFzc3dvcmQnIHwgJ2NoZWNrYm94J1xyXG4gICAgfCAnZWRpdG9yJyB8ICd0ZXh0YXJlYScgfCAnZGF0ZVRpbWUnIHwgJ3RpdGxlJyB8ICdkYXRlUmFuZ2UnIHwgJ3NlbGVjdGMnIHwgJ3NlbGVjdEljb24nIHwgJ3RyZWVTZWxlY3QnIHwgJ3N3aXRjaCcsXHJcbiAga2V5OiBzdHJpbmcsXHJcbiAgaXNIaWRkZW4/OiBib29sZWFuLFxyXG4gIGRlZmF1bHRWYWx1ZT86IGFueSxcclxuICB2YWx1ZT86IGFueSwvL+e8lui+keS4i+WOn+Wni+aVsOWAvFxyXG4gIGRpY3RDb2RlPzogc3RyaW5nLC8vc2VsZWN0IOaooeW8j+S4i+mFjee9rlxyXG4gIHNwYW4/OiBudW1iZXIsLy/mmL7npLrlrr3luqZcclxuICB2YWxpZGF0b3JzPzogQXRyRm9ybVZhbGlkW10sLy/pqozor4HmnaHku7ZcclxuICBpc1JlcXVpcmVkPzogYm9vbGVhbiB8IHN0cmluZywvL+makOaAp+adoeS7tiDml6DpnIDloavlhpksIHN0cmluZ+exu+Wei+agvOW8j+WQjG9wZXJhdG9yXHJcbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmcsXHJcbiAgaW1hZ2VPcHRzPzogSW1hZ2VPcHRzLFxyXG4gIGVkaXRDb250ZW50Pzogc3RyaW5nLFxyXG4gIGhlaWdodD86IG51bWJlciwvL2VkaXRvcuacieaViFxyXG4gIGRpc2FibGU/OiBib29sZWFuLFxyXG4gIGxzcGFuPzogbnVtYmVyLFxyXG4gIGNzcGFuPzogbnVtYmVyLFxyXG4gIHJvd3M/OiBudW1iZXIsLy90ZXh0YXJlYSDmmL7npLrooYzmlbBcclxuICBvcGVyYXRvcj86IHN0cmluZywvL+aYvuekuuaTjeS9nOespiDmoLzlvI8g5aaCOnN0YXR1c3xlcXwwXHJcbiAgYnV0dG9uPzogZm9ybUJ1dHRvbixcclxuICByZWFkb25seT86IGJvb2xlYW4sXHJcbiAgZGF0ZUZvcm1hdD86IHN0cmluZyxcclxuICBkaWN0TGlzdD86IEN1c0RpY3RbXSxcclxuICBzZWxlY3RVcmw/OiB7IHVybDogc3RyaW5nLCBjb252ZXJ0Pzogc3RyaW5nLCB0eXBlPzogJ2dldCcgfCAncG9zdCcsIGhvc3Q/OiAnb3NzJyB8ICdzZXJ2ZScsIGlzTXVsdGlwbGU/OiBib29sZWFuIH0sXHJcbiAgdHJlZUxpc3Q/OiB7IGtleTogc3RyaW5nLCB0aXRsZTogc3RyaW5nIH1bXSxcclxuICBlbmRzPzogc3RyaW5nLFxyXG4gIHByb3Bvc2FsPzogc3RyaW5nLFxyXG4gIHRlbXA/OiBhbnksXHJcbiAgbm90TnVsbD86IGJvb2xlYW5cclxuXHJcbn1cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBdHJGb3JtVmFsaWQge1xyXG4gIHR5cGU6ICdyZXF1aXJlZCcgfCAnZW1haWwnIHwgJ3RlbHBob25lJyB8ICdtYXhsZW5ndGgnIHwgJ21pbmxlbmd0aCcgfCAncGF0dGVybicgfCAnb3BlcmF0b3InLFxyXG4gIGVycm9yTGFiZWw6IHN0cmluZyxcclxuICBtYXhsZW5ndGg/OiBudW1iZXIsXHJcbiAgbWlubGVuZ3RoPzogbnVtYmVyLFxyXG4gIHBhdHRlcm5WYWx1ZT86IHN0cmluZ1xyXG59XHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgZm9ybUJ1dHRvbiB7XHJcbiAgbmFtZTogc3RyaW5nLFxyXG4gIGlzU2hvdzogYm9vbGVhbixcclxuICBjb2RlOiBzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIGNvbG9yT3BlcmF0b3Ige1xyXG4gIGNvbG9yOiBzdHJpbmcsXHJcbiAgb3BlcmF0b3I6IHN0cmluZywvL+inhOWImVxyXG59XHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQXRyUXVleXJPcHQge1xyXG4gIGFjdGlvbnM/OiBUYWJsZUFjdGlvbltdLFxyXG4gIGlzSW5kZXg/OiBib29sZWFuLC8v5piv5ZCm5pi+56S65bqP5Y+3LFxyXG4gIGNvbG9yPzogY29sb3JPcGVyYXRvciwvL+minOiJslxyXG4gIGNoZWNrQm94Pzoge1xyXG4gICAgaXNTaG93Q2hlY2tib3g/OiBib29sZWFuLFxyXG4gICAgaXNSYWRpbz86IGJvb2xlYW4sXHJcbiAgICBpc0ZvcmJpZD86IGJvb2xlYW4sLy90cnVl5pe25Y+q5YWB6K6454K55Ye75aSa6YCJ5qGG6YCJ5oupXHJcbiAgfSxcclxuICAvLyBpc1Nob3dDaGVja2JveD86IGJvb2xlYW4sXHJcbiAgc2hvd051bT86IG51bWJlcixcclxuICB1cmw6IHN0cmluZyxcclxuICBzb3J0Pzogc3RyaW5nLFxyXG4gIGhlYWRlcnM/OiBBdHJRdWVyeUhlYWRlcltdLFxyXG4gIHRhYmxlczogVGFibGVbXSxcclxuICBpc0F1dG9RdWVyeT86IGJvb2xlYW4sLy90cnVl5pe25YCZ6buY6K6k6Kem5Y+R5p+l6K+iXHJcbiAgZGVmYXVsdFBhcmFtcz86IGpzb24sXHJcbiAgaXNIaWRlUXVlcnk/OiBib29sZWFuXHJcbiAgLy8gaXNSYWRpbz86Ym9vbGVhbixcclxuICAvLyBpc0ZvcmJpZD86Ym9vbGVhbiwvL3RydWXml7blj6rlhYHorrjngrnlh7vlpJrpgInmoYbpgInmi6lcclxufVxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRhYmxlIHtcclxuICBuYW1lOiBzdHJpbmcsLy/ooajlpLTlkI3np7BcclxuICBrZXk/OiBzdHJpbmcsLy/lrp7pmYXmlbDmja7lrZfmrrVcclxuICBkZWZhdWx0VmFsPzogYW55LFxyXG4gIHNvcnRLZXk/OiBzdHJpbmcsLy/mmK/lkKbmjpLluo9cclxuICBzb3J0YWJsZT86IGJvb2xlYW4sXHJcbiAgdHlwZTogJ3RleHRjb2xvcicgfCAnZml4ZWRUZXh0JyB8ICd0ZXh0JyB8ICdsaW5rJyB8ICdhY3Rpb24nIHwgJ2ltYWdlJyB8ICdkYXRlJyB8ICdkYXRlVGltZScgfCAnc0RhdGVUaW1lJyB8ICdkaWN0JywvL+exu+Wei++8miDmloflrZfjgIHpk77mjqXjgIHmk43kvZxcclxuICBkaWN0Q29kZT86IHN0cmluZyxcclxuICBpc1Nob3c/OiBib29sZWFuLFxyXG4gIHdpZHRoPzogc3RyaW5nLC8vMTUwcHhcclxuICBhY3Rpb25zPzogVGFibGVBY3Rpb25bXSxcclxuICBpc1Jvd1NwYW4/OiBib29sZWFuLFxyXG4gIGlzUmlnaHQ/OiBib29sZWFuXHJcbiAgaXNMZWZ0PzogYm9vbGVhbixcclxuICBjb2xvcj86IGNvbG9yT3BlcmF0b3IsLy/popzoibJcclxuICBjb2xvclNob3c/OiBzdHJpbmcsXHJcbn1cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBdHJRdWVyeUhlYWRlciB7XHJcbiAgbmFtZTogc3RyaW5nLFxyXG4gIHR5cGU6ICdjYXNjYWRlcicgfCAndGV4dCcgfCAnbnVtYmVyJyB8ICdjaGVja2JveCcgfCAnc2VsZWN0JyB8ICdkYXRlcGlja2VyJyB8ICdzZWxlY3RDdXMnIHwgJ2RhdGVSYW5nZScgfCAnc2RhdGUnIHwgJ3RyZWVTZWxlY3QnLFxyXG4gIGtleTogc3RyaW5nLFxyXG4gIGlzU2hvdz86IGJvb2xlYW4sXHJcbiAgY29kZT86IHN0cmluZyxcclxuICBwbGFjZWhvbGRlcj86IHN0cmluZyxcclxuICBzcGFuPzogbnVtYmVyLFxyXG4gIGRpY3RDb2RlPzogc3RyaW5nLC8v5a2X5YW457yW56CBXHJcbiAgZGljdExpc3Q/OiBDdXNEaWN0W10sXHJcbiAgZGVmYXVsdFZhbD86IGFueSAvLyDpu5jorqTlgLxcclxuICBtYXhUYWdDb3VudD86IG51bWJlcixcclxuICBsc3Bhbj86IG51bWJlcixcclxuICBjc3Bhbj86IG51bWJlcixcclxuICBkaXNhYmxlQ2xlYXI/OiBib29sZWFuLFxyXG4gIHRyZWVMaXN0PzogeyBrZXk6IHN0cmluZywgdGl0bGU6IHN0cmluZyB9W11cclxuICAvKipcclxuICAgKiDmoLzlvI9cclxuICAgKiBjb252ZXJ0OidrZXl8aWQsdGl0bGV8cmVhbE5hbWUnKHRyZWVTZWxlY3QpXHJcbiAgICogICAgdmFsdWV8aWQsbGFiZWx8bmFtZShzZWxlY3RDdXMpXHJcbiAgICovXHJcbiAgc2VsZWN0VXJsPzogeyB1cmw6IHN0cmluZywgY29udmVydDogc3RyaW5nLCBpc011bHRpcGxlPzogYm9vbGVhbiB9LC8vY29udmVydDogbmV3S2V5fG9sZEtleSxuZXdLZXl8b2xkS2V5KOaOpeWPo+i/lOWbnueahOWAvClcclxuICBpY29uPzogeyBpc1Nob3c6IGJvb2xlYW4sIGNvZGU6IHN0cmluZywgaWNvbjogYW55IH0sXHJcbiAgZGF0ZU1vZGU/OiAnd2VlaycgfCAnbW9udGgnIHwgJ3llYXInLFxyXG59XHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgVGFibGVBY3Rpb24ge1xyXG4gIG5hbWU6IHN0cmluZyxcclxuICBjb2RlOiBzdHJpbmcsXHJcbiAgdXJsPzogc3RyaW5nLFxyXG4gIGdUeXBlPzogJ25vcm1hbCcgfCAndXBsb2FkJyxcclxuICBkYXRhPzogYW55LFxyXG4gIGZpcnN0RGF0YT86IGFueSxcclxuICBkYXRhcz86IGFueVtdLFxyXG4gIGljb24/OiBzdHJpbmcsXHJcbiAgbnVtYmVyT2ZDaGVja2VkPzogbnVtYmVyLFxyXG4gIHR5cGU/OiAncm93cycgfCAncm93JyxcclxuICBvcGVyYXRvcj86IHN0cmluZywvL+aYvuekuuaTjeS9nOesplxyXG4gIGJ1dHRvblR5cGU/OiAncHJpbWFyeScgfCAnZGFzaGVkJyB8ICdkYW5nZXInIHwgJ2RlZmF1bHQnIHwgJ2xpbmsnLFxyXG4gIHZhbHVlPzogYW55LFxyXG4gIHdpdGhvdXRSb2xlPzogYm9vbGVhbi8v5LiN6ZyA6KaB5p2D6ZmQ5o6n5Yi2XHJcbn1cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBGb3JtQWN0aW9uIHtcclxuICBuYW1lOiBzdHJpbmcsXHJcbiAgY29kZTogc3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBEaWN0IHtcclxuICBpZDogc3RyaW5nLFxyXG4gIHR5cGVOYW1lOiBzdHJpbmcsXHJcblxyXG59XHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRGljdEdyb3VwIHtcclxuICBncm91cENvZGU6IHN0cmluZyxcclxuICBkaWN0czogRGljdFtdXHJcbn1cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBDdXNEaWN0IHtcclxuICBsYWJlbDogc3RyaW5nLFxyXG4gIHZhbHVlOiBzdHJpbmcsXHJcbn1cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJbWFnZU9wdHMge1xyXG4gIGxpbWl0PzogbnVtYmVyLFxyXG4gIHVwbG9hZERpcjogc3RyaW5nLFxyXG4gIHJlbW92ZUFjdGlvbj86IHN0cmluZyxcclxuICBpbWFnZUxpc3Q/OiBhbnlbXSxcclxuICBrZXk/OiBzdHJpbmcsXHJcbiAgbGFiZT86IHN0cmluZyxcclxuICBmaWxlTmFtZT86IHN0cmluZyxcclxuICB1cGxvYWRUeXBlPzogJ2RyYWcnIHwgJycsXHJcbiAgbnpGaWxlVHlwZT86IHN0cmluZ1xyXG59XHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgZXF1aXBUZXN0RGF0YSB7XHJcbiAgY29kZTogc3RyaW5nXHJcbiAgaXRlbU5hbWU6IHN0cmluZ1xyXG4gIHpob3UxOiBudW1iZXJcclxuICB6aG91MjogbnVtYmVyXHJcbiAgemhvdTM6IG51bWJlclxyXG4gIHpob3U0OiBudW1iZXJcclxuICB6aG91NTogbnVtYmVyXHJcbiAgemhvdTY6IG51bWJlclxyXG4gIGlzV3JvbmcxPzogYm9vbGVhblxyXG4gIGlzV3JvbmcyPzogYm9vbGVhblxyXG4gIGlzV3JvbmczPzogYm9vbGVhblxyXG4gIGlzV3Jvbmc0PzogYm9vbGVhblxyXG4gIGlzV3Jvbmc1PzogYm9vbGVhblxyXG4gIGlzV3Jvbmc2PzogYm9vbGVhblxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNlbGVjdEFjdGlvbiB7XHJcbiAgbmFtZTogc3RyaW5nLFxyXG4gIGNvZGU6IFwibmdNb2RlbENoYW5nZVwiIHwgJ256T3BlbkNoYW5nZScsXHJcbiAgZGF0YT86IGFueSxcclxuICBrZXk/OiBzdHJpbmcsXHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBNZW51SWNvbiB7XHJcbiAgLyoqIFR5cGUgZm9yIGljb24gKi9cclxuICB0eXBlOiAnY2xhc3MnIHwgJ2ljb24nIHwgJ2ljb25mb250JyB8ICdpbWcnO1xyXG4gIC8qKiBWYWx1ZSBmb3IgdGhlIGljb24sIGNhbiBiZSBzZXQgQ2xhc3MgTmFtZSwgbnotaWNvbiBvZiBgbnpUeXBlYCwgaW1hZ2UgKi9cclxuICB2YWx1ZT86IHN0cmluZztcclxuICAvKiogVHlwZSBvZiB0aGUgYW50IGRlc2lnbiBpY29uLCBkZWZhdWx0OiBgb3V0bGluZWAgKi9cclxuICB0aGVtZT86ICdvdXRsaW5lJyB8ICd0d290b25lJyB8ICdmaWxsJztcclxuICAvKiogUm90YXRlIGljb24gd2l0aCBhbmltYXRpb24sIGRlZmF1bHQ6IGBmYWxzZWAgKi9cclxuICBzcGluPzogYm9vbGVhbjtcclxuICAvKiogT25seSBzdXBwb3J0IHRoZSB0d28tdG9uZSBpY29uLiBTcGVjaWZpYyB0aGUgcHJpbWFyeSBjb2xvciAqL1xyXG4gIHR3b1RvbmVDb2xvcj86IHN0cmluZztcclxuICAvKiogVHlwZSBvZiB0aGUgaWNvbiBmcm9tIGljb25mb250ICovXHJcbiAgaWNvbmZvbnQ/OiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTWVudSB7XHJcbiAgdGV4dD86IHN0cmluZztcclxuICBsaW5rPzogc3RyaW5nO1xyXG4gIHJlYWxMaW5rPzpzdHJpbmc7XHJcbiAgaXNTZWxlY3RlZD86IEJvb2xlYW47XHJcbiAgaXNPcGVuPzogQm9vbGVhbjtcclxuICB0YXJnZXQ/OiAnX2JsYW5rJyB8ICdfc2VsZicgfCAnX3BhcmVudCcgfCAnX3RvcCc7XHJcbiAgLyoqIEljb24gZm9yIHRoZSBtZW51IGl0ZW0sIG9ubHkgdmFsaWQgZm9yIHRoZSBmaXJzdCBsZXZlbCBtZW51ICovXHJcbiAgaWNvbj86IHN0cmluZyB8IE1lbnVJY29uIHwgbnVsbDtcclxuICAvKiogQmFkZ2V0IGZvciB0aGUgbWVudSBpdGVtIHdoZW4gYGdyb3VwYCBpcyBgdHJ1ZWAgKi9cclxuICBvcGVyYXRpb24/OiBzdHJpbmc7XHJcbiAgLyoqIFdoZXRoZXIgc2hvcnRjdXQgbWVudSBpdGVtICovXHJcbiAgc2VxPzogbnVtYmVyO1xyXG4gIGxldmVsPzogbnVtYmVyO1xyXG4gIC8qKiBXaGV0ZXIgc2hvcnRjdXQgbWVudSByb290IG5vZGUgKi9cclxuICBsaW5rVHlwZT86IHN0cmluZztcclxuICAvKiogV2hldGhlciB0byBhbGxvdyByZXVzZSwgbmVlZCB0byBjb29wZXJhdGUgd2l0aCB0aGUgYHJldXNlLXRhYmAgY29tcG9uZW50ICovXHJcbiAgY2hpbGRyZW4/OiBNZW51W107XHJcbiAgaXNWaXNpYmxlPzonMCcgfCcxJ1xyXG59XHJcbiJdfQ==
@@ -86,11 +86,7 @@ export class HttpService {
86
86
  }
87
87
  // console.log(options)
88
88
  // console.log(_headers)
89
- this.httpClient.get(url, {
90
- headers: _headers,
91
- params: params,
92
- withCredentials: withCredentials
93
- }).subscribe(result => {
89
+ this.httpClient.get(url, { headers: _headers, params: params, withCredentials: withCredentials }).subscribe(result => {
94
90
  observe.next(result);
95
91
  observe.unsubscribe();
96
92
  }, error => {
@@ -288,4 +284,4 @@ HttpService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version:
288
284
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: HttpService, decorators: [{
289
285
  type: Injectable
290
286
  }], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
291
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvY29yZS9zZXJ2aWNlcy9odHRwLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQWEsV0FBVyxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RixPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ2hDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBYyxNQUFNLG9CQUFvQixDQUFDO0FBQ2pFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBRzVELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQzs7O0FBRzdDLE1BQU0sT0FBTyxXQUFXO0lBRXRCLFlBQ1UsVUFBc0I7UUFBdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQVdoQzs7OztXQUlHO1FBQ0gsU0FBSSxHQUFHLENBQUMsR0FBVyxFQUFFLE1BQVksRUFBRSxPQUFxQixFQUFFLE9BQXFCLEVBQW1CLEVBQUU7WUFFbEcsT0FBTyxJQUFJLFVBQVUsQ0FBTSxPQUFPLENBQUMsRUFBRTtnQkFDbkMsc0JBQXNCO2dCQUN0QixJQUFJLFFBQVEsR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDO2dCQUNqQyxJQUFJLE9BQU8sSUFBSSxPQUFPLENBQUMsY0FBYyxDQUFDLG9CQUFvQixDQUFDLEVBQUU7b0JBQzNELFFBQVEsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUM7aUJBQzVDO2dCQUNELFFBQVEsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUMxQyxJQUFJLE9BQU8sRUFBRTtvQkFDWCxRQUFRLEdBQUcsT0FBTyxDQUFD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R0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxVQUFVLENBQUMsQ0FBQztZQUMzQyxTQUFTLENBQUMsV0FBVyxDQUFDLGdCQUFnQixDQUFDLFVBQVUsR0FBRyxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDbkUsQ0FBQyxFQUNELEtBQUssQ0FBQyxFQUFFO1FBQ1IsQ0FBQyxDQUFDLENBQUE7SUFDTixDQUFDOzt5R0E5U1UsV0FBVzs2R0FBWCxXQUFXOzRGQUFYLFdBQVc7a0JBRHZCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0h0dHBDbGllbnQsIEh0dHBSZXF1ZXN0LCBIdHRwRXZlbnRUeXBlLCBIdHRwSGVhZGVyc30gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XHJcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7YXRyX3N0YXRpY19kYXRhcywgSHR0cE9wdGlvbnN9IGZyb20gJy4uL2Jhc2UvYXRyLWNvbW1vbic7XHJcbmltcG9ydCB7TG9jYWxTdG9yYWdlVXRpbH0gZnJvbSAnLi4vdXRpbHMvbG9jYWxzdG9yYWdlLnV0aWwnO1xyXG5pbXBvcnQge01kNX0gZnJvbSBcInRzLW1kNVwiO1xyXG5pbXBvcnQge2Vudmlyb25tZW50fSBmcm9tIFwibmctem9ycm8tYW50ZC9jb3JlL2Vudmlyb25tZW50c1wiO1xyXG5pbXBvcnQge1Rvb2xzVXRpbH0gZnJvbSBcIi4uL3V0aWxzL1Rvb2xzVXRpbFwiO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgSHR0cFNlcnZpY2Uge1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgaHR0cENsaWVudDogSHR0cENsaWVudFxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgZ2V0Tm9ybWFsSGVhZGVyKF9oZWFkZXJzOiBIdHRwSGVhZGVycyk6IEh0dHBIZWFkZXJzIHtcclxuICAgIGlmICghYXRyX3N0YXRpY19kYXRhcy5uZWVkTm9ybWFsSGVhZGUpIHtcclxuICAgICAgcmV0dXJuIF9oZWFkZXJzO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGF0cl9zdGF0aWNfZGF0YXMuZ2V0Tm9ybWFsSGVhZGVyKF9oZWFkZXJzKVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICpcclxuICAgKiBAcGFyYW0gdXJsXHJcbiAgICogQHBhcmFtIHBhcmFtc1xyXG4gICAqL1xyXG4gIHBvc3QgPSAodXJsOiBzdHJpbmcsIHBhcmFtcz86IGFueSwgb3B0aW9ucz86IEh0dHBPcHRpb25zLCBoZWFkZXJzPzogSHR0cEhlYWRlcnMpOiBPYnNlcnZhYmxlPGFueT4gPT4ge1xyXG5cclxuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTxhbnk+KG9ic2VydmUgPT4ge1xyXG4gICAgICAvLyBjb25zb2xlLmxvZyhcImFhYVwiKTtcclxuICAgICAgbGV0IF9oZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCk7XHJcbiAgICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMuaGFzT3duUHJvcGVydHkoJ2lzQ29tbW9uSHR0cEhlYWRlcicpKSB7XHJcbiAgICAgICAgX2hlYWRlcnMgPSB0aGlzLmdldERlZmF1bHRIZWFkZXIoX2hlYWRlcnMpO1xyXG4gICAgICB9XHJcbiAgICAgIF9oZWFkZXJzID0gdGhpcy5nZXROb3JtYWxIZWFkZXIoX2hlYWRlcnMpO1xyXG4gICAgICBpZiAoaGVhZGVycykge1xyXG4gICAgICAgIF9oZWFkZXJzID0gaGVhZGVycztcclxuICAgICAgfVxyXG4gICAgICBsZXQgd2l0aENyZWRlbnRpYWxzOiBhbnkgPSB0cnVlXHJcbiAgICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMuaGFzT3duUHJvcGVydHkoJ2lzV2l0aENyZWRlbnRpYWxzJykpIHtcclxuICAgICAgICB3aXRoQ3JlZGVudGlhbHMgPSBvcHRpb25zLmlzV2l0aENyZWRlbnRpYWxzXHJcbiAgICAgIH1cclxuICAgICAgLy8gY29uc29sZS5sb2coX2hlYWRlcnMpO1xyXG4gICAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyhwYXJhbXMpKSB7XHJcbiAgICAgICAgaWYgKHBhcmFtcy5oYXNPd25Qcm9wZXJ0eShrZXkpICYmIHR5cGVvZiBwYXJhbXNba2V5XSA9PT0gJ29iamVjdCcpIHtcclxuICAgICAgICAgIHBhcmFtc1trZXldID0gSlNPTi5zdHJpbmdpZnkocGFyYW1zW2tleV0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5odHRwQ2xpZW50LnBvc3QodXJsLCBudWxsLCB7aGVhZGVyczogX2hlYWRlcnMsIHBhcmFtczogcGFyYW1zLCB3aXRoQ3JlZGVudGlhbHM6IHdpdGhDcmVkZW50aWFsc30pXHJcbiAgICAgICAgLnN1YnNjcmliZShyZXN1bHQgPT4ge1xyXG4gICAgICAgICAgb2JzZXJ2ZS5uZXh0KHJlc3VsdCk7XHJcbiAgICAgICAgICBvYnNlcnZlLnVuc3Vic2NyaWJlKClcclxuICAgICAgICB9LCBlcnJvciA9PiB7XHJcbiAgICAgICAgICBvYnNlcnZlLmVycm9yKGVycm9yKVxyXG4gICAgICAgICAgb2JzZXJ2ZS51bnN1YnNjcmliZSgpXHJcbiAgICAgICAgfSlcclxuXHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgcG9zdFByb21BbGwodXJsczogeyB1cmw6IHN0cmluZywgcGFyYW1zPzoge30sIH1bXSwgb3B0aW9ucz86IEh0dHBPcHRpb25zLCBoZWFkZXJzPzogSHR0cEhlYWRlcnMpIHtcclxuICAgIGxldCBwYXJhbTogYW55W10gPSBbXTtcclxuICAgIHVybHMuZm9yRWFjaChpdGVtID0+IHtcclxuICAgICAgcGFyYW0ucHVzaCh0aGlzLnBvc3RQcm9tKGl0ZW0udXJsLCBpdGVtLnBhcmFtcywgb3B0aW9ucywgaGVhZGVycykpO1xyXG4gICAgfSlcclxuXHJcblxyXG4gICAgcmV0dXJuIFByb21pc2UuYWxsKHBhcmFtKVxyXG4gIH1cclxuXHJcbiAgcG9zdFByb20odXJsOiBzdHJpbmcsIHBhcmFtcz86IGFueSwgb3B0aW9ucz86IEh0dHBPcHRpb25zLCBoZWFkZXJzPzogSHR0cEhlYWRlcnMpIHtcclxuXHJcbiAgICAvLyAvL2NvbnNvbGUubG9nKFwiYWFhXCIpO1xyXG4gICAgbGV0IF9oZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCk7XHJcbiAgICBpZiAob3B0aW9ucyAmJiBvcHRpb25zLmhhc093blByb3BlcnR5KCdpc0NvbW1vbkh0dHBIZWFkZXInKSkge1xyXG4gICAgICBfaGVhZGVycyA9IHRoaXMuZ2V0RGVmYXVsdEhlYWRlcihfaGVhZGVycyk7XHJcbiAgICB9XHJcbiAgICBfaGVhZGVycyA9IHRoaXMuZ2V0Tm9ybWFsSGVhZGVyKF9oZWFkZXJzKTtcclxuICAgIGlmIChoZWFkZXJzKSB7XHJcbiAgICAgIF9oZWFkZXJzID0gaGVhZGVycztcclxuICAgIH1cclxuICAgIGxldCB3aXRoQ3JlZGVudGlhbHM6IGFueSA9IHRydWVcclxuICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMuaGFzT3duUHJvcGVydHkoJ2lzV2l0aENyZWRlbnRpYWxzJykpIHtcclxuICAgICAgd2l0aENyZWRlbnRpYWxzID0gb3B0aW9ucy5pc1dpdGhDcmVkZW50aWFsc1xyXG4gICAgfVxyXG4gICAgbGV0IHBvc3RQYXJhbXM6IGFueSA9IHt9O1xyXG5cclxuICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKHBhcmFtcykpIHtcclxuICAgICAgaWYgKHBhcmFtc1trZXldICE9PSBudWxsICYmIHBhcmFtc1trZXldICE9PSAnJyAmJiBwYXJhbXNba2V5XSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgaWYgKHBhcmFtcy5oYXNPd25Qcm9wZXJ0eShrZXkpICYmIHR5cGVvZiBwYXJhbXNba2V5XSA9PT0gJ29iamVjdCcpIHtcclxuICAgICAgICAgIHBvc3RQYXJhbXNba2V5XSA9IEpTT04uc3RyaW5naWZ5KHBhcmFtc1trZXldKVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBwb3N0UGFyYW1zW2tleV0gPSBwYXJhbXNba2V5XTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KHVybCwgbnVsbCwge1xyXG4gICAgICBoZWFkZXJzOiBfaGVhZGVycyxcclxuICAgICAgcGFyYW1zOiBwb3N0UGFyYW1zLFxyXG4gICAgICB3aXRoQ3JlZGVudGlhbHM6IHdpdGhDcmVkZW50aWFsc1xyXG4gICAgfSlcclxuICAgICAgLnRvUHJvbWlzZSgpO1xyXG5cclxuICB9XHJcblxyXG4gIHBvc3RCb2R5ID0gKHVybDogc3RyaW5nLCBwYXJhbXM/OiBhbnksIG9wdGlvbnM/OiBIdHRwT3B0aW9ucywgaGVhZGVycz86IHt9KTogT2JzZXJ2YWJsZTxhbnk+ID0+IHtcclxuXHJcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGU8YW55PihvYnNlcnZlID0+IHtcclxuICAgICAgLy8gY29uc29sZS5sb2coXCJhYWFcIik7XHJcbiAgICAgIGxldCBfaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpO1xyXG4gICAgICBpZiAob3B0aW9ucyAmJiBvcHRpb25zLmhhc093blByb3BlcnR5KCdpc0NvbW1vbkh0dHBIZWFkZXInKSkge1xyXG4gICAgICAgIF9oZWFkZXJzID0gdGhpcy5nZXREZWZhdWx0SGVhZGVyKF9oZWFkZXJzKTtcclxuICAgICAgfVxyXG4gICAgICBfaGVhZGVycyA9IHRoaXMuZ2V0Tm9ybWFsSGVhZGVyKF9oZWFkZXJzKTtcclxuICAgICAgbGV0IHdpdGhDcmVkZW50aWFsczogYW55ID0gdHJ1ZVxyXG4gICAgICBpZiAob3B0aW9ucyAmJiBvcHRpb25zLmhhc093blByb3BlcnR5KCdpc1dpdGhDcmVkZW50aWFscycpKSB7XHJcbiAgICAgICAgd2l0aENyZWRlbnRpYWxzID0gb3B0aW9ucy5pc1dpdGhDcmVkZW50aWFsc1xyXG4gICAgICB9XHJcbiAgICAgIC8vIGNvbnNvbGUubG9nKF9oZWFkZXJzKTtcclxuICAgICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMocGFyYW1zKSkge1xyXG4gICAgICAgIGlmIChwYXJhbXMuaGFzT3duUHJvcGVydHkoa2V5KSAmJiB0eXBlb2YgcGFyYW1zW2tleV0gPT09ICdvYmplY3QnKSB7XHJcbiAgICAgICAgICBwYXJhbXNba2V5XSA9IEpTT04uc3RyaW5naWZ5KHBhcmFtc1trZXldKVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5odHRwQ2xpZW50LnBvc3QodXJsLCBwYXJhbXMsIHtoZWFkZXJzOiBfaGVhZGVycywgcGFyYW1zOiB7fSwgd2l0aENyZWRlbnRpYWxzOiB3aXRoQ3JlZGVudGlhbHN9KVxyXG4gICAgICAgIC5zdWJzY3JpYmUocmVzdWx0ID0+IHtcclxuICAgICAgICAgIG9ic2VydmUubmV4dChyZXN1bHQpO1xyXG4gICAgICAgICAgb2JzZXJ2ZS51bnN1YnNjcmliZSgpXHJcbiAgICAgICAgfSwgZXJyb3IgPT4ge1xyXG4gICAgICAgICAgb2JzZXJ2ZS5lcnJvcihlcnJvcilcclxuICAgICAgICAgIG9ic2VydmUudW5zdWJzY3JpYmUoKVxyXG4gICAgICAgIH0pXHJcblxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIGdldERlZmF1bHRIZWFkZXIoX2hlYWRlcnM6IEh0dHBIZWFkZXJzKTogSHR0cEhlYWRlcnMge1xyXG4gICAgX2hlYWRlcnMgPSBfaGVhZGVycy5zZXQoXCJ4LWhlYWRlci1hdHJcIiwgXCJtYW5hZ2VcIik7XHJcbiAgICBfaGVhZGVycyA9IF9oZWFkZXJzLnNldChcInRva2VuXCIsIExvY2FsU3RvcmFnZVV0aWwuZ2V0VXNlclRva2VuKCkpO1xyXG4gICAgX2hlYWRlcnMgPSBfaGVhZGVycy5zZXQoXCJ1c2VySWRcIiwgTG9jYWxTdG9yYWdlVXRpbC5nZXRVc2VySWQoKSk7XHJcbiAgICAvLyBfaGVhZGVycyA9IF9oZWFkZXJzLnNldChcIm9yZ0NvZGVcIixUb29sc1V0aWwuZ2V0T3JnQ29kZSgpKTtcclxuICAgIHJldHVybiBfaGVhZGVycztcclxuICB9XHJcblxyXG4gIGdldCA9ICh1cmw6IHN0cmluZywgcGFyYW1zPzoge30sIG9wdGlvbnM/OiBIdHRwT3B0aW9ucyk6IE9ic2VydmFibGU8YW55PiA9PiB7XHJcblxyXG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlPGFueT4ob2JzZXJ2ZSA9PiB7XHJcblxyXG4gICAgICBsZXQgX2hlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKTtcclxuICAgICAgaWYgKG9wdGlvbnMgJiYgb3B0aW9ucy5oYXNPd25Qcm9wZXJ0eSgnaXNDb21tb25IdHRwSGVhZGVyJykpIHtcclxuICAgICAgICBfaGVhZGVycyA9IHRoaXMuZ2V0RGVmYXVsdEhlYWRlcihfaGVhZGVycyk7XHJcbiAgICAgIH1cclxuICAgICAgX2hlYWRlcnMgPSB0aGlzLmdldE5vcm1hbEhlYWRlcihfaGVhZGVycyk7XHJcbiAgICAgIGxldCB3aXRoQ3JlZGVudGlhbHM6IGFueSA9IGZhbHNlXHJcbiAgICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMuaGFzT3duUHJvcGVydHkoJ2lzV2l0aENyZWRlbnRpYWxzJykpIHtcclxuICAgICAgICB3aXRoQ3JlZGVudGlhbHMgPSBvcHRpb25zLmlzV2l0aENyZWRlbnRpYWxzXHJcbiAgICAgIH1cclxuICAgICAgLy8gY29uc29sZS5sb2cob3B0aW9ucylcclxuICAgICAgLy8gY29uc29sZS5sb2coX2hlYWRlcnMpXHJcbiAgICAgIHRoaXMuaHR0cENsaWVudC5nZXQodXJsLCB7XHJcbiAgICAgICAgaGVhZGVyczogX2hlYWRlcnMsXHJcbiAgICAgICAgcGFyYW1zOiBwYXJhbXMsXHJcbiAgICAgICAgd2l0aENyZWRlbnRpYWxzOiB3aXRoQ3JlZGVudGlhbHNcclxuICAgICAgfSkuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XHJcbiAgICAgICAgb2JzZXJ2ZS5uZXh0KHJlc3VsdCk7XHJcbiAgICAgICAgb2JzZXJ2ZS51bnN1YnNjcmliZSgpXHJcbiAgICAgIH0sIGVycm9yID0+IHtcclxuICAgICAgICBvYnNlcnZlLmVycm9yKGVycm9yKVxyXG4gICAgICAgIG9ic2VydmUudW5zdWJzY3JpYmUoKVxyXG4gICAgICB9KVxyXG5cclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICB1cGxvYWQgPSAobWV0aG9kOiBhbnksIHVybDogYW55LCBmb3JtRGF0YTogRm9ybURhdGEsIHByb2dyZXNzOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4gPT4ge1xyXG4gICAgbGV0IHJlcSA9IG5ldyBIdHRwUmVxdWVzdChtZXRob2QsIHVybCwgZm9ybURhdGEsIHtyZXBvcnRQcm9ncmVzczogdHJ1ZX0pXHJcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUob2JzZXJ2ZSA9PiB7XHJcbiAgICAgIHRoaXMuaHR0cENsaWVudC5yZXF1ZXN0KHJlcSkuc3Vic2NyaWJlKChldmVudDogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKGV2ZW50LnR5cGUgPT09IEh0dHBFdmVudFR5cGUuVXBsb2FkUHJvZ3Jlc3MpIHtcclxuICAgICAgICAgIGlmICh0eXBlb2YgcHJvZ3Jlc3MgPT0gJ2Z1bmN0aW9uJykge1xyXG4gICAgICAgICAgICBldmVudFsncHJvZ3Jlc3MnXSA9IHBhcnNlSW50KGV2ZW50LmxvYWRlZCAvIGV2ZW50LnRvdGFsICogMTAwICsgJycpXHJcbiAgICAgICAgICAgIHByb2dyZXNzKGV2ZW50KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGV2ZW50LnR5cGUgPT09IEh0dHBFdmVudFR5cGUuUmVzcG9uc2UpIHtcclxuICAgICAgICAgIG9ic2VydmUubmV4dChldmVudC5ib2R5KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0sIGVycm9yID0+IHtcclxuICAgICAgICBvYnNlcnZlLmVycm9yKGVycm9yKVxyXG4gICAgICAgIG9ic2VydmUudW5zdWJzY3JpYmUoKVxyXG4gICAgICB9KVxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdHJhbnNmb3JtU3RyaW5nID0gKG9iakl0ZW06IGFueSkgPT4ge1xyXG4gICAgdmFyIGxpc3Q6IGFueSA9IFtdO1xyXG4gICAgZm9yIChjb25zdCBrZXkgaW4gb2JqSXRlbSkge1xyXG4gICAgICB2YXIgc3RyID0gJyc7XHJcbiAgICAgIGxldCBpdGVtID0gb2JqSXRlbVtrZXldXHJcbiAgICAgIGlmIChpdGVtIGluc3RhbmNlb2YgQXJyYXkpIHtcclxuICAgICAgICAvL+aVsOe7hFxyXG4gICAgICAgIHZhciBhcnI6IGFueSA9IFtdO1xyXG4gICAgICAgIGl0ZW0uZm9yRWFjaCgodiwgaykgPT4ge1xyXG4gICAgICAgICAgdmFyIHMgPSBlbmNvZGVVUklDb21wb25lbnQoa2V5KSArICdbJyArIGsgKyAnXSc7XHJcbiAgICAgICAgICBhcnIucHVzaCh0aGlzLnBhcnNlT2JqKHYsIHMpKTtcclxuICAgICAgICB9KVxyXG4gICAgICAgIHN0ciA9IGFyci5qb2luKCcmJyk7XHJcbiAgICAgIH0gZWxzZSBpZiAoaXRlbSBpbnN0YW5jZW9mIE9iamVjdCkge1xyXG4gICAgICAgIC8vanNvblxyXG4gICAgICAgIHZhciBhcnI6IGFueSA9IFtdO1xyXG4gICAgICAgIGZvciAoY29uc3QgayBpbiBpdGVtKSB7XHJcbiAgICAgICAgICBsZXQgdiA9IGl0ZW1ba11cclxuICAgICAgICAgIHZhciBzID0gZW5jb2RlVVJJQ29tcG9uZW50KGtleSkgKyAnLicgKyBlbmNvZGVVUklDb21wb25lbnQoayk7XHJcbiAgICAgICAgICBhcnIucHVzaCh0aGlzLnBhcnNlT2JqKHYsIHMpKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgc3RyID0gYXJyLmpvaW4oJyYnKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICAvL+aZrumAmuexu+Wei1xyXG4gICAgICAgIHN0ciA9IGVuY29kZVVSSUNvbXBvbmVudChrZXkpICsgJz0nICsgZW5jb2RlVVJJQ29tcG9uZW50KGl0ZW0pO1xyXG4gICAgICB9XHJcbiAgICAgIGxpc3QucHVzaChzdHIpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGxpc3Quam9pbignJicpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBwYXJzZU9iaiA9IChvYmo6IGFueSwgc3RyOiBhbnkpID0+IHtcclxuICAgIGlmIChvYmogaW5zdGFuY2VvZiBBcnJheSkge1xyXG4gICAgICAvL+aVsOe7hFxyXG4gICAgICB2YXIgYXJyOiBhbnkgPSBbXTtcclxuICAgICAgb2JqLmZvckVhY2goKHYsIGspID0+IHtcclxuICAgICAgICB2YXIgcyA9IHN0ciArICdbJyArIGsgKyAnXScgKyAnPScgKyBlbmNvZGVVUklDb21wb25lbnQodik7XHJcbiAgICAgICAgYXJyLnB1c2godGhpcy5wYXJzZU9iaih2LCBzKSk7XHJcbiAgICAgIH0pXHJcbiAgICAgIHN0ciA9IGFyci5qb2luKCcmJyk7XHJcbiAgICB9IGVsc2UgaWYgKG9iaiBpbnN0YW5jZW9mIE9iamVjdCkge1xyXG4gICAgICAvL2pzb25cclxuICAgICAgdmFyIGFycjogYW55ID0gW107XHJcbiAgICAgIGZvciAoY29uc3QgayBpbiBvYmopIHtcclxuICAgICAgICBsZXQgdiA9IG9ialtrXVxyXG4gICAgICAgIHZhciBzID0gc3RyICsgJy4nICsgZW5jb2RlVVJJQ29tcG9uZW50KGspO1xyXG4gICAgICAgIGFyci5wdXNoKHRoaXMucGFyc2VPYmoodiwgcykpO1xyXG4gICAgICB9XHJcbiAgICAgIHN0ciA9IGFyci5qb2luKCcmJyk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAvL+aZrumAmuexu+Wei1xyXG4gICAgICBzdHIgPSBzdHIgKyAnPScgKyBlbmNvZGVVUklDb21wb25lbnQob2JqKTtcclxuICAgIH1cclxuICAgIHJldHVybiBzdHI7XHJcbiAgfVxyXG5cclxuICBnZXRPc3MgPSAodXJsOiBzdHJpbmcsIHBhcmFtcz86IHt9LCByZXNwb25zZVR5cGU/OiBhbnksIG5vRXJyb3IgPSBmYWxzZSk6IE9ic2VydmFibGU8YW55PiA9PiB7XHJcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGU8YW55PihvYnNlcnZlID0+IHtcclxuICAgICAgaWYgKHVybCA9PSB1bmRlZmluZWQpIHtcclxuICAgICAgICBvYnNlcnZlLm5leHQoKTtcclxuICAgICAgICBvYnNlcnZlLnVuc3Vic2NyaWJlKClcclxuICAgICAgICByZXR1cm5cclxuICAgICAgfVxyXG4gICAgICBjb25zb2xlLmxvZyhcInVybFwiLCB1cmwpXHJcbiAgICAgIGlmICghdXJsLnN0YXJ0c1dpdGgoXCJodHRwXCIpKSB7XHJcbiAgICAgICAgdXJsID0gYXRyX3N0YXRpY19kYXRhcy5PU1NfVVJMICsgdXJsO1xyXG4gICAgICB9XHJcbiAgICAgIGxldCBfaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpO1xyXG4gICAgICBsZXQgd2l0aENyZWRlbnRpYWxzID0gZmFsc2VcclxuICAgICAgLy8gLy9jb25zb2xlLmxvZyhfaGVhZGVycylcclxuICAgICAgaWYgKHVybC5lbmRzV2l0aChcIi5vXCIpICYmICFwYXJhbXMpIHtcclxuICAgICAgICB1cmwgKz0gXCI/dj1cIiArIG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChub0Vycm9yKSB7XHJcbiAgICAgICAgaWYgKHVybC5pbmRleE9mKCc/JykgPiAwKSB7XHJcbiAgICAgICAgICB1cmwgKz0gXCImbm9FcnJvclwiXHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHVybCArPSBcIj9ub0Vycm9yXCJcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5odHRwQ2xpZW50LmdldCh1cmwsIHtcclxuICAgICAgICBoZWFkZXJzOiBfaGVhZGVycyxcclxuICAgICAgICBwYXJhbXM6IHBhcmFtcyxcclxuICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IHdpdGhDcmVkZW50aWFscyxcclxuICAgICAgICByZXNwb25zZVR5cGU6IHJlc3BvbnNlVHlwZSB8fCAndGV4dCdcclxuICAgICAgfSkuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XHJcbiAgICAgICAgb2JzZXJ2ZS5uZXh0KHJlc3VsdCk7XHJcbiAgICAgICAgb2JzZXJ2ZS51bnN1YnNjcmliZSgpXHJcbiAgICAgIH0sIGVycm9yID0+IHtcclxuICAgICAgICBvYnNlcnZlLmVycm9yKGVycm9yKVxyXG4gICAgICAgIG9ic2VydmUudW5zdWJzY3JpYmUoKVxyXG4gICAgICB9KVxyXG5cclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBkb3dubG9hZFhscyh1cmw6IHN0cmluZywgcGFyYW1zPzoge30pIHtcclxuICAgIHRoaXMucG9zdChcInRoaXJkL2F1dGgvZ2V0QXV0aFRva2VuXCIsIHt9LCBUb29sc1V0aWwuZ2V0SHR0cE9wdGlvbnMoKSkuc3Vic2NyaWJlKFxyXG4gICAgICByZXN1bHQgPT4ge1xyXG4gICAgICAgIGxldCB0aHJpZFBhcm1hID0ge1xyXG4gICAgICAgICAgXCJyZXFNZXRob2RcIjogXCJhdXRoXCIsXHJcbiAgICAgICAgICBcInNpZ25cIjogcmVzdWx0LmRhdGEsXHJcbiAgICAgICAgICBcIngtaGVhZGVyLWF0clwiOiBcIndlYlwiLFxyXG4gICAgICAgICAgdG9rZW46IExvY2FsU3RvcmFnZVV0aWwuZ2V0VXNlclRva2VuKCksXHJcbiAgICAgICAgICB1c2VySWQ6IExvY2FsU3RvcmFnZVV0aWwuZ2V0VXNlcklkKClcclxuICAgICAgICB9XHJcbiAgICAgICAgcGFyYW1zID0gT2JqZWN0LmFzc2lnbihwYXJhbXMsIHRocmlkUGFybWEpO1xyXG4gICAgICAgIFRvb2xzVXRpbC5kb3dubG9hZFhscyhhdHJfc3RhdGljX2RhdGFzLlNFUlZFUl9VUkwgKyB1cmwsIHBhcmFtcyk7XHJcbiAgICAgIH0sXHJcbiAgICAgIGVycm9yID0+IHtcclxuICAgICAgfSlcclxuICB9XHJcbn1cclxuXHJcblxyXG4iXX0=
287
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvY29yZS9zZXJ2aWNlcy9odHRwLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsV0FBVyxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBYyxNQUFNLG9CQUFvQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRzlELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQzs7O0FBRzdDLE1BQU0sT0FBTyxXQUFXO0lBRXRCLFlBQ1UsVUFBc0I7UUFBdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQVFoQzs7OztXQUlHO1FBQ0gsU0FBSSxHQUFHLENBQUMsR0FBVyxFQUFFLE1BQVcsRUFBRSxPQUFxQixFQUFFLE9BQXFCLEVBQW1CLEVBQUU7WUFFakcsT0FBTyxJQUFJLFVBQVUsQ0FBTSxPQUFPLENBQUMsRUFBRTtnQkFDbkMsc0JBQXNCO2dCQUN0QixJQUFJLFFBQVEsR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDO2dCQUNqQyxJQUFJLE9BQU8sSUFBSSxPQUFPLENBQUMsY0FBYyxDQUFDLG9CQUFvQixDQUFDLEVBQUU7b0JBQzNELFFBQVEsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUM7aUJBQzVDO2dCQUNELFFBQVEsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUMxQyxJQUFHLE9BQU8sRUFBQztvQkFDVCxRQUFRLEdBQUcsT0FBTyxDQUFD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QU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1lBQzNDLFNBQVMsQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxHQUFHLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNuRSxDQUFDLEVBQ0QsS0FBSyxDQUFDLEVBQUU7UUFDUixDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUM7O3lHQW5TVSxXQUFXOzZHQUFYLFdBQVc7NEZBQVgsV0FBVztrQkFEdkIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cFJlcXVlc3QsIEh0dHBFdmVudFR5cGUsIEh0dHBIZWFkZXJzIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHthdHJfc3RhdGljX2RhdGFzLCBIdHRwT3B0aW9uc30gZnJvbSAnLi4vYmFzZS9hdHItY29tbW9uJztcclxuaW1wb3J0IHsgTG9jYWxTdG9yYWdlVXRpbCB9IGZyb20gJy4uL3V0aWxzL2xvY2Fsc3RvcmFnZS51dGlsJztcclxuaW1wb3J0IHtNZDV9IGZyb20gXCJ0cy1tZDVcIjtcclxuaW1wb3J0IHtlbnZpcm9ubWVudH0gZnJvbSBcIm5nLXpvcnJvLWFudGQvY29yZS9lbnZpcm9ubWVudHNcIjtcclxuaW1wb3J0IHtUb29sc1V0aWx9IGZyb20gXCIuLi91dGlscy9Ub29sc1V0aWxcIjtcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEh0dHBTZXJ2aWNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGh0dHBDbGllbnQ6IEh0dHBDbGllbnRcclxuICApIHt9XHJcbiAgZ2V0Tm9ybWFsSGVhZGVyKF9oZWFkZXJzOiBIdHRwSGVhZGVycyk6IEh0dHBIZWFkZXJzIHtcclxuICAgIGlmKCFhdHJfc3RhdGljX2RhdGFzLm5lZWROb3JtYWxIZWFkZSl7XHJcbiAgICAgIHJldHVybiBfaGVhZGVycztcclxuICAgIH1cclxuICAgIHJldHVybiAgYXRyX3N0YXRpY19kYXRhcy5nZXROb3JtYWxIZWFkZXIoX2hlYWRlcnMpXHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHVybFxyXG4gICAqIEBwYXJhbSBwYXJhbXNcclxuICAgKi9cclxuICBwb3N0ID0gKHVybDogc3RyaW5nLCBwYXJhbXM/OmFueSwgb3B0aW9ucz86IEh0dHBPcHRpb25zLCBoZWFkZXJzPzogSHR0cEhlYWRlcnMpOiBPYnNlcnZhYmxlPGFueT4gPT4ge1xyXG5cclxuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTxhbnk+KG9ic2VydmUgPT4ge1xyXG4gICAgICAvLyBjb25zb2xlLmxvZyhcImFhYVwiKTtcclxuICAgICAgbGV0IF9oZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCk7XHJcbiAgICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMuaGFzT3duUHJvcGVydHkoJ2lzQ29tbW9uSHR0cEhlYWRlcicpKSB7XHJcbiAgICAgICAgX2hlYWRlcnMgPSB0aGlzLmdldERlZmF1bHRIZWFkZXIoX2hlYWRlcnMpO1xyXG4gICAgICB9XHJcbiAgICAgIF9oZWFkZXJzID0gdGhpcy5nZXROb3JtYWxIZWFkZXIoX2hlYWRlcnMpO1xyXG4gICAgICBpZihoZWFkZXJzKXtcclxuICAgICAgICBfaGVhZGVycyA9IGhlYWRlcnM7XHJcbiAgICAgIH1cclxuICAgICAgbGV0IHdpdGhDcmVkZW50aWFsczphbnkgPSB0cnVlXHJcbiAgICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMuaGFzT3duUHJvcGVydHkoJ2lzV2l0aENyZWRlbnRpYWxzJykpIHtcclxuICAgICAgICB3aXRoQ3JlZGVudGlhbHMgPSBvcHRpb25zLmlzV2l0aENyZWRlbnRpYWxzXHJcbiAgICAgIH1cclxuICAgICAgLy8gY29uc29sZS5sb2coX2hlYWRlcnMpO1xyXG4gICAgICBmb3IoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKHBhcmFtcykpIHtcclxuICAgICAgICBpZihwYXJhbXMuaGFzT3duUHJvcGVydHkoa2V5KSAmJiB0eXBlb2YgcGFyYW1zW2tleV0gID09PSAnb2JqZWN0Jykge1xyXG4gICAgICAgICAgcGFyYW1zW2tleV0gPSBKU09OLnN0cmluZ2lmeShwYXJhbXNba2V5XSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLmh0dHBDbGllbnQucG9zdCh1cmwsIG51bGwsIHsgaGVhZGVyczogX2hlYWRlcnMsIHBhcmFtczogcGFyYW1zLCB3aXRoQ3JlZGVudGlhbHM6IHdpdGhDcmVkZW50aWFscyB9KVxyXG4gICAgICAgIC5zdWJzY3JpYmUocmVzdWx0ID0+IHtcclxuICAgICAgICAgIG9ic2VydmUubmV4dChyZXN1bHQpO1xyXG4gICAgICAgICAgb2JzZXJ2ZS51bnN1YnNjcmliZSgpXHJcbiAgICAgICAgfSwgZXJyb3IgPT4ge1xyXG4gICAgICAgICAgb2JzZXJ2ZS5lcnJvcihlcnJvcilcclxuICAgICAgICAgIG9ic2VydmUudW5zdWJzY3JpYmUoKVxyXG4gICAgICAgIH0pXHJcblxyXG4gICAgfSlcclxuICB9XHJcbiAgcG9zdFByb21BbGwodXJsczogeyB1cmw6IHN0cmluZywgcGFyYW1zPzoge30sIH1bXSwgb3B0aW9ucz86IEh0dHBPcHRpb25zLCBoZWFkZXJzPzogSHR0cEhlYWRlcnMpIHtcclxuICAgIGxldCBwYXJhbTogYW55W10gPSBbXTtcclxuICAgIHVybHMuZm9yRWFjaChpdGVtID0+IHtcclxuICAgICAgcGFyYW0ucHVzaCh0aGlzLnBvc3RQcm9tKGl0ZW0udXJsLCBpdGVtLnBhcmFtcywgb3B0aW9ucywgaGVhZGVycykpO1xyXG4gICAgfSlcclxuXHJcblxyXG4gICAgcmV0dXJuIFByb21pc2UuYWxsKHBhcmFtKVxyXG4gIH1cclxuXHJcbiAgcG9zdFByb20odXJsOiBzdHJpbmcsIHBhcmFtcz86YW55LCBvcHRpb25zPzogSHR0cE9wdGlvbnMsIGhlYWRlcnM/OiBIdHRwSGVhZGVycykge1xyXG5cclxuICAgIC8vIC8vY29uc29sZS5sb2coXCJhYWFcIik7XHJcbiAgICBsZXQgX2hlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKTtcclxuICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMuaGFzT3duUHJvcGVydHkoJ2lzQ29tbW9uSHR0cEhlYWRlcicpKSB7XHJcbiAgICAgIF9oZWFkZXJzID0gdGhpcy5nZXREZWZhdWx0SGVhZGVyKF9oZWFkZXJzKTtcclxuICAgIH1cclxuICAgIF9oZWFkZXJzID0gdGhpcy5nZXROb3JtYWxIZWFkZXIoX2hlYWRlcnMpO1xyXG4gICAgaWYgKGhlYWRlcnMpIHtcclxuICAgICAgX2hlYWRlcnMgPSBoZWFkZXJzO1xyXG4gICAgfVxyXG4gICAgbGV0IHdpdGhDcmVkZW50aWFsczphbnkgPSB0cnVlXHJcbiAgICBpZiAob3B0aW9ucyAmJiBvcHRpb25zLmhhc093blByb3BlcnR5KCdpc1dpdGhDcmVkZW50aWFscycpKSB7XHJcbiAgICAgIHdpdGhDcmVkZW50aWFscyA9IG9wdGlvbnMuaXNXaXRoQ3JlZGVudGlhbHNcclxuICAgIH1cclxuICAgIGxldCBwb3N0UGFyYW1zOiBhbnkgPSB7fTtcclxuXHJcbiAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyhwYXJhbXMpKSB7XHJcbiAgICAgIGlmIChwYXJhbXNba2V5XSAhPT0gbnVsbCAmJiBwYXJhbXNba2V5XSAhPT0gJycgJiYgcGFyYW1zW2tleV0gIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgIGlmIChwYXJhbXMuaGFzT3duUHJvcGVydHkoa2V5KSAmJiB0eXBlb2YgcGFyYW1zW2tleV0gPT09ICdvYmplY3QnKSB7XHJcbiAgICAgICAgICBwb3N0UGFyYW1zW2tleV0gPSBKU09OLnN0cmluZ2lmeShwYXJhbXNba2V5XSlcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcG9zdFBhcmFtc1trZXldID0gcGFyYW1zW2tleV07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdCh1cmwsIG51bGwsIHtcclxuICAgICAgaGVhZGVyczogX2hlYWRlcnMsXHJcbiAgICAgIHBhcmFtczogcG9zdFBhcmFtcyxcclxuICAgICAgd2l0aENyZWRlbnRpYWxzOiB3aXRoQ3JlZGVudGlhbHNcclxuICAgIH0pXHJcbiAgICAgIC50b1Byb21pc2UoKTtcclxuXHJcbiAgfVxyXG4gIHBvc3RCb2R5ID0gKHVybDogc3RyaW5nLCBwYXJhbXM/OmFueSwgb3B0aW9ucz86IEh0dHBPcHRpb25zLCBoZWFkZXJzPzoge30pOiBPYnNlcnZhYmxlPGFueT4gPT4ge1xyXG5cclxuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTxhbnk+KG9ic2VydmUgPT4ge1xyXG4gICAgICAvLyBjb25zb2xlLmxvZyhcImFhYVwiKTtcclxuICAgICAgbGV0IF9oZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCk7XHJcbiAgICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMuaGFzT3duUHJvcGVydHkoJ2lzQ29tbW9uSHR0cEhlYWRlcicpKSB7XHJcbiAgICAgICAgX2hlYWRlcnMgPSB0aGlzLmdldERlZmF1bHRIZWFkZXIoX2hlYWRlcnMpO1xyXG4gICAgICB9XHJcbiAgICAgIF9oZWFkZXJzID0gdGhpcy5nZXROb3JtYWxIZWFkZXIoX2hlYWRlcnMpO1xyXG4gICAgICBsZXQgd2l0aENyZWRlbnRpYWxzOmFueSA9IHRydWVcclxuICAgICAgaWYgKG9wdGlvbnMgJiYgb3B0aW9ucy5oYXNPd25Qcm9wZXJ0eSgnaXNXaXRoQ3JlZGVudGlhbHMnKSkge1xyXG4gICAgICAgIHdpdGhDcmVkZW50aWFscyA9IG9wdGlvbnMuaXNXaXRoQ3JlZGVudGlhbHNcclxuICAgICAgfVxyXG4gICAgICAvLyBjb25zb2xlLmxvZyhfaGVhZGVycyk7XHJcbiAgICAgIGZvcihjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMocGFyYW1zKSkge1xyXG4gICAgICAgIGlmKHBhcmFtcy5oYXNPd25Qcm9wZXJ0eShrZXkpICYmIHR5cGVvZiBwYXJhbXNba2V5XSAgPT09ICdvYmplY3QnKSB7XHJcbiAgICAgICAgICBwYXJhbXNba2V5XSA9IEpTT04uc3RyaW5naWZ5KHBhcmFtc1trZXldKVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5odHRwQ2xpZW50LnBvc3QodXJsLCBwYXJhbXMsIHsgaGVhZGVyczogX2hlYWRlcnMsIHBhcmFtczoge30sIHdpdGhDcmVkZW50aWFsczogd2l0aENyZWRlbnRpYWxzIH0pXHJcbiAgICAgICAgLnN1YnNjcmliZShyZXN1bHQgPT4ge1xyXG4gICAgICAgICAgb2JzZXJ2ZS5uZXh0KHJlc3VsdCk7XHJcbiAgICAgICAgICBvYnNlcnZlLnVuc3Vic2NyaWJlKClcclxuICAgICAgICB9LCBlcnJvciA9PiB7XHJcbiAgICAgICAgICBvYnNlcnZlLmVycm9yKGVycm9yKVxyXG4gICAgICAgICAgb2JzZXJ2ZS51bnN1YnNjcmliZSgpXHJcbiAgICAgICAgfSlcclxuXHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgZ2V0RGVmYXVsdEhlYWRlcihfaGVhZGVyczpIdHRwSGVhZGVycyk6SHR0cEhlYWRlcnN7XHJcbiAgICBfaGVhZGVycyA9IF9oZWFkZXJzLnNldChcIngtaGVhZGVyLWF0clwiLFwibWFuYWdlXCIpO1xyXG4gICAgX2hlYWRlcnMgPSBfaGVhZGVycy5zZXQoXCJ0b2tlblwiLExvY2FsU3RvcmFnZVV0aWwuZ2V0VXNlclRva2VuKCkpO1xyXG4gICAgX2hlYWRlcnMgPSBfaGVhZGVycy5zZXQoXCJ1c2VySWRcIixMb2NhbFN0b3JhZ2VVdGlsLmdldFVzZXJJZCgpKTtcclxuICAgIC8vIF9oZWFkZXJzID0gX2hlYWRlcnMuc2V0KFwib3JnQ29kZVwiLFRvb2xzVXRpbC5nZXRPcmdDb2RlKCkpO1xyXG4gICAgcmV0dXJuIF9oZWFkZXJzO1xyXG4gIH1cclxuICBnZXQgPSAodXJsOiBzdHJpbmcsIHBhcmFtcz86IHt9LCBvcHRpb25zPzogSHR0cE9wdGlvbnMpOiBPYnNlcnZhYmxlPGFueT4gPT4ge1xyXG5cclxuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTxhbnk+KG9ic2VydmUgPT4ge1xyXG5cclxuICAgICAgbGV0IF9oZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCk7XHJcbiAgICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMuaGFzT3duUHJvcGVydHkoJ2lzQ29tbW9uSHR0cEhlYWRlcicpKSB7XHJcbiAgICAgICAgX2hlYWRlcnMgPSB0aGlzLmdldERlZmF1bHRIZWFkZXIoX2hlYWRlcnMpO1xyXG4gICAgICB9XHJcbiAgICAgIF9oZWFkZXJzID0gdGhpcy5nZXROb3JtYWxIZWFkZXIoX2hlYWRlcnMpO1xyXG4gICAgICBsZXQgd2l0aENyZWRlbnRpYWxzOmFueSA9IGZhbHNlXHJcbiAgICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMuaGFzT3duUHJvcGVydHkoJ2lzV2l0aENyZWRlbnRpYWxzJykpIHtcclxuICAgICAgICB3aXRoQ3JlZGVudGlhbHMgPSBvcHRpb25zLmlzV2l0aENyZWRlbnRpYWxzXHJcbiAgICAgIH1cclxuICAgICAgLy8gY29uc29sZS5sb2cob3B0aW9ucylcclxuICAgICAgLy8gY29uc29sZS5sb2coX2hlYWRlcnMpXHJcbiAgICAgIHRoaXMuaHR0cENsaWVudC5nZXQodXJsLHsgaGVhZGVyczogX2hlYWRlcnMsIHBhcmFtczogcGFyYW1zLCB3aXRoQ3JlZGVudGlhbHM6IHdpdGhDcmVkZW50aWFscyB9KS5zdWJzY3JpYmUocmVzdWx0ID0+IHtcclxuICAgICAgICBvYnNlcnZlLm5leHQocmVzdWx0KTtcclxuICAgICAgICBvYnNlcnZlLnVuc3Vic2NyaWJlKClcclxuICAgICAgfSwgZXJyb3IgPT4ge1xyXG4gICAgICAgIG9ic2VydmUuZXJyb3IoZXJyb3IpXHJcbiAgICAgICAgb2JzZXJ2ZS51bnN1YnNjcmliZSgpXHJcbiAgICAgIH0pXHJcblxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHVwbG9hZCA9IChtZXRob2Q6YW55LCB1cmw6YW55LCBmb3JtRGF0YTogRm9ybURhdGEsIHByb2dyZXNzOmFueSk6IE9ic2VydmFibGU8YW55PiA9PiB7XHJcbiAgICBsZXQgcmVxID0gbmV3IEh0dHBSZXF1ZXN0KG1ldGhvZCwgdXJsLCBmb3JtRGF0YSwgeyByZXBvcnRQcm9ncmVzczogdHJ1ZSB9KVxyXG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKG9ic2VydmUgPT4ge1xyXG4gICAgICB0aGlzLmh0dHBDbGllbnQucmVxdWVzdChyZXEpLnN1YnNjcmliZSgoZXZlbnQ6YW55KSA9PiB7XHJcbiAgICAgICAgaWYgKGV2ZW50LnR5cGUgPT09IEh0dHBFdmVudFR5cGUuVXBsb2FkUHJvZ3Jlc3MpIHtcclxuICAgICAgICAgIGlmICh0eXBlb2YgcHJvZ3Jlc3MgPT0gJ2Z1bmN0aW9uJykge1xyXG4gICAgICAgICAgICBldmVudFsncHJvZ3Jlc3MnXSA9IHBhcnNlSW50KGV2ZW50LmxvYWRlZCAvIGV2ZW50LnRvdGFsICogMTAwICsgJycpXHJcbiAgICAgICAgICAgIHByb2dyZXNzKGV2ZW50KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGV2ZW50LnR5cGUgPT09IEh0dHBFdmVudFR5cGUuUmVzcG9uc2UpIHtcclxuICAgICAgICAgIG9ic2VydmUubmV4dChldmVudC5ib2R5KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0sIGVycm9yID0+IHtcclxuICAgICAgICBvYnNlcnZlLmVycm9yKGVycm9yKVxyXG4gICAgICAgIG9ic2VydmUudW5zdWJzY3JpYmUoKVxyXG4gICAgICB9KVxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdHJhbnNmb3JtU3RyaW5nID0gKG9iakl0ZW06YW55KSA9PiB7XHJcbiAgICB2YXIgbGlzdCA6YW55PSBbXTtcclxuICAgIGZvciAoY29uc3Qga2V5IGluIG9iakl0ZW0pIHtcclxuICAgICAgdmFyIHN0ciA9ICcnO1xyXG4gICAgICBsZXQgaXRlbSA9IG9iakl0ZW1ba2V5XVxyXG4gICAgICBpZiAoaXRlbSBpbnN0YW5jZW9mIEFycmF5KSB7XHJcbiAgICAgICAgLy/mlbDnu4RcclxuICAgICAgICB2YXIgYXJyOmFueSA9IFtdO1xyXG4gICAgICAgIGl0ZW0uZm9yRWFjaCgodiwgaykgPT4ge1xyXG4gICAgICAgICAgdmFyIHMgPSBlbmNvZGVVUklDb21wb25lbnQoa2V5KSArICdbJyArIGsgKyAnXSc7XHJcbiAgICAgICAgICBhcnIucHVzaCh0aGlzLnBhcnNlT2JqKHYsIHMpKTtcclxuICAgICAgICB9KVxyXG4gICAgICAgIHN0ciA9IGFyci5qb2luKCcmJyk7XHJcbiAgICAgIH0gZWxzZSBpZiAoaXRlbSBpbnN0YW5jZW9mIE9iamVjdCkge1xyXG4gICAgICAgIC8vanNvblxyXG4gICAgICAgIHZhciBhcnI6YW55ID0gW107XHJcbiAgICAgICAgZm9yIChjb25zdCBrIGluIGl0ZW0pIHtcclxuICAgICAgICAgIGxldCB2ID0gaXRlbVtrXVxyXG4gICAgICAgICAgdmFyIHMgPSBlbmNvZGVVUklDb21wb25lbnQoa2V5KSArICcuJyArIGVuY29kZVVSSUNvbXBvbmVudChrKTtcclxuICAgICAgICAgIGFyci5wdXNoKHRoaXMucGFyc2VPYmoodiwgcykpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBzdHIgPSBhcnIuam9pbignJicpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIC8v5pmu6YCa57G75Z6LXHJcbiAgICAgICAgc3RyID0gZW5jb2RlVVJJQ29tcG9uZW50KGtleSkgKyAnPScgKyBlbmNvZGVVUklDb21wb25lbnQoaXRlbSk7XHJcbiAgICAgIH1cclxuICAgICAgbGlzdC5wdXNoKHN0cik7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbGlzdC5qb2luKCcmJyk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHBhcnNlT2JqID0gKG9iajphbnksIHN0cjphbnkpID0+IHtcclxuICAgIGlmIChvYmogaW5zdGFuY2VvZiBBcnJheSkge1xyXG4gICAgICAvL+aVsOe7hFxyXG4gICAgICB2YXIgYXJyOmFueSA9IFtdO1xyXG4gICAgICBvYmouZm9yRWFjaCgodiwgaykgPT4ge1xyXG4gICAgICAgIHZhciBzID0gc3RyICsgJ1snICsgayArICddJyArICc9JyArIGVuY29kZVVSSUNvbXBvbmVudCh2KTtcclxuICAgICAgICBhcnIucHVzaCh0aGlzLnBhcnNlT2JqKHYsIHMpKTtcclxuICAgICAgfSlcclxuICAgICAgc3RyID0gYXJyLmpvaW4oJyYnKTtcclxuICAgIH0gZWxzZSBpZiAob2JqIGluc3RhbmNlb2YgT2JqZWN0KSB7XHJcbiAgICAgIC8vanNvblxyXG4gICAgICB2YXIgYXJyIDphbnk9IFtdO1xyXG4gICAgICBmb3IgKGNvbnN0IGsgaW4gb2JqKSB7XHJcbiAgICAgICAgbGV0IHYgPSBvYmpba11cclxuICAgICAgICB2YXIgcyA9IHN0ciArICcuJyArIGVuY29kZVVSSUNvbXBvbmVudChrKTtcclxuICAgICAgICBhcnIucHVzaCh0aGlzLnBhcnNlT2JqKHYsIHMpKTtcclxuICAgICAgfVxyXG4gICAgICBzdHIgPSBhcnIuam9pbignJicpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgLy/mma7pgJrnsbvlnotcclxuICAgICAgc3RyID0gc3RyICsgJz0nICsgZW5jb2RlVVJJQ29tcG9uZW50KG9iaik7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gc3RyO1xyXG4gIH1cclxuXHJcbiAgZ2V0T3NzID0gKHVybDogc3RyaW5nLCBwYXJhbXM/OiB7fSwgcmVzcG9uc2VUeXBlPzphbnksIG5vRXJyb3IgPSBmYWxzZSk6IE9ic2VydmFibGU8YW55PiA9PiB7XHJcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGU8YW55PihvYnNlcnZlID0+IHtcclxuICAgICAgaWYgKHVybCA9PSB1bmRlZmluZWQpIHtcclxuICAgICAgICBvYnNlcnZlLm5leHQoKTtcclxuICAgICAgICBvYnNlcnZlLnVuc3Vic2NyaWJlKClcclxuICAgICAgICByZXR1cm5cclxuICAgICAgfVxyXG4gICAgICBjb25zb2xlLmxvZyhcInVybFwiLHVybClcclxuICAgICAgaWYgKCF1cmwuc3RhcnRzV2l0aChcImh0dHBcIikpIHtcclxuICAgICAgICB1cmwgPSBhdHJfc3RhdGljX2RhdGFzLk9TU19VUkwgKyB1cmw7XHJcbiAgICAgIH1cclxuICAgICAgbGV0IF9oZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCk7XHJcbiAgICAgIGxldCB3aXRoQ3JlZGVudGlhbHMgPSBmYWxzZVxyXG4gICAgICAvLyAvL2NvbnNvbGUubG9nKF9oZWFkZXJzKVxyXG4gICAgICBpZiAodXJsLmVuZHNXaXRoKFwiLm9cIikgJiYgIXBhcmFtcykge1xyXG4gICAgICAgIHVybCArPSBcIj92PVwiICsgbmV3IERhdGUoKS5nZXRUaW1lKCk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKG5vRXJyb3IpIHtcclxuICAgICAgICBpZiAodXJsLmluZGV4T2YoJz8nKSA+IDApIHtcclxuICAgICAgICAgIHVybCArPSBcIiZub0Vycm9yXCJcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdXJsICs9IFwiP25vRXJyb3JcIlxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICB0aGlzLmh0dHBDbGllbnQuZ2V0KHVybCwge1xyXG4gICAgICAgIGhlYWRlcnM6IF9oZWFkZXJzLFxyXG4gICAgICAgIHBhcmFtczogcGFyYW1zLFxyXG4gICAgICAgIHdpdGhDcmVkZW50aWFsczogd2l0aENyZWRlbnRpYWxzLFxyXG4gICAgICAgIHJlc3BvbnNlVHlwZTogcmVzcG9uc2VUeXBlIHx8ICd0ZXh0J1xyXG4gICAgICB9KS5zdWJzY3JpYmUocmVzdWx0ID0+IHtcclxuICAgICAgICBvYnNlcnZlLm5leHQocmVzdWx0KTtcclxuICAgICAgICBvYnNlcnZlLnVuc3Vic2NyaWJlKClcclxuICAgICAgfSwgZXJyb3IgPT4ge1xyXG4gICAgICAgIG9ic2VydmUuZXJyb3IoZXJyb3IpXHJcbiAgICAgICAgb2JzZXJ2ZS51bnN1YnNjcmliZSgpXHJcbiAgICAgIH0pXHJcblxyXG4gICAgfSlcclxuICB9XHJcbiAgZG93bmxvYWRYbHModXJsOiBzdHJpbmcsIHBhcmFtcz86IHt9KSB7XHJcbiAgICB0aGlzLnBvc3QoXCJ0aGlyZC9hdXRoL2dldEF1dGhUb2tlblwiLCB7fSwgVG9vbHNVdGlsLmdldEh0dHBPcHRpb25zKCkpLnN1YnNjcmliZShcclxuICAgICAgcmVzdWx0ID0+IHtcclxuICAgICAgICBsZXQgdGhyaWRQYXJtYSA9IHtcclxuICAgICAgICAgIFwicmVxTWV0aG9kXCI6IFwiYXV0aFwiLFxyXG4gICAgICAgICAgXCJzaWduXCI6IHJlc3VsdC5kYXRhLFxyXG4gICAgICAgICAgXCJ4LWhlYWRlci1hdHJcIjogXCJ3ZWJcIixcclxuICAgICAgICAgIHRva2VuOiBMb2NhbFN0b3JhZ2VVdGlsLmdldFVzZXJUb2tlbigpLFxyXG4gICAgICAgICAgdXNlcklkOiBMb2NhbFN0b3JhZ2VVdGlsLmdldFVzZXJJZCgpXHJcbiAgICAgICAgfVxyXG4gICAgICAgIHBhcmFtcyA9IE9iamVjdC5hc3NpZ24ocGFyYW1zLCB0aHJpZFBhcm1hKTtcclxuICAgICAgICBUb29sc1V0aWwuZG93bmxvYWRYbHMoYXRyX3N0YXRpY19kYXRhcy5TRVJWRVJfVVJMICsgdXJsLCBwYXJhbXMpO1xyXG4gICAgICB9LFxyXG4gICAgICBlcnJvciA9PiB7XHJcbiAgICAgIH0pXHJcbiAgfVxyXG59XHJcblxyXG5cclxuIl19
@@ -1,24 +1,29 @@
1
1
  import { Component, EventEmitter, Input, Output } from '@angular/core';
2
2
  import { atr_static_datas } from "../../../../core/base/atr-common";
3
3
  import * as i0 from "@angular/core";
4
- import * as i1 from "ng-zorro-antd/button";
5
- import * as i2 from "@angular/common";
6
- import * as i3 from "ng-zorro-antd/popover";
7
- import * as i4 from "ng-zorro-antd/image";
8
- import * as i5 from "../../../../core/directive/error-img.directive";
9
- import * as i6 from "ng-zorro-antd/grid";
10
- import * as i7 from "../../../../core/directive/role.directive";
11
- import * as i8 from "ng-zorro-antd/core/wave";
12
- import * as i9 from "ng-zorro-antd/core/transition-patch";
13
- import * as i10 from "ng-zorro-antd/icon";
14
- import * as i11 from "../../../../core/pipe/defaultVal.pipe";
15
- import * as i12 from "../../../../core/pipe/dicts.pipe";
4
+ import * as i1 from "ng-zorro-antd/switch";
5
+ import * as i2 from "ng-zorro-antd/button";
6
+ import * as i3 from "@angular/common";
7
+ import * as i4 from "ng-zorro-antd/popover";
8
+ import * as i5 from "@angular/forms";
9
+ import * as i6 from "ng-zorro-antd/image";
10
+ import * as i7 from "../../../../core/directive/error-img.directive";
11
+ import * as i8 from "ng-zorro-antd/grid";
12
+ import * as i9 from "../../../../core/directive/role.directive";
13
+ import * as i10 from "ng-zorro-antd/core/wave";
14
+ import * as i11 from "ng-zorro-antd/core/transition-patch";
15
+ import * as i12 from "ng-zorro-antd/icon";
16
+ import * as i13 from "../../../../core/pipe/defaultVal.pipe";
17
+ import * as i14 from "../../../../core/pipe/dicts.pipe";
16
18
  export class TableTdComponent {
17
19
  constructor() {
18
20
  this.doActionByRowAction = new EventEmitter();
19
21
  this.popoverTrigger = 'hover';
20
22
  this.imagePrefix = atr_static_datas.OSS_URL;
21
23
  }
24
+ doActionSwitch(data, code, event, index) {
25
+ this.doActionByRowAction.emit({ data: data, code: code, event: event, index: index });
26
+ }
22
27
  change(value) {
23
28
  console.log(value);
24
29
  }
@@ -121,10 +126,10 @@ export class TableTdComponent {
121
126
  }
122
127
  }
123
128
  TableTdComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: TableTdComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
124
- TableTdComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: TableTdComponent, selector: "app-table-td", inputs: { data: "data", item: "item", i: "i" }, outputs: { doActionByRowAction: "doActionByRowAction" }, ngImport: i0, template: "<ng-container [ngSwitch]=\"item.type\">\r\n <ng-container *ngSwitchCase=\"'textcolor'\">\r\n <div [innerHTML]=\"data[item.key] | defVal:item.defaultVal\" [ngStyle]=\"{'color':item.color}\"\r\n *ngIf=\"item.colorShow == data[item.key]\"></div>\r\n <div [innerHTML]=\"data[item.key] | defVal:item.defaultVal\" *ngIf=\"item.colorShow != data[item.key]\"></div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'date'\">\r\n <span nz-popover (mouseenter)=\"enter($event)\"\r\n [nzPopoverTrigger]=\"popoverTrigger\"\r\n [nzPopoverContent]=\"data[item.key] | date:'yyyy-MM-dd' | defVal:item.defaultVal\"\r\n class=\"view-text\">{{ data[item.key] | date:'yyyy-MM-dd' | defVal:item.defaultVal}}</span>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'dateTime'\">\r\n <span nz-popover (mouseenter)=\"enter($event)\"\r\n [nzPopoverTrigger]=\"popoverTrigger\"\r\n [nzPopoverContent]=\"data[item.key] | date:'yyyy-MM-dd HH:mm:ss' | defVal:item.defaultVal\"\r\n class=\"view-text\"> {{ data[item.key] | date:'yyyy-MM-dd HH:mm:ss' | defVal:item.defaultVal}}</span>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'sDateTime'\">\r\n <span nz-popover (mouseenter)=\"enter($event)\"\r\n [nzPopoverTrigger]=\"popoverTrigger\"\r\n [nzPopoverContent]=\"data[item.key] | date:'MM-dd HH:mm' | defVal:item.defaultVal\"\r\n class=\"view-text\"> {{ data[item.key] | date:'MM-dd HH:mm' | defVal:item.defaultVal}}</span>\r\n </ng-container>\r\n <div *ngSwitchCase=\"'fixedText'\" [innerHTML]=\"item.key\"></div>\r\n\r\n <img *ngSwitchCase=\"'image'\" width=\"35px\" nzSrc=\"{{imagePrefix + (data[item.key] | defVal:item.defaultVal) }}\"\r\n nz-image atrErrorImg/>\r\n <div nz-row *ngSwitchCase=\"'action'\">\r\n <div class=\"action-area\" nz-col [nzSpan]=\"24\">\r\n <ng-container *ngFor=\"let action of item.actions\">\r\n <ng-container *ngIf=\"isShowBtn(data,action.operator,action)\">\r\n <ng-container *ngIf=\"!action.withoutRole\">\r\n <button nz-button\r\n [nzType]=\"action.buttonType&&action.buttonType != 'danger'? action.buttonType : 'primary'\"\r\n [nzDanger]=\"action.buttonType == 'danger'\"\r\n nzSize=\"small\" *atrRole=\"action.code\"\r\n (click)=\"doActionByRow(data,action.code,$event,i)\">\r\n <i nz-icon *ngIf=\"action.icon\" [nzType]=\"action.icon\"></i>\r\n {{action.name}}</button>\r\n </ng-container>\r\n <ng-container *ngIf=\"action.withoutRole\">\r\n <button nz-button\r\n [nzType]=\"action.buttonType&&action.buttonType != 'danger'? action.buttonType : 'primary'\"\r\n [nzDanger]=\"action.buttonType == 'danger'\"\r\n nzSize=\"small\" (click)=\"doActionByRow(data,action.code,$event,i)\">\r\n <i nz-icon *ngIf=\"action.icon\" [nzType]=\"action.icon\"></i>\r\n {{action.name}}</button>\r\n </ng-container>\r\n <!-- <button nz-button [nzType]=\"'primary'\" nzSize=\"small\" *atrRole=\"action.code\" (click)=\"doActionByRow(data,action.code,$event)\">{{action.name\r\n }}</button> -->\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div *ngSwitchCase=\"'dict'\" [innerHTML]=\"data[item.key] | dicts:item.dictCode | defVal:item.defaultVal\"></div>\r\n <div nz-popover (mouseenter)=\"enter($event)\"\r\n [nzPopoverTrigger]=\"popoverTrigger\" [nzPopoverContent]='data[item.key] | defVal:item.defaultVal'\r\n class=\"view-text\" *ngSwitchDefault [innerHTML]=\"data[item.key] | defVal:item.defaultVal\"></div>\r\n</ng-container>\r\n\r\n", styles: [":host{cursor:default}:host .view-text{display:inline-block;white-space:nowrap;width:100%;overflow:hidden;text-overflow:ellipsis}\n", ":host{width:100%;height:100%;display:flex;flex-direction:column}::ng-deep .ant-modal{top:50px;padding:0}.ant-advanced-search-form{padding:10px 6px 6px;background:#fbfbfb;border:1px solid #d9d9d9;border-radius:6px;margin-bottom:5px}.select-icon:hover{color:#1890ff}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:5px}::ng-deep .ant-table-column-title{font-size:.65rem}::ng-deep .ant-table-tbody>tr.ant-table-row:hover>td{background:#d0eeea}::ng-deep .ant-modal-header,::ng-deep .ant-modal-content{border-radius:4px}::ng-deep .ant-table-tbody>tr.selected:hover>td{background-color:#cfe1d0!important}::ng-deep .ant-table{height:100%}::ng-deep nz-pagination{position:absolute;bottom:0;right:0}.search-result-list{padding:1px;border:1px dashed #e9e9e9;border-radius:6px;background-color:#fff;flex:1;text-align:center;position:relative}[nz-form-label]{overflow:visible}button{margin:2px 4px}.collapse{margin-left:6px;font-size:12px}.action-area{text-align:left}.search-area{text-align:right}::ng-deep .main-table{position:absolute;top:0;left:0;right:0;bottom:0}::ng-deep .main-table .ant-spin-nested-loading{height:100%}::ng-deep .main-table .ant-spin-container{height:100%}::ng-deep .ant-table-tbody>tr.selected>td{background-color:#cfe1d0}::ng-deep .ant-table-tbody>tr>td>img{display:block;width:40%;margin:0 auto}::ng-deep .ant-table-body{-ms-overflow-style:none;overflow:-moz-scrollbars-none}::ng-deep .ant-table-body::-webkit-scrollbar,::ng-deep .ant-table-header::-webkit-scrollbar{width:6px!important;height:6px!important}::ng-deep .ant-table-body::-webkit-scrollbar-track,::ng-deep .ant-table-header::-webkit-scrollbar-track{width:6px!important;cursor:pointer}::ng-deep .ant-table-body::-webkit-scrollbar-thumb,::ng-deep .ant-table-header::-webkit-scrollbar-thumb{background:#1890ff;border-radius:3px;cursor:pointer}::ng-deep .ant-table-bordered .ant-table-thead>tr>th{border-right:1px solid #ddd}::ng-deep .ant-table-header{-ms-overflow-style:none;overflow:-moz-scrollbars-none;margin-bottom:-5px!important}::ng-deep .ant-table-placeholder{border-bottom:none!important;border-top:none!important}.tabel-colunmn{display:block;width:160px;height:300px;background:#fff;border:1px solid #ddd;padding:10px;border-radius:5px;overflow-x:hidden;overflow-y:auto;position:relative}.tabel-colunmn-header{position:fixed;top:0;left:0;right:0;height:30px;z-index:999;line-height:30px;border-bottom:1px solid #ddd;text-align:left;font-size:13px;padding-left:10px}.t-tr{background:#fff}.t-tr:nth-child(odd){background:#f8f9fa}::ng-deep .ant-table-thead>tr>th{background:#e7ebef!important;border-radius:0;word-break:break-all;white-space:pre-wrap}::ng-deep .ant-table-tbody>tr>td{word-break:break-all;white-space:pre-wrap}::ng-deep .ant-table-header{background:#e7ebef!important}td{font-size:.65rem}.resize-trigger{height:100%}.nz-resizable-preview{border-width:0;border-right-width:1px}::ng-deep .ant-table-thead>tr>th .ant-table-header-column .ant-table-column-sorters>:not(.ant-table-column-sorter){position:unset}::ng-deep .ant-table-tbody>tr>td{padding:5px}::ng-deep .ant-table{line-height:15px}::ng-deep .ant-table-middle .ant-table-footer,.ant-table-middle .ant-table-tbody>tr>td,.ant-table-middle .ant-table-thead>tr>th,.ant-table-middle .ant-table-title{padding:5px}::ng-deep .ant-table-tbody>tr>td>img{width:35px}::ng-deep .ant-modal-body{padding:10px}::ng-deep .ant-table.ant-table-bordered tbody>tr>td{font-size:13px}::ng-deep th{z-index:80!important}.left-zindex-header{z-index:90!important}.left-zindex{z-index:80!important}:host ::ng-deep input,:host ::ng-deep .ant-select-single:not(.ant-select-customize-input) .ant-select-selector,:host ::ng-deep .ant-picker{border-radius:5px}.border-text{width:100%;height:36px;line-height:36px;display:flex}.border-text .border-text-line{display:inline-block;border-top:1px solid #cccccc;margin-top:18px}.border-text .border-text-line-left{width:10px;border-left:1px solid #cccccc}.border-text .border-text-line-right{flex:1;border-right:1px solid #cccccc}.border-text .border-text-span{margin-left:5px;margin-right:5px}.label-title{position:absolute;display:block;top:-7px;left:10px;background-color:#fff;color:#000;font-weight:600;font-size:12px;line-height:12px}:host ::ng-deep .tabel-colunmn-header{position:absolute!important;top:0!important}::ng-deep .ant-table-cell-fix-left,.ant-table-cell-fix-right{position:sticky!important}\n"], components: [{ type: i1.NzButtonComponent, selector: "button[nz-button], a[nz-button]", inputs: ["nzBlock", "nzGhost", "nzSearch", "nzLoading", "nzDanger", "disabled", "tabIndex", "nzType", "nzShape", "nzSize"], exportAs: ["nzButton"] }], directives: [{ type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i3.NzPopoverDirective, selector: "[nz-popover]", inputs: ["nzPopoverArrowPointAtCenter", "nzPopoverTitle", "nzPopoverContent", "nz-popover", "nzPopoverTrigger", "nzPopoverPlacement", "nzPopoverOrigin", "nzPopoverVisible", "nzPopoverMouseEnterDelay", "nzPopoverMouseLeaveDelay", "nzPopoverOverlayClassName", "nzPopoverOverlayStyle", "nzPopoverBackdrop"], outputs: ["nzPopoverVisibleChange"], exportAs: ["nzPopover"] }, { type: i4.NzImageDirective, selector: "img[nz-image]", inputs: ["nzSrc", "nzSrcset", "nzDisablePreview", "nzFallback", "nzPlaceholder"], exportAs: ["nzImage"] }, { type: i5.AtrErrorImgDirective, selector: "[atrErrorImg]", inputs: ["atrErrorImg"] }, { type: i6.NzRowDirective, selector: "[nz-row],nz-row,nz-form-item", inputs: ["nzAlign", "nzJustify", "nzGutter"], exportAs: ["nzRow"] }, { type: i6.NzColDirective, selector: "[nz-col],nz-col,nz-form-control,nz-form-label", inputs: ["nzFlex", "nzSpan", "nzOrder", "nzOffset", "nzPush", "nzPull", "nzXs", "nzSm", "nzMd", "nzLg", "nzXl", "nzXXl"], exportAs: ["nzCol"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.AtrRoleDirective, selector: "[atrRole]", inputs: ["atrRole"] }, { type: i8.NzWaveDirective, selector: "[nz-wave],button[nz-button]:not([nzType=\"link\"]):not([nzType=\"text\"])", inputs: ["nzWaveExtraNode"], exportAs: ["nzWave"] }, { type: i9.ɵNzTransitionPatchDirective, selector: "[nz-button], nz-button-group, [nz-icon], [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { type: i10.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { type: i2.NgSwitchDefault, selector: "[ngSwitchDefault]" }], pipes: { "defVal": i11.DefaultValPipe, "date": i2.DatePipe, "dicts": i12.DictsPipe } });
129
+ TableTdComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: TableTdComponent, selector: "app-table-td", inputs: { data: "data", item: "item", i: "i" }, outputs: { doActionByRowAction: "doActionByRowAction" }, ngImport: i0, template: "<ng-container [ngSwitch]=\"item.type\">\r\n <ng-container *ngSwitchCase=\"'textcolor'\">\r\n <div [innerHTML]=\"data[item.key] | defVal:item.defaultVal\" [ngStyle]=\"{'color':item.color}\"\r\n *ngIf=\"item.colorShow == data[item.key]\"></div>\r\n <div [innerHTML]=\"data[item.key] | defVal:item.defaultVal\" *ngIf=\"item.colorShow != data[item.key]\"></div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'date'\">\r\n <span nz-popover (mouseenter)=\"enter($event)\"\r\n [nzPopoverTrigger]=\"popoverTrigger\"\r\n [nzPopoverContent]=\"data[item.key] | date:'yyyy-MM-dd' | defVal:item.defaultVal\"\r\n class=\"view-text\">{{ data[item.key] | date:'yyyy-MM-dd' | defVal:item.defaultVal}}</span>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'dateTime'\">\r\n <span nz-popover (mouseenter)=\"enter($event)\"\r\n [nzPopoverTrigger]=\"popoverTrigger\"\r\n [nzPopoverContent]=\"data[item.key] | date:'yyyy-MM-dd HH:mm:ss' | defVal:item.defaultVal\"\r\n class=\"view-text\"> {{ data[item.key] | date:'yyyy-MM-dd HH:mm:ss' | defVal:item.defaultVal}}</span>\r\n </ng-container>\r\n <nz-switch *ngSwitchCase=\"'switch'\" [(ngModel)]=\"data[item.key]\" [nzDisabled]=\"item.disabled\"\r\n (ngModelChange)=\"doActionSwitch(data,item.key)\" nzCheckedChildren=\"\u662F\" nzUnCheckedChildren=\"\u5426\">\r\n </nz-switch>\r\n <ng-container *ngSwitchCase=\"'sDateTime'\">\r\n <span nz-popover (mouseenter)=\"enter($event)\"\r\n [nzPopoverTrigger]=\"popoverTrigger\"\r\n [nzPopoverContent]=\"data[item.key] | date:'MM-dd HH:mm' | defVal:item.defaultVal\"\r\n class=\"view-text\"> {{ data[item.key] | date:'MM-dd HH:mm' | defVal:item.defaultVal}}</span>\r\n </ng-container>\r\n <div *ngSwitchCase=\"'fixedText'\" [innerHTML]=\"item.key\"></div>\r\n\r\n <img *ngSwitchCase=\"'image'\" width=\"35px\" nzSrc=\"{{imagePrefix + (data[item.key] | defVal:item.defaultVal) }}\"\r\n nz-image atrErrorImg/>\r\n <div nz-row *ngSwitchCase=\"'action'\">\r\n <div class=\"action-area\" nz-col [nzSpan]=\"24\">\r\n <ng-container *ngFor=\"let action of item.actions\">\r\n <ng-container *ngIf=\"isShowBtn(data,action.operator,action)\">\r\n <ng-container *ngIf=\"!action.withoutRole\">\r\n <button nz-button\r\n [nzType]=\"action.buttonType&&action.buttonType != 'danger'? action.buttonType : 'primary'\"\r\n [nzDanger]=\"action.buttonType == 'danger'\"\r\n nzSize=\"small\" *atrRole=\"action.code\"\r\n (click)=\"doActionByRow(data,action.code,$event,i)\">\r\n <i nz-icon *ngIf=\"action.icon\" [nzType]=\"action.icon\"></i>\r\n {{action.name}}</button>\r\n </ng-container>\r\n <ng-container *ngIf=\"action.withoutRole\">\r\n <button nz-button\r\n [nzType]=\"action.buttonType&&action.buttonType != 'danger'? action.buttonType : 'primary'\"\r\n [nzDanger]=\"action.buttonType == 'danger'\"\r\n nzSize=\"small\" (click)=\"doActionByRow(data,action.code,$event,i)\">\r\n <i nz-icon *ngIf=\"action.icon\" [nzType]=\"action.icon\"></i>\r\n {{action.name}}</button>\r\n </ng-container>\r\n <!-- <button nz-button [nzType]=\"'primary'\" nzSize=\"small\" *atrRole=\"action.code\" (click)=\"doActionByRow(data,action.code,$event)\">{{action.name\r\n }}</button> -->\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div *ngSwitchCase=\"'dict'\" [innerHTML]=\"data[item.key] | dicts:item.dictCode | defVal:item.defaultVal\"></div>\r\n <div nz-popover (mouseenter)=\"enter($event)\"\r\n [nzPopoverTrigger]=\"popoverTrigger\" [nzPopoverContent]='data[item.key] | defVal:item.defaultVal'\r\n class=\"view-text\" *ngSwitchDefault [innerHTML]=\"data[item.key] | defVal:item.defaultVal\"></div>\r\n</ng-container>\r\n\r\n", styles: [":host{cursor:default}:host .view-text{display:inline-block;white-space:nowrap;width:100%;overflow:hidden;text-overflow:ellipsis}\n", ":host{width:100%;height:100%;display:flex;flex-direction:column}::ng-deep .ant-modal{top:50px;padding:0}.ant-advanced-search-form{padding:10px 6px 6px;background:#fbfbfb;border:1px solid #d9d9d9;border-radius:6px;margin-bottom:5px}.select-icon:hover{color:#1890ff}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:5px}::ng-deep .ant-table-column-title{font-size:.65rem}::ng-deep .ant-table-tbody>tr.ant-table-row:hover>td{background:#d0eeea}::ng-deep .ant-modal-header,::ng-deep .ant-modal-content{border-radius:4px}::ng-deep .ant-table-tbody>tr.selected:hover>td{background-color:#cfe1d0!important}::ng-deep .ant-table{height:100%}::ng-deep nz-pagination{position:absolute;bottom:0;right:0}.search-result-list{padding:1px;border:1px dashed #e9e9e9;border-radius:6px;background-color:#fff;flex:1;text-align:center;position:relative}[nz-form-label]{overflow:visible}button{margin:2px 4px}.collapse{margin-left:6px;font-size:12px}.action-area{text-align:left}.search-area{text-align:right}::ng-deep .main-table{position:absolute;top:0;left:0;right:0;bottom:0}::ng-deep .main-table .ant-spin-nested-loading{height:100%}::ng-deep .main-table .ant-spin-container{height:100%}::ng-deep .ant-table-tbody>tr.selected>td{background-color:#cfe1d0}::ng-deep .ant-table-tbody>tr>td>img{display:block;width:40%;margin:0 auto}::ng-deep .ant-table-body{-ms-overflow-style:none;overflow:-moz-scrollbars-none}::ng-deep .ant-table-body::-webkit-scrollbar,::ng-deep .ant-table-header::-webkit-scrollbar{width:6px!important;height:6px!important}::ng-deep .ant-table-body::-webkit-scrollbar-track,::ng-deep .ant-table-header::-webkit-scrollbar-track{width:6px!important;cursor:pointer}::ng-deep .ant-table-body::-webkit-scrollbar-thumb,::ng-deep .ant-table-header::-webkit-scrollbar-thumb{background:#1890ff;border-radius:3px;cursor:pointer}::ng-deep .ant-table-bordered .ant-table-thead>tr>th{border-right:1px solid #ddd}::ng-deep .ant-table-header{-ms-overflow-style:none;overflow:-moz-scrollbars-none;margin-bottom:-5px!important}::ng-deep .ant-table-placeholder{border-bottom:none!important;border-top:none!important}.tabel-colunmn{display:block;width:160px;height:300px;background:#fff;border:1px solid #ddd;padding:10px;border-radius:5px;overflow-x:hidden;overflow-y:auto;position:relative}.tabel-colunmn-header{position:fixed;top:0;left:0;right:0;height:30px;z-index:999;line-height:30px;border-bottom:1px solid #ddd;text-align:left;font-size:13px;padding-left:10px}.t-tr{background:#fff}.t-tr:nth-child(odd){background:#f8f9fa}::ng-deep .ant-table-thead>tr>th{background:#e7ebef!important;border-radius:0;word-break:break-all;white-space:pre-wrap}::ng-deep .ant-table-tbody>tr>td{word-break:break-all;white-space:pre-wrap}::ng-deep .ant-table-header{background:#e7ebef!important}td{font-size:.65rem}.resize-trigger{height:100%}.nz-resizable-preview{border-width:0;border-right-width:1px}::ng-deep .ant-table-thead>tr>th .ant-table-header-column .ant-table-column-sorters>:not(.ant-table-column-sorter){position:unset}::ng-deep .ant-table-tbody>tr>td{padding:5px}::ng-deep .ant-table{line-height:15px}::ng-deep .ant-table-middle .ant-table-footer,.ant-table-middle .ant-table-tbody>tr>td,.ant-table-middle .ant-table-thead>tr>th,.ant-table-middle .ant-table-title{padding:5px}::ng-deep .ant-table-tbody>tr>td>img{width:35px}::ng-deep .ant-modal-body{padding:10px}::ng-deep .ant-table.ant-table-bordered tbody>tr>td{font-size:13px}::ng-deep th{z-index:80!important}.left-zindex-header{z-index:90!important}.left-zindex{z-index:80!important}:host ::ng-deep input,:host ::ng-deep .ant-select-single:not(.ant-select-customize-input) .ant-select-selector,:host ::ng-deep .ant-picker{border-radius:5px}.border-text{width:100%;height:36px;line-height:36px;display:flex}.border-text .border-text-line{display:inline-block;border-top:1px solid #cccccc;margin-top:18px}.border-text .border-text-line-left{width:10px;border-left:1px solid #cccccc}.border-text .border-text-line-right{flex:1;border-right:1px solid #cccccc}.border-text .border-text-span{margin-left:5px;margin-right:5px}.label-title{position:absolute;display:block;top:-7px;left:10px;background-color:#fff;color:#000;font-weight:600;font-size:12px;line-height:12px}:host ::ng-deep .tabel-colunmn-header{position:absolute!important;top:0!important}::ng-deep .ant-table-cell-fix-left,.ant-table-cell-fix-right{position:sticky!important}\n"], components: [{ type: i1.NzSwitchComponent, selector: "nz-switch", inputs: ["nzLoading", "nzDisabled", "nzControl", "nzCheckedChildren", "nzUnCheckedChildren", "nzSize", "nzId"], exportAs: ["nzSwitch"] }, { type: i2.NzButtonComponent, selector: "button[nz-button], a[nz-button]", inputs: ["nzBlock", "nzGhost", "nzSearch", "nzLoading", "nzDanger", "disabled", "tabIndex", "nzType", "nzShape", "nzSize"], exportAs: ["nzButton"] }], directives: [{ type: i3.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i3.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i4.NzPopoverDirective, selector: "[nz-popover]", inputs: ["nzPopoverArrowPointAtCenter", "nzPopoverTitle", "nzPopoverContent", "nz-popover", "nzPopoverTrigger", "nzPopoverPlacement", "nzPopoverOrigin", "nzPopoverVisible", "nzPopoverMouseEnterDelay", "nzPopoverMouseLeaveDelay", "nzPopoverOverlayClassName", "nzPopoverOverlayStyle", "nzPopoverBackdrop"], outputs: ["nzPopoverVisibleChange"], exportAs: ["nzPopover"] }, { type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i6.NzImageDirective, selector: "img[nz-image]", inputs: ["nzSrc", "nzSrcset", "nzDisablePreview", "nzFallback", "nzPlaceholder"], exportAs: ["nzImage"] }, { type: i7.AtrErrorImgDirective, selector: "[atrErrorImg]", inputs: ["atrErrorImg"] }, { type: i8.NzRowDirective, selector: "[nz-row],nz-row,nz-form-item", inputs: ["nzAlign", "nzJustify", "nzGutter"], exportAs: ["nzRow"] }, { type: i8.NzColDirective, selector: "[nz-col],nz-col,nz-form-control,nz-form-label", inputs: ["nzFlex", "nzSpan", "nzOrder", "nzOffset", "nzPush", "nzPull", "nzXs", "nzSm", "nzMd", "nzLg", "nzXl", "nzXXl"], exportAs: ["nzCol"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i9.AtrRoleDirective, selector: "[atrRole]", inputs: ["atrRole"] }, { type: i10.NzWaveDirective, selector: "[nz-wave],button[nz-button]:not([nzType=\"link\"]):not([nzType=\"text\"])", inputs: ["nzWaveExtraNode"], exportAs: ["nzWave"] }, { type: i11.ɵNzTransitionPatchDirective, selector: "[nz-button], nz-button-group, [nz-icon], [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { type: i12.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { type: i3.NgSwitchDefault, selector: "[ngSwitchDefault]" }], pipes: { "defVal": i13.DefaultValPipe, "date": i3.DatePipe, "dicts": i14.DictsPipe } });
125
130
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: TableTdComponent, decorators: [{
126
131
  type: Component,
127
- args: [{ selector: 'app-table-td', template: "<ng-container [ngSwitch]=\"item.type\">\r\n <ng-container *ngSwitchCase=\"'textcolor'\">\r\n <div [innerHTML]=\"data[item.key] | defVal:item.defaultVal\" [ngStyle]=\"{'color':item.color}\"\r\n *ngIf=\"item.colorShow == data[item.key]\"></div>\r\n <div [innerHTML]=\"data[item.key] | defVal:item.defaultVal\" *ngIf=\"item.colorShow != data[item.key]\"></div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'date'\">\r\n <span nz-popover (mouseenter)=\"enter($event)\"\r\n [nzPopoverTrigger]=\"popoverTrigger\"\r\n [nzPopoverContent]=\"data[item.key] | date:'yyyy-MM-dd' | defVal:item.defaultVal\"\r\n class=\"view-text\">{{ data[item.key] | date:'yyyy-MM-dd' | defVal:item.defaultVal}}</span>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'dateTime'\">\r\n <span nz-popover (mouseenter)=\"enter($event)\"\r\n [nzPopoverTrigger]=\"popoverTrigger\"\r\n [nzPopoverContent]=\"data[item.key] | date:'yyyy-MM-dd HH:mm:ss' | defVal:item.defaultVal\"\r\n class=\"view-text\"> {{ data[item.key] | date:'yyyy-MM-dd HH:mm:ss' | defVal:item.defaultVal}}</span>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'sDateTime'\">\r\n <span nz-popover (mouseenter)=\"enter($event)\"\r\n [nzPopoverTrigger]=\"popoverTrigger\"\r\n [nzPopoverContent]=\"data[item.key] | date:'MM-dd HH:mm' | defVal:item.defaultVal\"\r\n class=\"view-text\"> {{ data[item.key] | date:'MM-dd HH:mm' | defVal:item.defaultVal}}</span>\r\n </ng-container>\r\n <div *ngSwitchCase=\"'fixedText'\" [innerHTML]=\"item.key\"></div>\r\n\r\n <img *ngSwitchCase=\"'image'\" width=\"35px\" nzSrc=\"{{imagePrefix + (data[item.key] | defVal:item.defaultVal) }}\"\r\n nz-image atrErrorImg/>\r\n <div nz-row *ngSwitchCase=\"'action'\">\r\n <div class=\"action-area\" nz-col [nzSpan]=\"24\">\r\n <ng-container *ngFor=\"let action of item.actions\">\r\n <ng-container *ngIf=\"isShowBtn(data,action.operator,action)\">\r\n <ng-container *ngIf=\"!action.withoutRole\">\r\n <button nz-button\r\n [nzType]=\"action.buttonType&&action.buttonType != 'danger'? action.buttonType : 'primary'\"\r\n [nzDanger]=\"action.buttonType == 'danger'\"\r\n nzSize=\"small\" *atrRole=\"action.code\"\r\n (click)=\"doActionByRow(data,action.code,$event,i)\">\r\n <i nz-icon *ngIf=\"action.icon\" [nzType]=\"action.icon\"></i>\r\n {{action.name}}</button>\r\n </ng-container>\r\n <ng-container *ngIf=\"action.withoutRole\">\r\n <button nz-button\r\n [nzType]=\"action.buttonType&&action.buttonType != 'danger'? action.buttonType : 'primary'\"\r\n [nzDanger]=\"action.buttonType == 'danger'\"\r\n nzSize=\"small\" (click)=\"doActionByRow(data,action.code,$event,i)\">\r\n <i nz-icon *ngIf=\"action.icon\" [nzType]=\"action.icon\"></i>\r\n {{action.name}}</button>\r\n </ng-container>\r\n <!-- <button nz-button [nzType]=\"'primary'\" nzSize=\"small\" *atrRole=\"action.code\" (click)=\"doActionByRow(data,action.code,$event)\">{{action.name\r\n }}</button> -->\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div *ngSwitchCase=\"'dict'\" [innerHTML]=\"data[item.key] | dicts:item.dictCode | defVal:item.defaultVal\"></div>\r\n <div nz-popover (mouseenter)=\"enter($event)\"\r\n [nzPopoverTrigger]=\"popoverTrigger\" [nzPopoverContent]='data[item.key] | defVal:item.defaultVal'\r\n class=\"view-text\" *ngSwitchDefault [innerHTML]=\"data[item.key] | defVal:item.defaultVal\"></div>\r\n</ng-container>\r\n\r\n", styles: [":host{cursor:default}:host .view-text{display:inline-block;white-space:nowrap;width:100%;overflow:hidden;text-overflow:ellipsis}\n", ":host{width:100%;height:100%;display:flex;flex-direction:column}::ng-deep .ant-modal{top:50px;padding:0}.ant-advanced-search-form{padding:10px 6px 6px;background:#fbfbfb;border:1px solid #d9d9d9;border-radius:6px;margin-bottom:5px}.select-icon:hover{color:#1890ff}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:5px}::ng-deep .ant-table-column-title{font-size:.65rem}::ng-deep .ant-table-tbody>tr.ant-table-row:hover>td{background:#d0eeea}::ng-deep .ant-modal-header,::ng-deep .ant-modal-content{border-radius:4px}::ng-deep .ant-table-tbody>tr.selected:hover>td{background-color:#cfe1d0!important}::ng-deep .ant-table{height:100%}::ng-deep nz-pagination{position:absolute;bottom:0;right:0}.search-result-list{padding:1px;border:1px dashed #e9e9e9;border-radius:6px;background-color:#fff;flex:1;text-align:center;position:relative}[nz-form-label]{overflow:visible}button{margin:2px 4px}.collapse{margin-left:6px;font-size:12px}.action-area{text-align:left}.search-area{text-align:right}::ng-deep .main-table{position:absolute;top:0;left:0;right:0;bottom:0}::ng-deep .main-table .ant-spin-nested-loading{height:100%}::ng-deep .main-table .ant-spin-container{height:100%}::ng-deep .ant-table-tbody>tr.selected>td{background-color:#cfe1d0}::ng-deep .ant-table-tbody>tr>td>img{display:block;width:40%;margin:0 auto}::ng-deep .ant-table-body{-ms-overflow-style:none;overflow:-moz-scrollbars-none}::ng-deep .ant-table-body::-webkit-scrollbar,::ng-deep .ant-table-header::-webkit-scrollbar{width:6px!important;height:6px!important}::ng-deep .ant-table-body::-webkit-scrollbar-track,::ng-deep .ant-table-header::-webkit-scrollbar-track{width:6px!important;cursor:pointer}::ng-deep .ant-table-body::-webkit-scrollbar-thumb,::ng-deep .ant-table-header::-webkit-scrollbar-thumb{background:#1890ff;border-radius:3px;cursor:pointer}::ng-deep .ant-table-bordered .ant-table-thead>tr>th{border-right:1px solid #ddd}::ng-deep .ant-table-header{-ms-overflow-style:none;overflow:-moz-scrollbars-none;margin-bottom:-5px!important}::ng-deep .ant-table-placeholder{border-bottom:none!important;border-top:none!important}.tabel-colunmn{display:block;width:160px;height:300px;background:#fff;border:1px solid #ddd;padding:10px;border-radius:5px;overflow-x:hidden;overflow-y:auto;position:relative}.tabel-colunmn-header{position:fixed;top:0;left:0;right:0;height:30px;z-index:999;line-height:30px;border-bottom:1px solid #ddd;text-align:left;font-size:13px;padding-left:10px}.t-tr{background:#fff}.t-tr:nth-child(odd){background:#f8f9fa}::ng-deep .ant-table-thead>tr>th{background:#e7ebef!important;border-radius:0;word-break:break-all;white-space:pre-wrap}::ng-deep .ant-table-tbody>tr>td{word-break:break-all;white-space:pre-wrap}::ng-deep .ant-table-header{background:#e7ebef!important}td{font-size:.65rem}.resize-trigger{height:100%}.nz-resizable-preview{border-width:0;border-right-width:1px}::ng-deep .ant-table-thead>tr>th .ant-table-header-column .ant-table-column-sorters>:not(.ant-table-column-sorter){position:unset}::ng-deep .ant-table-tbody>tr>td{padding:5px}::ng-deep .ant-table{line-height:15px}::ng-deep .ant-table-middle .ant-table-footer,.ant-table-middle .ant-table-tbody>tr>td,.ant-table-middle .ant-table-thead>tr>th,.ant-table-middle .ant-table-title{padding:5px}::ng-deep .ant-table-tbody>tr>td>img{width:35px}::ng-deep .ant-modal-body{padding:10px}::ng-deep .ant-table.ant-table-bordered tbody>tr>td{font-size:13px}::ng-deep th{z-index:80!important}.left-zindex-header{z-index:90!important}.left-zindex{z-index:80!important}:host ::ng-deep input,:host ::ng-deep .ant-select-single:not(.ant-select-customize-input) .ant-select-selector,:host ::ng-deep .ant-picker{border-radius:5px}.border-text{width:100%;height:36px;line-height:36px;display:flex}.border-text .border-text-line{display:inline-block;border-top:1px solid #cccccc;margin-top:18px}.border-text .border-text-line-left{width:10px;border-left:1px solid #cccccc}.border-text .border-text-line-right{flex:1;border-right:1px solid #cccccc}.border-text .border-text-span{margin-left:5px;margin-right:5px}.label-title{position:absolute;display:block;top:-7px;left:10px;background-color:#fff;color:#000;font-weight:600;font-size:12px;line-height:12px}:host ::ng-deep .tabel-colunmn-header{position:absolute!important;top:0!important}::ng-deep .ant-table-cell-fix-left,.ant-table-cell-fix-right{position:sticky!important}\n"] }]
132
+ args: [{ selector: 'app-table-td', template: "<ng-container [ngSwitch]=\"item.type\">\r\n <ng-container *ngSwitchCase=\"'textcolor'\">\r\n <div [innerHTML]=\"data[item.key] | defVal:item.defaultVal\" [ngStyle]=\"{'color':item.color}\"\r\n *ngIf=\"item.colorShow == data[item.key]\"></div>\r\n <div [innerHTML]=\"data[item.key] | defVal:item.defaultVal\" *ngIf=\"item.colorShow != data[item.key]\"></div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'date'\">\r\n <span nz-popover (mouseenter)=\"enter($event)\"\r\n [nzPopoverTrigger]=\"popoverTrigger\"\r\n [nzPopoverContent]=\"data[item.key] | date:'yyyy-MM-dd' | defVal:item.defaultVal\"\r\n class=\"view-text\">{{ data[item.key] | date:'yyyy-MM-dd' | defVal:item.defaultVal}}</span>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'dateTime'\">\r\n <span nz-popover (mouseenter)=\"enter($event)\"\r\n [nzPopoverTrigger]=\"popoverTrigger\"\r\n [nzPopoverContent]=\"data[item.key] | date:'yyyy-MM-dd HH:mm:ss' | defVal:item.defaultVal\"\r\n class=\"view-text\"> {{ data[item.key] | date:'yyyy-MM-dd HH:mm:ss' | defVal:item.defaultVal}}</span>\r\n </ng-container>\r\n <nz-switch *ngSwitchCase=\"'switch'\" [(ngModel)]=\"data[item.key]\" [nzDisabled]=\"item.disabled\"\r\n (ngModelChange)=\"doActionSwitch(data,item.key)\" nzCheckedChildren=\"\u662F\" nzUnCheckedChildren=\"\u5426\">\r\n </nz-switch>\r\n <ng-container *ngSwitchCase=\"'sDateTime'\">\r\n <span nz-popover (mouseenter)=\"enter($event)\"\r\n [nzPopoverTrigger]=\"popoverTrigger\"\r\n [nzPopoverContent]=\"data[item.key] | date:'MM-dd HH:mm' | defVal:item.defaultVal\"\r\n class=\"view-text\"> {{ data[item.key] | date:'MM-dd HH:mm' | defVal:item.defaultVal}}</span>\r\n </ng-container>\r\n <div *ngSwitchCase=\"'fixedText'\" [innerHTML]=\"item.key\"></div>\r\n\r\n <img *ngSwitchCase=\"'image'\" width=\"35px\" nzSrc=\"{{imagePrefix + (data[item.key] | defVal:item.defaultVal) }}\"\r\n nz-image atrErrorImg/>\r\n <div nz-row *ngSwitchCase=\"'action'\">\r\n <div class=\"action-area\" nz-col [nzSpan]=\"24\">\r\n <ng-container *ngFor=\"let action of item.actions\">\r\n <ng-container *ngIf=\"isShowBtn(data,action.operator,action)\">\r\n <ng-container *ngIf=\"!action.withoutRole\">\r\n <button nz-button\r\n [nzType]=\"action.buttonType&&action.buttonType != 'danger'? action.buttonType : 'primary'\"\r\n [nzDanger]=\"action.buttonType == 'danger'\"\r\n nzSize=\"small\" *atrRole=\"action.code\"\r\n (click)=\"doActionByRow(data,action.code,$event,i)\">\r\n <i nz-icon *ngIf=\"action.icon\" [nzType]=\"action.icon\"></i>\r\n {{action.name}}</button>\r\n </ng-container>\r\n <ng-container *ngIf=\"action.withoutRole\">\r\n <button nz-button\r\n [nzType]=\"action.buttonType&&action.buttonType != 'danger'? action.buttonType : 'primary'\"\r\n [nzDanger]=\"action.buttonType == 'danger'\"\r\n nzSize=\"small\" (click)=\"doActionByRow(data,action.code,$event,i)\">\r\n <i nz-icon *ngIf=\"action.icon\" [nzType]=\"action.icon\"></i>\r\n {{action.name}}</button>\r\n </ng-container>\r\n <!-- <button nz-button [nzType]=\"'primary'\" nzSize=\"small\" *atrRole=\"action.code\" (click)=\"doActionByRow(data,action.code,$event)\">{{action.name\r\n }}</button> -->\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div *ngSwitchCase=\"'dict'\" [innerHTML]=\"data[item.key] | dicts:item.dictCode | defVal:item.defaultVal\"></div>\r\n <div nz-popover (mouseenter)=\"enter($event)\"\r\n [nzPopoverTrigger]=\"popoverTrigger\" [nzPopoverContent]='data[item.key] | defVal:item.defaultVal'\r\n class=\"view-text\" *ngSwitchDefault [innerHTML]=\"data[item.key] | defVal:item.defaultVal\"></div>\r\n</ng-container>\r\n\r\n", styles: [":host{cursor:default}:host .view-text{display:inline-block;white-space:nowrap;width:100%;overflow:hidden;text-overflow:ellipsis}\n", ":host{width:100%;height:100%;display:flex;flex-direction:column}::ng-deep .ant-modal{top:50px;padding:0}.ant-advanced-search-form{padding:10px 6px 6px;background:#fbfbfb;border:1px solid #d9d9d9;border-radius:6px;margin-bottom:5px}.select-icon:hover{color:#1890ff}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:5px}::ng-deep .ant-table-column-title{font-size:.65rem}::ng-deep .ant-table-tbody>tr.ant-table-row:hover>td{background:#d0eeea}::ng-deep .ant-modal-header,::ng-deep .ant-modal-content{border-radius:4px}::ng-deep .ant-table-tbody>tr.selected:hover>td{background-color:#cfe1d0!important}::ng-deep .ant-table{height:100%}::ng-deep nz-pagination{position:absolute;bottom:0;right:0}.search-result-list{padding:1px;border:1px dashed #e9e9e9;border-radius:6px;background-color:#fff;flex:1;text-align:center;position:relative}[nz-form-label]{overflow:visible}button{margin:2px 4px}.collapse{margin-left:6px;font-size:12px}.action-area{text-align:left}.search-area{text-align:right}::ng-deep .main-table{position:absolute;top:0;left:0;right:0;bottom:0}::ng-deep .main-table .ant-spin-nested-loading{height:100%}::ng-deep .main-table .ant-spin-container{height:100%}::ng-deep .ant-table-tbody>tr.selected>td{background-color:#cfe1d0}::ng-deep .ant-table-tbody>tr>td>img{display:block;width:40%;margin:0 auto}::ng-deep .ant-table-body{-ms-overflow-style:none;overflow:-moz-scrollbars-none}::ng-deep .ant-table-body::-webkit-scrollbar,::ng-deep .ant-table-header::-webkit-scrollbar{width:6px!important;height:6px!important}::ng-deep .ant-table-body::-webkit-scrollbar-track,::ng-deep .ant-table-header::-webkit-scrollbar-track{width:6px!important;cursor:pointer}::ng-deep .ant-table-body::-webkit-scrollbar-thumb,::ng-deep .ant-table-header::-webkit-scrollbar-thumb{background:#1890ff;border-radius:3px;cursor:pointer}::ng-deep .ant-table-bordered .ant-table-thead>tr>th{border-right:1px solid #ddd}::ng-deep .ant-table-header{-ms-overflow-style:none;overflow:-moz-scrollbars-none;margin-bottom:-5px!important}::ng-deep .ant-table-placeholder{border-bottom:none!important;border-top:none!important}.tabel-colunmn{display:block;width:160px;height:300px;background:#fff;border:1px solid #ddd;padding:10px;border-radius:5px;overflow-x:hidden;overflow-y:auto;position:relative}.tabel-colunmn-header{position:fixed;top:0;left:0;right:0;height:30px;z-index:999;line-height:30px;border-bottom:1px solid #ddd;text-align:left;font-size:13px;padding-left:10px}.t-tr{background:#fff}.t-tr:nth-child(odd){background:#f8f9fa}::ng-deep .ant-table-thead>tr>th{background:#e7ebef!important;border-radius:0;word-break:break-all;white-space:pre-wrap}::ng-deep .ant-table-tbody>tr>td{word-break:break-all;white-space:pre-wrap}::ng-deep .ant-table-header{background:#e7ebef!important}td{font-size:.65rem}.resize-trigger{height:100%}.nz-resizable-preview{border-width:0;border-right-width:1px}::ng-deep .ant-table-thead>tr>th .ant-table-header-column .ant-table-column-sorters>:not(.ant-table-column-sorter){position:unset}::ng-deep .ant-table-tbody>tr>td{padding:5px}::ng-deep .ant-table{line-height:15px}::ng-deep .ant-table-middle .ant-table-footer,.ant-table-middle .ant-table-tbody>tr>td,.ant-table-middle .ant-table-thead>tr>th,.ant-table-middle .ant-table-title{padding:5px}::ng-deep .ant-table-tbody>tr>td>img{width:35px}::ng-deep .ant-modal-body{padding:10px}::ng-deep .ant-table.ant-table-bordered tbody>tr>td{font-size:13px}::ng-deep th{z-index:80!important}.left-zindex-header{z-index:90!important}.left-zindex{z-index:80!important}:host ::ng-deep input,:host ::ng-deep .ant-select-single:not(.ant-select-customize-input) .ant-select-selector,:host ::ng-deep .ant-picker{border-radius:5px}.border-text{width:100%;height:36px;line-height:36px;display:flex}.border-text .border-text-line{display:inline-block;border-top:1px solid #cccccc;margin-top:18px}.border-text .border-text-line-left{width:10px;border-left:1px solid #cccccc}.border-text .border-text-line-right{flex:1;border-right:1px solid #cccccc}.border-text .border-text-span{margin-left:5px;margin-right:5px}.label-title{position:absolute;display:block;top:-7px;left:10px;background-color:#fff;color:#000;font-weight:600;font-size:12px;line-height:12px}:host ::ng-deep .tabel-colunmn-header{position:absolute!important;top:0!important}::ng-deep .ant-table-cell-fix-left,.ant-table-cell-fix-right{position:sticky!important}\n"] }]
128
133
  }], ctorParameters: function () { return []; }, propDecorators: { data: [{
129
134
  type: Input
130
135
  }], item: [{
@@ -134,4 +139,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
134
139
  }], doActionByRowAction: [{
135
140
  type: Output
136
141
  }] } });
137
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL3NoYXJlZC90YWJsZS90YWJsZS10ZC90YWJsZS10ZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvc2hhcmVkL3RhYmxlL3RhYmxlLXRkL3RhYmxlLXRkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFN0UsT0FBTyxFQUFDLGdCQUFnQixFQUFxQixNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7Ozs7Ozs7OztBQU90RixNQUFNLE9BQU8sZ0JBQWdCO0lBVTNCO1FBTFUsd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUN4RCxtQkFBYyxHQUFPLE9BQU8sQ0FBQTtRQUU1QixnQkFBVyxHQUFHLGdCQUFnQixDQUFDLE9BQU8sQ0FBQztJQUd2QyxDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQWM7UUFDbkIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsUUFBUTtJQUNSLENBQUM7SUFFRCxhQUFhLENBQUMsSUFBUSxFQUFFLElBQVEsRUFBRSxLQUFpQixFQUFFLEtBQVM7UUFDNUQsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxFQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUMsQ0FBQyxDQUFBO0lBQ3JGLENBQUM7SUFFRCxLQUFLLENBQUMsQ0FBSztRQUNULElBQUksQ0FBQyxjQUFjLEdBQUcsQ0FBQyxDQUFD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Q2hCLEtBQUssSUFBSTtnQkFDUCxJQUFJLEtBQUssSUFBSSxNQUFNLEVBQUU7b0JBQ25CLE9BQU8sR0FBRyxJQUFJLENBQUM7aUJBQ2hCO2dCQUNELE1BQU07WUFDUixLQUFLLElBQUk7Z0JBQ1AsSUFBSSxLQUFLLElBQUksTUFBTSxFQUFFO29CQUNuQixPQUFPLEdBQUcsSUFBSSxDQUFDO2lCQUNoQjtnQkFDRCxNQUFNO1lBQ1IsS0FBSyxJQUFJO2dCQUNQLElBQUksS0FBSyxJQUFJLE1BQU0sRUFBRTtvQkFDbkIsT0FBTyxHQUFHLElBQUksQ0FBQztpQkFDaEI7Z0JBQ0QsTUFBSztZQUNQLEtBQUssVUFBVTtnQkFDYixPQUFPLEdBQUcsS0FBSyxDQUFDO2dCQUNoQixJQUFJLEtBQUssRUFBRTtvQkFDVCxPQUFPLEdBQUcsSUFBSSxDQUFDO2lCQUNoQjtnQkFDRCxNQUFNO1lBQ1IsS0FBSyxPQUFPO2dCQUNWLE9BQU8sR0FBRyxLQUFLLENBQUM7Z0JBQ2hCLElBQUksQ0FBQyxLQUFLLEVBQUU7b0JBQ1YsT0FBTyxHQUFHLElBQUksQ0FBQztpQkFDaEI7Z0JBQ0QsTUFBTTtZQUNSO2dCQUNFLE9BQU8sR0FBRyxLQUFLLENBQUM7Z0JBQ2hCLE1BQU07U0FDVDtRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7OzhHQWxIVSxnQkFBZ0I7a0dBQWhCLGdCQUFnQiw2SkNUN0IsK3VIQTZEQTs0RkRwRGEsZ0JBQWdCO2tCQUw1QixTQUFTOytCQUNFLGNBQWM7MEVBS2YsSUFBSTtzQkFBWixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxDQUFDO3NCQUFULEtBQUs7Z0JBRUksbUJBQW1CO3NCQUE1QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtlbnZpcm9ubWVudH0gZnJvbSBcIm5nLXpvcnJvLWFudGQvY29yZS9lbnZpcm9ubWVudHNcIjtcclxuaW1wb3J0IHthdHJfc3RhdGljX2RhdGFzLCBUYWJsZSwgVGFibGVBY3Rpb259IGZyb20gXCIuLi8uLi8uLi8uLi9jb3JlL2Jhc2UvYXRyLWNvbW1vblwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtdGFibGUtdGQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90YWJsZS10ZC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdGFibGUtdGQuY29tcG9uZW50LnNjc3MnLCAnLi4vdGFibGUuY29tcG9uZW50Lmxlc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGFibGVUZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgZGF0YTphbnlcclxuICBASW5wdXQoKSBpdGVtOiBUYWJsZSB8YW55O1xyXG4gIEBJbnB1dCgpIGk6YW55XHJcblxyXG4gIEBPdXRwdXQoKSBkb0FjdGlvbkJ5Um93QWN0aW9uID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgcG9wb3ZlclRyaWdnZXI6YW55ID0gJ2hvdmVyJ1xyXG5cclxuICBpbWFnZVByZWZpeCA9IGF0cl9zdGF0aWNfZGF0YXMuT1NTX1VSTDtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgfVxyXG5cclxuICBjaGFuZ2UodmFsdWU6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIGNvbnNvbGUubG9nKHZhbHVlKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gIH1cclxuXHJcbiAgZG9BY3Rpb25CeVJvdyhkYXRhOmFueSwgY29kZTphbnksIGV2ZW50OiBNb3VzZUV2ZW50LCBpbmRleDphbnkpIHtcclxuICAgIHRoaXMuZG9BY3Rpb25CeVJvd0FjdGlvbi5lbWl0KHtkYXRhOiBkYXRhLCBjb2RlOiBjb2RlLCBldmVudDogZXZlbnQsIGluZGV4OiBpbmRleH0pXHJcbiAgfVxyXG5cclxuICBlbnRlcihlOmFueSkge1xyXG4gICAgdGhpcy5wb3BvdmVyVHJpZ2dlciA9IGUudG9FbGVtZW50LmNsaWVudFdpZHRoIDwgZS50b0VsZW1lbnQuc2Nyb2xsV2lkdGggPyAnaG92ZXInIDogbnVsbDtcclxuICB9XHJcblxyXG4gIGlzU2hvd0J0bihkYXRhOiBhbnksIG9wZXJhdG9yOiBzdHJpbmcsIGFjdGlvbj86VGFibGVBY3Rpb24pOiBib29sZWFuIHtcclxuICAgIGxldCBpc1Nob3cgPSBmYWxzZTtcclxuICAgIGlmICghb3BlcmF0b3IgfHwgb3BlcmF0b3IgPT0gbnVsbCB8fCBvcGVyYXRvciA9PSBcIlwiKSB7XHJcbiAgICAgIGlzU2hvdyA9IHRydWU7XHJcbiAgICB9IGVsc2UgaWYgKG9wZXJhdG9yLmluZGV4T2YoJyYmJykgPiAwKSB7XHJcbiAgICAgIC8vIGF8ZXF8YiAmJmN8ZXF8ZFxyXG4gICAgICBjb25zdCBvcHMgPSBvcGVyYXRvci5zcGxpdCgnJiYnKTtcclxuICAgICAgaWYgKG9wcy5sZW5ndGggPiAxKSB7XHJcbiAgICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOnByZWZlci1mb3Itb2ZcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG9wcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgaXNTaG93ID0gdHJ1ZVxyXG4gICAgICAgICAgaWYgKCF0aGlzLmNoZWNrSXNTaG93QmFzZShvcHNbaV0uc3BsaXQoJ3wnKSwgZGF0YSkpIHtcclxuICAgICAgICAgICAgaXNTaG93ID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmIChvcGVyYXRvci5pbmRleE9mKCd8fCcpID4gMCkge1xyXG4gICAgICAvLyBhfGVxfGJ8fGN8ZXF8ZFxyXG4gICAgICBjb25zdCBvcHMgPSBvcGVyYXRvci5zcGxpdCgnfHwnKTtcclxuICAgICAgaWYgKG9wcy5sZW5ndGggPiAxKSB7XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBvcHMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgIGlzU2hvdyA9IGZhbHNlO1xyXG4gICAgICAgICAgaWYgKHRoaXMuY2hlY2tJc1Nob3dCYXNlKG9wc1tpXS5zcGxpdCgnfCcpLCBkYXRhKSkge1xyXG4gICAgICAgICAgICBpc1Nob3cgPSB0cnVlO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGxldCBvcCA9IG9wZXJhdG9yLnNwbGl0KFwifFwiKTtcclxuICAgICAgaXNTaG93ID0gdGhpcy5jaGVja0lzU2hvd0Jhc2Uob3AsIGRhdGEpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGlzU2hvdztcclxuICB9XHJcblxyXG4gIGNoZWNrSXNTaG93QmFzZShvcDphbnksIGRhdGE6YW55KTogYm9vbGVhbiB7XHJcbiAgICBsZXQgaXNTaG93ID0gZmFsc2U7XHJcbiAgICBpZiAob3AubGVuZ3RoID4gMSkge1xyXG4gICAgICBsZXQgdmFsdWUgPSBkYXRhW29wWzBdXTtcclxuICAgICAgaWYgKCF2YWx1ZSkge1xyXG4gICAgICAgIGlzU2hvdyA9IGZhbHNlO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlzU2hvdyA9IHRoaXMuY29tcGFyZSh2YWx1ZSwgb3BbMV0sIG9wWzJdKVxyXG4gICAgICB9XHJcbiAgICB9IGVsc2VcclxuICAgICAgaXNTaG93ID0gZmFsc2VcclxuXHJcbiAgICByZXR1cm4gaXNTaG93O1xyXG4gIH1cclxuXHJcbiAgY29tcGFyZSh2YWx1ZTphbnksIG9wZXJhdG9yOmFueSwgdGFyZ2V0OmFueSk6IGJvb2xlYW4ge1xyXG4gICAgbGV0IGlzUmlnaHQgPSBmYWxzZTtcclxuICAgIHN3aXRjaCAob3BlcmF0b3IpIHtcclxuICAgICAgY2FzZSAnZXEnIDpcclxuICAgICAgICBpZiAodmFsdWUgPT0gdGFyZ2V0KSB7XHJcbiAgICAgICAgICBpc1JpZ2h0ID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2doJyA6XHJcbiAgICAgICAgaWYgKHZhbHVlID49IHRhcmdldCkge1xyXG4gICAgICAgICAgaXNSaWdodCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICduZSc6XHJcbiAgICAgICAgaWYgKHZhbHVlICE9IHRhcmdldCkge1xyXG4gICAgICAgICAgaXNSaWdodCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyZWFrXHJcbiAgICAgIGNhc2UgJ25vdEVtcHR5JzpcclxuICAgICAgICBpc1JpZ2h0ID0gZmFsc2U7XHJcbiAgICAgICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgICAgICBpc1JpZ2h0ID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2VtcHR5JzpcclxuICAgICAgICBpc1JpZ2h0ID0gZmFsc2U7XHJcbiAgICAgICAgaWYgKCF2YWx1ZSkge1xyXG4gICAgICAgICAgaXNSaWdodCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBkZWZhdWx0IDpcclxuICAgICAgICBpc1JpZ2h0ID0gZmFsc2U7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gaXNSaWdodDtcclxuICB9XHJcblxyXG59XHJcbiIsIjxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cIml0ZW0udHlwZVwiPlxyXG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIid0ZXh0Y29sb3InXCI+XHJcbiAgICA8ZGl2IFtpbm5lckhUTUxdPVwiZGF0YVtpdGVtLmtleV0gfCBkZWZWYWw6aXRlbS5kZWZhdWx0VmFsXCIgW25nU3R5bGVdPVwieydjb2xvcic6aXRlbS5jb2xvcn1cIlxyXG4gICAgICAgICAqbmdJZj1cIml0ZW0uY29sb3JTaG93ID09IGRhdGFbaXRlbS5rZXldXCI+PC9kaXY+XHJcbiAgICA8ZGl2IFtpbm5lckhUTUxdPVwiZGF0YVtpdGVtLmtleV0gfCBkZWZWYWw6aXRlbS5kZWZhdWx0VmFsXCIgKm5nSWY9XCJpdGVtLmNvbG9yU2hvdyAhPSBkYXRhW2l0ZW0ua2V5XVwiPjwvZGl2PlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidkYXRlJ1wiPlxyXG4gICAgICAgPHNwYW4gbnotcG9wb3ZlciAobW91c2VlbnRlcik9XCJlbnRlcigkZXZlbnQpXCJcclxuICAgICAgICAgICAgIFtuelBvcG92ZXJUcmlnZ2VyXT1cInBvcG92ZXJUcmlnZ2VyXCJcclxuICAgICAgICAgICAgIFtuelBvcG92ZXJDb250ZW50XT1cImRhdGFbaXRlbS5rZXldIHwgZGF0ZToneXl5eS1NTS1kZCcgfCBkZWZWYWw6aXRlbS5kZWZhdWx0VmFsXCJcclxuICAgICAgICAgICAgIGNsYXNzPVwidmlldy10ZXh0XCI+e3sgZGF0YVtpdGVtLmtleV0gfCBkYXRlOid5eXl5LU1NLWRkJyB8IGRlZlZhbDppdGVtLmRlZmF1bHRWYWx9fTwvc3Bhbj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInZGF0ZVRpbWUnXCI+XHJcbiAgICAgIDxzcGFuIG56LXBvcG92ZXIgKG1vdXNlZW50ZXIpPVwiZW50ZXIoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgIFtuelBvcG92ZXJUcmlnZ2VyXT1cInBvcG92ZXJUcmlnZ2VyXCJcclxuICAgICAgICAgICAgW256UG9wb3ZlckNvbnRlbnRdPVwiZGF0YVtpdGVtLmtleV0gfCBkYXRlOid5eXl5LU1NLWRkIEhIOm1tOnNzJyB8IGRlZlZhbDppdGVtLmRlZmF1bHRWYWxcIlxyXG4gICAgICAgICAgICBjbGFzcz1cInZpZXctdGV4dFwiPiB7eyBkYXRhW2l0ZW0ua2V5XSB8IGRhdGU6J3l5eXktTU0tZGQgSEg6bW06c3MnIHwgZGVmVmFsOml0ZW0uZGVmYXVsdFZhbH19PC9zcGFuPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidzRGF0ZVRpbWUnXCI+XHJcbiAgICAgIDxzcGFuIG56LXBvcG92ZXIgKG1vdXNlZW50ZXIpPVwiZW50ZXIoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgIFtuelBvcG92ZXJUcmlnZ2VyXT1cInBvcG92ZXJUcmlnZ2VyXCJcclxuICAgICAgICAgICAgW256UG9wb3ZlckNvbnRlbnRdPVwiZGF0YVtpdGVtLmtleV0gfCBkYXRlOidNTS1kZCBISDptbScgfCBkZWZWYWw6aXRlbS5kZWZhdWx0VmFsXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJ2aWV3LXRleHRcIj4gIHt7IGRhdGFbaXRlbS5rZXldIHwgZGF0ZTonTU0tZGQgSEg6bW0nIHwgZGVmVmFsOml0ZW0uZGVmYXVsdFZhbH19PC9zcGFuPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG4gIDxkaXYgKm5nU3dpdGNoQ2FzZT1cIidmaXhlZFRleHQnXCIgW2lubmVySFRNTF09XCJpdGVtLmtleVwiPjwvZGl2PlxyXG5cclxuICA8aW1nICpuZ1N3aXRjaENhc2U9XCInaW1hZ2UnXCIgd2lkdGg9XCIzNXB4XCIgbnpTcmM9XCJ7e2ltYWdlUHJlZml4ICsgKGRhdGFbaXRlbS5rZXldIHwgZGVmVmFsOml0ZW0uZGVmYXVsdFZhbCkgfX1cIlxyXG4gICAgICAgbnotaW1hZ2UgYXRyRXJyb3JJbWcvPlxyXG4gIDxkaXYgbnotcm93ICpuZ1N3aXRjaENhc2U9XCInYWN0aW9uJ1wiPlxyXG4gICAgPGRpdiBjbGFzcz1cImFjdGlvbi1hcmVhXCIgbnotY29sIFtuelNwYW5dPVwiMjRcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgYWN0aW9uIG9mIGl0ZW0uYWN0aW9uc1wiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc1Nob3dCdG4oZGF0YSxhY3Rpb24ub3BlcmF0b3IsYWN0aW9uKVwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFhY3Rpb24ud2l0aG91dFJvbGVcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBuei1idXR0b25cclxuICAgICAgICAgICAgICAgICAgICBbbnpUeXBlXT1cImFjdGlvbi5idXR0b25UeXBlJiZhY3Rpb24uYnV0dG9uVHlwZSAhPSAnZGFuZ2VyJz8gYWN0aW9uLmJ1dHRvblR5cGUgOiAncHJpbWFyeSdcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtuekRhbmdlcl09XCJhY3Rpb24uYnV0dG9uVHlwZSA9PSAnZGFuZ2VyJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgbnpTaXplPVwic21hbGxcIiAqYXRyUm9sZT1cImFjdGlvbi5jb2RlXCJcclxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZG9BY3Rpb25CeVJvdyhkYXRhLGFjdGlvbi5jb2RlLCRldmVudCxpKVwiPlxyXG4gICAgICAgICAgICAgIDxpIG56LWljb24gKm5nSWY9XCJhY3Rpb24uaWNvblwiIFtuelR5cGVdPVwiYWN0aW9uLmljb25cIj48L2k+XHJcbiAgICAgICAgICAgICAge3thY3Rpb24ubmFtZX19PC9idXR0b24+XHJcbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhY3Rpb24ud2l0aG91dFJvbGVcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBuei1idXR0b25cclxuICAgICAgICAgICAgICAgICAgICBbbnpUeXBlXT1cImFjdGlvbi5idXR0b25UeXBlJiZhY3Rpb24uYnV0dG9uVHlwZSAhPSAnZGFuZ2VyJz8gYWN0aW9uLmJ1dHRvblR5cGUgOiAncHJpbWFyeSdcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtuekRhbmdlcl09XCJhY3Rpb24uYnV0dG9uVHlwZSA9PSAnZGFuZ2VyJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgbnpTaXplPVwic21hbGxcIiAoY2xpY2spPVwiZG9BY3Rpb25CeVJvdyhkYXRhLGFjdGlvbi5jb2RlLCRldmVudCxpKVwiPlxyXG4gICAgICAgICAgICAgIDxpIG56LWljb24gKm5nSWY9XCJhY3Rpb24uaWNvblwiIFtuelR5cGVdPVwiYWN0aW9uLmljb25cIj48L2k+XHJcbiAgICAgICAgICAgICAge3thY3Rpb24ubmFtZX19PC9idXR0b24+XHJcbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgIDwhLS0gPGJ1dHRvbiBuei1idXR0b24gW256VHlwZV09XCIncHJpbWFyeSdcIiBuelNpemU9XCJzbWFsbFwiICphdHJSb2xlPVwiYWN0aW9uLmNvZGVcIiAoY2xpY2spPVwiZG9BY3Rpb25CeVJvdyhkYXRhLGFjdGlvbi5jb2RlLCRldmVudClcIj57e2FjdGlvbi5uYW1lXHJcbiAgICAgICAgICB9fTwvYnV0dG9uPiAtLT5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2ICpuZ1N3aXRjaENhc2U9XCInZGljdCdcIiBbaW5uZXJIVE1MXT1cImRhdGFbaXRlbS5rZXldIHwgZGljdHM6aXRlbS5kaWN0Q29kZSB8IGRlZlZhbDppdGVtLmRlZmF1bHRWYWxcIj48L2Rpdj5cclxuICA8ZGl2IG56LXBvcG92ZXIgKG1vdXNlZW50ZXIpPVwiZW50ZXIoJGV2ZW50KVwiXHJcbiAgICAgICBbbnpQb3BvdmVyVHJpZ2dlcl09XCJwb3BvdmVyVHJpZ2dlclwiIFtuelBvcG92ZXJDb250ZW50XT0nZGF0YVtpdGVtLmtleV0gfCBkZWZWYWw6aXRlbS5kZWZhdWx0VmFsJ1xyXG4gICAgICAgY2xhc3M9XCJ2aWV3LXRleHRcIiAqbmdTd2l0Y2hEZWZhdWx0IFtpbm5lckhUTUxdPVwiZGF0YVtpdGVtLmtleV0gfCBkZWZWYWw6aXRlbS5kZWZhdWx0VmFsXCI+PC9kaXY+XHJcbjwvbmctY29udGFpbmVyPlxyXG5cclxuIl19
142
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL3NoYXJlZC90YWJsZS90YWJsZS10ZC90YWJsZS10ZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvc2hhcmVkL3RhYmxlL3RhYmxlLXRkL3RhYmxlLXRkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFN0UsT0FBTyxFQUFDLGdCQUFnQixFQUFxQixNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7O0FBT3RGLE1BQU0sT0FBTyxnQkFBZ0I7SUFVM0I7UUFMVSx3QkFBbUIsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ3hELG1CQUFjLEdBQU8sT0FBTyxDQUFBO1FBRTVCLGdCQUFXLEdBQUcsZ0JBQWdCLENBQUMsT0FBTyxDQUFDO0lBR3ZDLENBQUM7SUFDRCxjQUFjLENBQUMsSUFBUSxFQUFFLElBQVEsRUFBRSxLQUFrQixFQUFFLEtBQVU7UUFDL0QsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxFQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUMsQ0FBQyxDQUFBO0lBQ3JGLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBYztRQUNuQixPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxRQUFRO0lBQ1IsQ0FBQztJQUVELGFBQWEsQ0FBQyxJQUFRLEVBQUUsSUFBUSxFQUFFLEtBQWlCLEVBQUUsS0FBUztRQUM1RCxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEVBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBQyxDQUFDLENBQUE7SUFDckYsQ0FBQztJQUVELEtBQUssQ0FBQyxDQUFLO1FBQ1QsSUFBSSxDQUFDLGNBQWMsR0FBRyxDQUFDLENBQUMsU0FBUyxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDM0YsQ0FBQztJQUVELFNBQVMsQ0FBQyxJQUFTLEVBQUUsUUFBZ0IsRUFBRSxNQUFtQjtRQUN4RCxJQUFJLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLFFBQVEsSUFBSSxRQUFRLElBQUksSUFBSSxJQUFJLFFBQVEsSUFBSSxFQUFFLEVBQUU7WUFDbkQsTUFBTSxHQUFHLElBQUksQ0FBQztTQUNmO2FBQU0sSUFBSSxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNyQyxrQkFBa0I7WUFDbEIsTUFBTSxHQUFHLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNqQyxJQUFJLEdBQUcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUNsQix5Q0FBeUM7Z0JBQ3pDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO29CQUNuQyxNQUFNLEdBQUcsSUFBSSxDQUFBO29CQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsSUFBSSxDQUFDLEVBQUU7d0JBQ2xELE1BQU0sR0FBRyxLQUFLLENBQUM7d0JBQ2YsTUFBTTtxQkFDUDtpQkFDRjthQUNGO1NBQ0Y7YUFBTSxJQUFJLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3JDLGlCQUFpQjtZQUNqQixNQUFNLEdBQUcsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2pDLElBQUksR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQ2xCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO29CQUNuQyxNQUFNLEdBQUcsS0FBSyxDQUFDO29CQUNmLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksQ0FBQyxFQUFFO3dCQUNqRCxNQUFNLEdBQUcsSUFBSSxDQUFDO3dCQUNkLE1BQU07cUJBQ1A7aUJBQ0Y7YUFDRjtTQUNGO2FBQU07WUFDTCxJQUFJLEVBQUUsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzdCLE1BQU0sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztTQUN6QztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxlQUFlLENBQUMsRUFBTSxFQUFFLElBQVE7UUFDOUIsSUFBSSxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksRUFBRSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDakIsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3hCLElBQUksQ0FBQyxLQUFLLEVBQUU7Z0JBQ1YsTUFBTSxHQUFHLEtBQUssQ0FBQzthQUNoQjtpQkFBTTtnQkFDTCxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO2FBQzNDO1NBQ0Y7O1lBQ0MsTUFBTSxHQUFHLEtBQUssQ0FBQTtRQUVoQixPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQsT0FBTyxDQUFDLEtBQVMsRUFBRSxRQUFZLEVBQUUsTUFBVTtRQUN6QyxJQUFJLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDcEIsUUFBUSxRQUFRLEVBQUU7WUFDaEIsS0FBSyxJQUFJO2dCQUNQLElBQUksS0FBSyxJQUFJLE1BQU0sRUFBRTtvQkFDbkIsT0FBTyxHQUFHLElBQUksQ0FBQztpQkFDaEI7Z0JBQ0QsTUFBTTtZQUNSLEtBQUssSUFBSTtnQkFDUCxJQUFJLEtBQUssSUFBSSxNQUFNLEVBQUU7b0JBQ25CLE9BQU8sR0FBRyxJQUFJLENBQUM7aUJBQ2hCO2dCQUNELE1BQU07WUFDUixLQUFLLElBQUk7Z0JBQ1AsSUFBSSxLQUFLLElBQUksTUFBTSxFQUFFO29CQUNuQixPQUFPLEdBQUcsSUFBSSxDQUFDO2lCQUNoQjtnQkFDRCxNQUFLO1lBQ1AsS0FBSyxVQUFVO2dCQUNiLE9BQU8sR0FBRyxLQUFLLENBQUM7Z0JBQ2hCLElBQUksS0FBSyxFQUFFO29CQUNULE9BQU8sR0FBRyxJQUFJLENBQUM7aUJBQ2hCO2dCQUNELE1BQU07WUFDUixLQUFLLE9BQU87Z0JBQ1YsT0FBTyxHQUFHLEtBQUssQ0FBQztnQkFDaEIsSUFBSSxDQUFDLEtBQUssRUFBRTtvQkFDVixPQUFPLEdBQUcsSUFBSSxDQUFDO2lCQUNoQjtnQkFDRCxNQUFNO1lBQ1I7Z0JBQ0UsT0FBTyxHQUFHLEtBQUssQ0FBQztnQkFDaEIsTUFBTTtTQUNUO1FBQ0QsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQzs7OEdBckhVLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLDZKQ1Q3Qix5K0hBZ0VBOzRGRHZEYSxnQkFBZ0I7a0JBTDVCLFNBQVM7K0JBQ0UsY0FBYzswRUFLZixJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLENBQUM7c0JBQVQsS0FBSztnQkFFSSxtQkFBbUI7c0JBQTVCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge2Vudmlyb25tZW50fSBmcm9tIFwibmctem9ycm8tYW50ZC9jb3JlL2Vudmlyb25tZW50c1wiO1xyXG5pbXBvcnQge2F0cl9zdGF0aWNfZGF0YXMsIFRhYmxlLCBUYWJsZUFjdGlvbn0gZnJvbSBcIi4uLy4uLy4uLy4uL2NvcmUvYmFzZS9hdHItY29tbW9uXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC10YWJsZS10ZCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLXRkLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90YWJsZS10ZC5jb21wb25lbnQuc2NzcycsICcuLi90YWJsZS5jb21wb25lbnQubGVzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUYWJsZVRkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKSBkYXRhOmFueVxyXG4gIEBJbnB1dCgpIGl0ZW06IFRhYmxlIHxhbnk7XHJcbiAgQElucHV0KCkgaTphbnlcclxuXHJcbiAgQE91dHB1dCgpIGRvQWN0aW9uQnlSb3dBY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBwb3BvdmVyVHJpZ2dlcjphbnkgPSAnaG92ZXInXHJcblxyXG4gIGltYWdlUHJlZml4ID0gYXRyX3N0YXRpY19kYXRhcy5PU1NfVVJMO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICB9XHJcbiAgZG9BY3Rpb25Td2l0Y2goZGF0YTphbnksIGNvZGU6YW55LCBldmVudD86IE1vdXNlRXZlbnQsIGluZGV4PzphbnkpIHtcclxuICAgIHRoaXMuZG9BY3Rpb25CeVJvd0FjdGlvbi5lbWl0KHtkYXRhOiBkYXRhLCBjb2RlOiBjb2RlLCBldmVudDogZXZlbnQsIGluZGV4OiBpbmRleH0pXHJcbiAgfVxyXG5cclxuICBjaGFuZ2UodmFsdWU6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIGNvbnNvbGUubG9nKHZhbHVlKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gIH1cclxuXHJcbiAgZG9BY3Rpb25CeVJvdyhkYXRhOmFueSwgY29kZTphbnksIGV2ZW50OiBNb3VzZUV2ZW50LCBpbmRleDphbnkpIHtcclxuICAgIHRoaXMuZG9BY3Rpb25CeVJvd0FjdGlvbi5lbWl0KHtkYXRhOiBkYXRhLCBjb2RlOiBjb2RlLCBldmVudDogZXZlbnQsIGluZGV4OiBpbmRleH0pXHJcbiAgfVxyXG5cclxuICBlbnRlcihlOmFueSkge1xyXG4gICAgdGhpcy5wb3BvdmVyVHJpZ2dlciA9IGUudG9FbGVtZW50LmNsaWVudFdpZHRoIDwgZS50b0VsZW1lbnQuc2Nyb2xsV2lkdGggPyAnaG92ZXInIDogbnVsbDtcclxuICB9XHJcblxyXG4gIGlzU2hvd0J0bihkYXRhOiBhbnksIG9wZXJhdG9yOiBzdHJpbmcsIGFjdGlvbj86VGFibGVBY3Rpb24pOiBib29sZWFuIHtcclxuICAgIGxldCBpc1Nob3cgPSBmYWxzZTtcclxuICAgIGlmICghb3BlcmF0b3IgfHwgb3BlcmF0b3IgPT0gbnVsbCB8fCBvcGVyYXRvciA9PSBcIlwiKSB7XHJcbiAgICAgIGlzU2hvdyA9IHRydWU7XHJcbiAgICB9IGVsc2UgaWYgKG9wZXJhdG9yLmluZGV4T2YoJyYmJykgPiAwKSB7XHJcbiAgICAgIC8vIGF8ZXF8YiAmJmN8ZXF8ZFxyXG4gICAgICBjb25zdCBvcHMgPSBvcGVyYXRvci5zcGxpdCgnJiYnKTtcclxuICAgICAgaWYgKG9wcy5sZW5ndGggPiAxKSB7XHJcbiAgICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOnByZWZlci1mb3Itb2ZcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG9wcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgaXNTaG93ID0gdHJ1ZVxyXG4gICAgICAgICAgaWYgKCF0aGlzLmNoZWNrSXNTaG93QmFzZShvcHNbaV0uc3BsaXQoJ3wnKSwgZGF0YSkpIHtcclxuICAgICAgICAgICAgaXNTaG93ID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmIChvcGVyYXRvci5pbmRleE9mKCd8fCcpID4gMCkge1xyXG4gICAgICAvLyBhfGVxfGJ8fGN8ZXF8ZFxyXG4gICAgICBjb25zdCBvcHMgPSBvcGVyYXRvci5zcGxpdCgnfHwnKTtcclxuICAgICAgaWYgKG9wcy5sZW5ndGggPiAxKSB7XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBvcHMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgIGlzU2hvdyA9IGZhbHNlO1xyXG4gICAgICAgICAgaWYgKHRoaXMuY2hlY2tJc1Nob3dCYXNlKG9wc1tpXS5zcGxpdCgnfCcpLCBkYXRhKSkge1xyXG4gICAgICAgICAgICBpc1Nob3cgPSB0cnVlO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGxldCBvcCA9IG9wZXJhdG9yLnNwbGl0KFwifFwiKTtcclxuICAgICAgaXNTaG93ID0gdGhpcy5jaGVja0lzU2hvd0Jhc2Uob3AsIGRhdGEpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGlzU2hvdztcclxuICB9XHJcblxyXG4gIGNoZWNrSXNTaG93QmFzZShvcDphbnksIGRhdGE6YW55KTogYm9vbGVhbiB7XHJcbiAgICBsZXQgaXNTaG93ID0gZmFsc2U7XHJcbiAgICBpZiAob3AubGVuZ3RoID4gMSkge1xyXG4gICAgICBsZXQgdmFsdWUgPSBkYXRhW29wWzBdXTtcclxuICAgICAgaWYgKCF2YWx1ZSkge1xyXG4gICAgICAgIGlzU2hvdyA9IGZhbHNlO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlzU2hvdyA9IHRoaXMuY29tcGFyZSh2YWx1ZSwgb3BbMV0sIG9wWzJdKVxyXG4gICAgICB9XHJcbiAgICB9IGVsc2VcclxuICAgICAgaXNTaG93ID0gZmFsc2VcclxuXHJcbiAgICByZXR1cm4gaXNTaG93O1xyXG4gIH1cclxuXHJcbiAgY29tcGFyZSh2YWx1ZTphbnksIG9wZXJhdG9yOmFueSwgdGFyZ2V0OmFueSk6IGJvb2xlYW4ge1xyXG4gICAgbGV0IGlzUmlnaHQgPSBmYWxzZTtcclxuICAgIHN3aXRjaCAob3BlcmF0b3IpIHtcclxuICAgICAgY2FzZSAnZXEnIDpcclxuICAgICAgICBpZiAodmFsdWUgPT0gdGFyZ2V0KSB7XHJcbiAgICAgICAgICBpc1JpZ2h0ID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2doJyA6XHJcbiAgICAgICAgaWYgKHZhbHVlID49IHRhcmdldCkge1xyXG4gICAgICAgICAgaXNSaWdodCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICduZSc6XHJcbiAgICAgICAgaWYgKHZhbHVlICE9IHRhcmdldCkge1xyXG4gICAgICAgICAgaXNSaWdodCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyZWFrXHJcbiAgICAgIGNhc2UgJ25vdEVtcHR5JzpcclxuICAgICAgICBpc1JpZ2h0ID0gZmFsc2U7XHJcbiAgICAgICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgICAgICBpc1JpZ2h0ID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2VtcHR5JzpcclxuICAgICAgICBpc1JpZ2h0ID0gZmFsc2U7XHJcbiAgICAgICAgaWYgKCF2YWx1ZSkge1xyXG4gICAgICAgICAgaXNSaWdodCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBkZWZhdWx0IDpcclxuICAgICAgICBpc1JpZ2h0ID0gZmFsc2U7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gaXNSaWdodDtcclxuICB9XHJcblxyXG59XHJcbiIsIjxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cIml0ZW0udHlwZVwiPlxyXG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIid0ZXh0Y29sb3InXCI+XHJcbiAgICA8ZGl2IFtpbm5lckhUTUxdPVwiZGF0YVtpdGVtLmtleV0gfCBkZWZWYWw6aXRlbS5kZWZhdWx0VmFsXCIgW25nU3R5bGVdPVwieydjb2xvcic6aXRlbS5jb2xvcn1cIlxyXG4gICAgICAgICAqbmdJZj1cIml0ZW0uY29sb3JTaG93ID09IGRhdGFbaXRlbS5rZXldXCI+PC9kaXY+XHJcbiAgICA8ZGl2IFtpbm5lckhUTUxdPVwiZGF0YVtpdGVtLmtleV0gfCBkZWZWYWw6aXRlbS5kZWZhdWx0VmFsXCIgKm5nSWY9XCJpdGVtLmNvbG9yU2hvdyAhPSBkYXRhW2l0ZW0ua2V5XVwiPjwvZGl2PlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidkYXRlJ1wiPlxyXG4gICAgICAgPHNwYW4gbnotcG9wb3ZlciAobW91c2VlbnRlcik9XCJlbnRlcigkZXZlbnQpXCJcclxuICAgICAgICAgICAgIFtuelBvcG92ZXJUcmlnZ2VyXT1cInBvcG92ZXJUcmlnZ2VyXCJcclxuICAgICAgICAgICAgIFtuelBvcG92ZXJDb250ZW50XT1cImRhdGFbaXRlbS5rZXldIHwgZGF0ZToneXl5eS1NTS1kZCcgfCBkZWZWYWw6aXRlbS5kZWZhdWx0VmFsXCJcclxuICAgICAgICAgICAgIGNsYXNzPVwidmlldy10ZXh0XCI+e3sgZGF0YVtpdGVtLmtleV0gfCBkYXRlOid5eXl5LU1NLWRkJyB8IGRlZlZhbDppdGVtLmRlZmF1bHRWYWx9fTwvc3Bhbj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInZGF0ZVRpbWUnXCI+XHJcbiAgICAgIDxzcGFuIG56LXBvcG92ZXIgKG1vdXNlZW50ZXIpPVwiZW50ZXIoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgIFtuelBvcG92ZXJUcmlnZ2VyXT1cInBvcG92ZXJUcmlnZ2VyXCJcclxuICAgICAgICAgICAgW256UG9wb3ZlckNvbnRlbnRdPVwiZGF0YVtpdGVtLmtleV0gfCBkYXRlOid5eXl5LU1NLWRkIEhIOm1tOnNzJyB8IGRlZlZhbDppdGVtLmRlZmF1bHRWYWxcIlxyXG4gICAgICAgICAgICBjbGFzcz1cInZpZXctdGV4dFwiPiB7eyBkYXRhW2l0ZW0ua2V5XSB8IGRhdGU6J3l5eXktTU0tZGQgSEg6bW06c3MnIHwgZGVmVmFsOml0ZW0uZGVmYXVsdFZhbH19PC9zcGFuPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG4gIDxuei1zd2l0Y2ggKm5nU3dpdGNoQ2FzZT1cIidzd2l0Y2gnXCIgWyhuZ01vZGVsKV09XCJkYXRhW2l0ZW0ua2V5XVwiIFtuekRpc2FibGVkXT1cIml0ZW0uZGlzYWJsZWRcIlxyXG4gICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwiZG9BY3Rpb25Td2l0Y2goZGF0YSxpdGVtLmtleSlcIiBuekNoZWNrZWRDaGlsZHJlbj1cIuaYr1wiIG56VW5DaGVja2VkQ2hpbGRyZW49XCLlkKZcIj5cclxuICA8L256LXN3aXRjaD5cclxuICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInc0RhdGVUaW1lJ1wiPlxyXG4gICAgICA8c3BhbiBuei1wb3BvdmVyIChtb3VzZWVudGVyKT1cImVudGVyKCRldmVudClcIlxyXG4gICAgICAgICAgICBbbnpQb3BvdmVyVHJpZ2dlcl09XCJwb3BvdmVyVHJpZ2dlclwiXHJcbiAgICAgICAgICAgIFtuelBvcG92ZXJDb250ZW50XT1cImRhdGFbaXRlbS5rZXldIHwgZGF0ZTonTU0tZGQgSEg6bW0nIHwgZGVmVmFsOml0ZW0uZGVmYXVsdFZhbFwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwidmlldy10ZXh0XCI+ICB7eyBkYXRhW2l0ZW0ua2V5XSB8IGRhdGU6J01NLWRkIEhIOm1tJyB8IGRlZlZhbDppdGVtLmRlZmF1bHRWYWx9fTwvc3Bhbj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuICA8ZGl2ICpuZ1N3aXRjaENhc2U9XCInZml4ZWRUZXh0J1wiIFtpbm5lckhUTUxdPVwiaXRlbS5rZXlcIj48L2Rpdj5cclxuXHJcbiAgPGltZyAqbmdTd2l0Y2hDYXNlPVwiJ2ltYWdlJ1wiIHdpZHRoPVwiMzVweFwiIG56U3JjPVwie3tpbWFnZVByZWZpeCArIChkYXRhW2l0ZW0ua2V5XSB8IGRlZlZhbDppdGVtLmRlZmF1bHRWYWwpIH19XCJcclxuICAgICAgIG56LWltYWdlIGF0ckVycm9ySW1nLz5cclxuICA8ZGl2IG56LXJvdyAqbmdTd2l0Y2hDYXNlPVwiJ2FjdGlvbidcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tYXJlYVwiIG56LWNvbCBbbnpTcGFuXT1cIjI0XCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGFjdGlvbiBvZiBpdGVtLmFjdGlvbnNcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNTaG93QnRuKGRhdGEsYWN0aW9uLm9wZXJhdG9yLGFjdGlvbilcIj5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhYWN0aW9uLndpdGhvdXRSb2xlXCI+XHJcbiAgICAgICAgICAgIDxidXR0b24gbnotYnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgW256VHlwZV09XCJhY3Rpb24uYnV0dG9uVHlwZSYmYWN0aW9uLmJ1dHRvblR5cGUgIT0gJ2Rhbmdlcic/IGFjdGlvbi5idXR0b25UeXBlIDogJ3ByaW1hcnknXCJcclxuICAgICAgICAgICAgICAgICAgICBbbnpEYW5nZXJdPVwiYWN0aW9uLmJ1dHRvblR5cGUgPT0gJ2RhbmdlcidcIlxyXG4gICAgICAgICAgICAgICAgICAgIG56U2l6ZT1cInNtYWxsXCIgKmF0clJvbGU9XCJhY3Rpb24uY29kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImRvQWN0aW9uQnlSb3coZGF0YSxhY3Rpb24uY29kZSwkZXZlbnQsaSlcIj5cclxuICAgICAgICAgICAgICA8aSBuei1pY29uICpuZ0lmPVwiYWN0aW9uLmljb25cIiBbbnpUeXBlXT1cImFjdGlvbi5pY29uXCI+PC9pPlxyXG4gICAgICAgICAgICAgIHt7YWN0aW9uLm5hbWV9fTwvYnV0dG9uPlxyXG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYWN0aW9uLndpdGhvdXRSb2xlXCI+XHJcbiAgICAgICAgICAgIDxidXR0b24gbnotYnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgW256VHlwZV09XCJhY3Rpb24uYnV0dG9uVHlwZSYmYWN0aW9uLmJ1dHRvblR5cGUgIT0gJ2Rhbmdlcic/IGFjdGlvbi5idXR0b25UeXBlIDogJ3ByaW1hcnknXCJcclxuICAgICAgICAgICAgICAgICAgICBbbnpEYW5nZXJdPVwiYWN0aW9uLmJ1dHRvblR5cGUgPT0gJ2RhbmdlcidcIlxyXG4gICAgICAgICAgICAgICAgICAgIG56U2l6ZT1cInNtYWxsXCIgKGNsaWNrKT1cImRvQWN0aW9uQnlSb3coZGF0YSxhY3Rpb24uY29kZSwkZXZlbnQsaSlcIj5cclxuICAgICAgICAgICAgICA8aSBuei1pY29uICpuZ0lmPVwiYWN0aW9uLmljb25cIiBbbnpUeXBlXT1cImFjdGlvbi5pY29uXCI+PC9pPlxyXG4gICAgICAgICAgICAgIHt7YWN0aW9uLm5hbWV9fTwvYnV0dG9uPlxyXG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICA8IS0tIDxidXR0b24gbnotYnV0dG9uIFtuelR5cGVdPVwiJ3ByaW1hcnknXCIgbnpTaXplPVwic21hbGxcIiAqYXRyUm9sZT1cImFjdGlvbi5jb2RlXCIgKGNsaWNrKT1cImRvQWN0aW9uQnlSb3coZGF0YSxhY3Rpb24uY29kZSwkZXZlbnQpXCI+e3thY3Rpb24ubmFtZVxyXG4gICAgICAgICAgfX08L2J1dHRvbj4gLS0+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiAqbmdTd2l0Y2hDYXNlPVwiJ2RpY3QnXCIgW2lubmVySFRNTF09XCJkYXRhW2l0ZW0ua2V5XSB8IGRpY3RzOml0ZW0uZGljdENvZGUgfCBkZWZWYWw6aXRlbS5kZWZhdWx0VmFsXCI+PC9kaXY+XHJcbiAgPGRpdiBuei1wb3BvdmVyIChtb3VzZWVudGVyKT1cImVudGVyKCRldmVudClcIlxyXG4gICAgICAgW256UG9wb3ZlclRyaWdnZXJdPVwicG9wb3ZlclRyaWdnZXJcIiBbbnpQb3BvdmVyQ29udGVudF09J2RhdGFbaXRlbS5rZXldIHwgZGVmVmFsOml0ZW0uZGVmYXVsdFZhbCdcclxuICAgICAgIGNsYXNzPVwidmlldy10ZXh0XCIgKm5nU3dpdGNoRGVmYXVsdCBbaW5uZXJIVE1MXT1cImRhdGFbaXRlbS5rZXldIHwgZGVmVmFsOml0ZW0uZGVmYXVsdFZhbFwiPjwvZGl2PlxyXG48L25nLWNvbnRhaW5lcj5cclxuXHJcbiJdfQ==