зеркало из https://github.com/Azure/ms-rest-js.git
1 строка
292 KiB
Plaintext
1 строка
292 KiB
Plaintext
{"version":3,"sources":["webpack:///webpack/bootstrap 2e7db996ca14c68144e9","webpack:///./lib/util/utils.ts","webpack:///./lib/filters/baseFilter.ts","webpack:///./lib/util/constants.ts","webpack:///./lib/webResource.ts","webpack:///./node_modules/process/browser.js","webpack:///./node_modules/uuid/lib/rng-browser.js","webpack:///./node_modules/uuid/lib/bytesToUuid.js","webpack:///./lib/restError.ts","webpack:///./lib/httpOperationResponse.ts","webpack:///./lib/serializer.ts","webpack:///./node_modules/is-stream/index.js","webpack:///./lib/requestPipeline.ts","webpack:///./lib/filters/exponentialRetryPolicyFilter.ts","webpack:///./lib/filters/systemErrorRetryPolicyFilter.ts","webpack:///./lib/filters/redirectFilter.ts","webpack:///./lib/filters/signingFilter.ts","webpack:///./lib/filters/msRestUserAgentFilter.ts","webpack:///./lib/msRest.ts","webpack:///./node_modules/uuid/index.js","webpack:///./node_modules/uuid/v1.js","webpack:///./node_modules/uuid/v4.js","webpack:///./node_modules/form-data/lib/browser.js","webpack:///./node_modules/fetch-ponyfill/build/fetch-browser.js","webpack:///./node_modules/moment/min/moment.min.js","webpack:///(webpack)/buildin/module.js","webpack:///./node_modules/is-buffer/index.js","webpack:///./lib/serviceClient.ts","webpack:///./node_modules/url-parse/index.js","webpack:///(webpack)/buildin/global.js","webpack:///./node_modules/requires-port/index.js","webpack:///./node_modules/querystringify/index.js","webpack:///./lib/filters/rpRegistrationFilter.ts","webpack:///./node_modules/os-browserify/browser.js","webpack:///./lib/filters/logFilter.ts","webpack:///./lib/credentials/tokenCredentials.ts","webpack:///./lib/credentials/basicAuthenticationCredentials.ts","webpack:///./lib/credentials/apiKeyCredentials.ts"],"names":[],"mappings":"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AAC,IAAI,CAAC;IACd,CAAC;IACH,kBAAC;AAAD,CAAC;AAjNY,kCAAW;;;;;;;ACfxB;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;;;;AAIA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,uBAAuB,sBAAsB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,qCAAqC;;AAErC;AACA;AACA;;AAEA,2BAA2B;AAC3B;AACA;AACA;AACA,4BAA4B,UAAU;;;;;;;ACvLtC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iCAAiC;;AAEjC;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;;AAEA;AACA,sBAAsB,QAAQ;AAC9B;AACA;AACA;;AAEA;AACA;AACA;;;;;;;AC/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lBmB,gCAAwB,CAkBnB;AADV,sBAjB+B,mBAAW,CAiB/B;AACW,0BAlBsB,uBAAe,CAkBtB;AAAkB,sBAjBrE,mBAAW,CAiBqE;AAAE,iBAjBrE,cAAM,CAiBqE;AAd1F,cAAc;AACd,iDAAkE;AAQ0B,2BARnF,mCAAgB,CAQmF;AAP5G,+DAA8F;AAS5F,yCATO,+DAA8B,CASP;AARhC,kDAA6F;AAQ3D,4BARzB,qCAAiB,CAQyB;AANnD,uCAAsC;AASV,4BAAQ;;;;;;;AC1CpC;AACA;;AAEA;AACA;AACA;;AAEA;;;;;;;ACPA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,mCAAmC;AACnC;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;;AAEA;;;;;;;AC5GA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,oBAAoB,SAAS;AAC7B;AACA;AACA;;AAEA;AACA;;AAEA;;;;;;;AC5BA;AACA;;;;;;;ACDA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;;AAEP;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,WAAW;AACX;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,sBAAsB;AACtB;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,aAAa;AACb,WAAW;AACX;AACA;AACA,aAAa;AACb,WAAW;AACX;AACA;AACA,aAAa;AACb;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,8CAA8C,mBAAmB;AACjE;AACA;;AAEA;AACA;AACA,wCAAwC,oBAAoB;AAC5D;AACA;;AAEA;AACA;AACA,8CAA8C,4BAA4B;AAC1E;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,yBAAyB,iBAAiB;AAC1C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,aAAa;AACb;AACA,aAAa;AACb;AACA,aAAa;AACb;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA,aAAa;AACb;AACA;;AAEA;AACA;AACA,6DAA6D;AAC7D,eAAe;AACf;AACA,eAAe;AACf,oFAAoF;AACpF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,eAAe;AACf;AACA,eAAe;AACf;AACA,eAAe;AACf;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,aAAa;AACb;AACA,aAAa;AACb;AACA,aAAa;AACb;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,oCAAoC,uBAAuB;AAC3D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;;AAEA;AACA,6CAA6C,0BAA0B;AACvE;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA,qCAAqC,0BAA0B,eAAe;AAC9E;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,aAAa;;AAEb;AACA,WAAW;AACX;AACA;AACA,OAAO;;;AAGP;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA,KAAK;AAAA;AACL,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA,CAAC;;;;;;;;ACjfD,6DAAe,sFAAqI,iBAAiB,aAAa,QAAQ,aAAa,+BAA+B,cAAc,gFAAgF,cAAc,sEAAsE,cAAc,kBAAkB,cAAc,gFAAgF,cAAc,8EAA8E,gBAAgB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A;AACA;AACA,cAAc,OAAO;AACrB,cAAc,QAAQ;AACtB,cAAc,OAAO;AACrB;;AAEA;AACA;AACA;AACA,WAAW,OAAO;AAClB,YAAY,gBAAgB;AAC5B;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,YAAY,OAAO;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,OAAO;AAClB,WAAW,cAAc;AACzB,WAAW,iBAAiB;AAC5B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,QAAQ,yBAAyB;AACjC;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW,OAAO;AAClB,WAAW,MAAM;AACjB,WAAW,iBAAiB;AAC5B;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;;AAEA,iBAAiB,kBAAkB;AACnC;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,WAAW,SAAS;AACpB,aAAa;AACb;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA,iBAAiB;;AAEjB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;;;;;AC3ZA;;AAEA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;;AAEA;AACA;AACA,4CAA4C;;AAE5C;;;;;;;;ACpBA;;AAEA;AACA;AACA;AACA;AACA,WAAW,cAAc;AACzB,WAAW,OAAO;AAClB,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;;;;;;;ACrCA;;AAEA;;AAEA;AACA;AACA;AACA,WAAW,OAAO;AAClB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,OAAO;AAClB,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,aAAa;AACb;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACvEA,4DAA4D;AAC5D,+FAA+F;AAC/F,0CAA0C;AAG1C,mCAAuC;AAEvC,iCAAiC;AACjC,IAAI,YAAY,GAAG,EAAE,CAAC;AACtB,gCAAgC;AAEhC;IAA0C,wCAAU;IAElD,8BAAY,YAAiB;QAAjB,gDAAiB;QAA7B,YACE,iBAAO,SAER;QADC,YAAY,GAAG,YAAY,CAAC;;IAC9B,CAAC;IAEK,oCAAK,GAAX,UAAY,iBAAwC;;;;;;wBAE5C,OAAO,GAAG,iBAAiB,CAAC,OAAO,CAAC;wBAC1C,EAAE,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC;4BAC9C,MAAM,GAAG,IAAI,CAAC,yBAAyB,CAAC,iBAAiB,CAAC,UAAoB,CAAC,CAAC;wBAClF,CAAC;6BACG,MAAM,EAAN,wBAAM;wBACR,SAAS,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;wBACjD,kBAAkB,GAAG,KAAK,CAAC;;;;wBAER,qBAAM,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC;;wBAAtE,kBAAkB,GAAG,SAAiD,CAAC;;;;;;6BAOrE,kBAAkB,EAAlB,wBAAkB;wBACpB,2EAA2E;wBAC3E,0EAA0E;wBAC1E,OAAO,CAAC,OAAO,CAAC,wBAAwB,CAAC,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC;wBAC7D,QAAQ,SAAuB,CAAC;;;;wBAEvB,qBAAM,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC;;wBAA/C,QAAQ,GAAG,SAAoC,CAAC;;;;wBAEhD,sBAAO,OAAO,CAAC,MAAM,CAAC,KAAG,CAAC,EAAC;4BAE7B,sBAAO,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAC;4BAGrC,sBAAO,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAC;;;;KAC3C;IAED;;;;;OAKG;IACH,mDAAoB,GAApB,UAAqB,eAA4B,EAAE,WAAmB;QAAnB,iDAAmB;QACpE,IAAM,UAAU,GAAQ;YACtB,OAAO,EAAE,EAAE;SACZ,CAAC;QACF,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;YAChB,UAAU,CAAC,GAAG,GAAG,eAAe,CAAC,GAAG,CAAC;QACvC,CAAC;QAED,sGAAsG;QACtG,wFAAwF;QACxF,GAAG,CAAC,CAAC,IAAM,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;YACxC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACrD,CAAC;QACD,wEAAwE;QACxE,iDAAiD;QACjD,UAAU,CAAC,OAAO,CAAC,wBAAwB,CAAC,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC;QAEpE,uCAAuC;QACvC,UAAU,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,iCAAiC,CAAC;QAEvE,MAAM,CAAC,UAAU,CAAC;IACpB,CAAC;IAED;;;;;OAKG;IACH,wDAAyB,GAAzB,UAA0B,IAAY;QACpC,IAAI,MAAM,EAAE,YAAY,CAAC;QACzB,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACT,IAAI,CAAC;gBACH,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAClC,CAAC;YAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBACb,cAAc;YAChB,CAAC;YACD,EAAE,CAAC,CAAC,YAAY,IAAI,YAAY,CAAC,KAAK,IAAI,YAAY,CAAC,KAAK,CAAC,OAAO;gBAClE,YAAY,CAAC,KAAK,CAAC,IAAI,IAAI,YAAY,CAAC,KAAK,CAAC,IAAI,KAAK,iCAAiC,CAAC,CAAC,CAAC;gBAC3F,IAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;gBAC/D,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;oBACb,MAAM,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC;gBAC1B,CAAC;YACH,CAAC;QACH,CAAC;QACD,MAAM,CAAC,MAAM,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACH,qDAAsB,GAAtB,UAAuB,GAAW;QAChC,IAAI,MAAM,CAAC;QACX,IAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;QAChE,EAAE,CAAC,CAAC,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5B,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QACvB,CAAC;QAAC,IAAI,CAAC,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,2DAAyD,GAAG,MAAG,CAAC,CAAC;QACnF,CAAC;QACD,MAAM,CAAC,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;OAOG;IACG,yCAAU,GAAhB,UAAiB,SAAiB,EAAE,QAAgB,EAAE,eAA4B;;;;;;wBAC1E,OAAO,GAAM,SAAS,kBAAa,QAAQ,qCAAkC,CAAC;wBAC9E,MAAM,GAAM,SAAS,kBAAa,QAAQ,4BAAyB,CAAC;wBACpE,UAAU,GAAG,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,CAAC;wBAC9D,UAAU,CAAC,MAAM,GAAG,MAAM,CAAC;wBAC3B,UAAU,CAAC,GAAG,GAAG,OAAO,CAAC;;;;wBAGjB,qBAAM,KAAK,CAAC,eAAe,CAAC,UAAU,CAAC;;wBAA7C,GAAG,GAAG,SAAuC,CAAC;;;;wBAE9C,sBAAO,OAAO,CAAC,MAAM,CAAC,KAAG,CAAC,EAAC;;wBAE7B,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC;4BAChC,MAAM,gBAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,yBAAuB,QAAQ,8CAA2C,CAAC,CAAC,EAAC;wBAC/G,CAAC;wBACG,SAAS,GAAG,KAAK,CAAC;;;;wBAER,qBAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,eAAe,CAAC;;wBAArE,SAAS,GAAG,SAAyD,CAAC;;;;wBAEtE,sBAAO,OAAO,CAAC,MAAM,CAAC,KAAG,CAAC,EAAC;4BAE7B,sBAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,EAAC;;;;KACnC;IAED;;;;;;;OAOG;IACG,oDAAqB,GAA3B,UAA4B,GAAW,EAAE,eAA4B;;;;;;;wBAC7D,UAAU,GAAQ,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,CAAC;wBAE/D,MAAM,GAAG,KAAK,CAAC;wBACnB,UAAU,CAAC,GAAG,GAAG,GAAG,CAAC;wBACrB,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC;;;;wBAElB,qBAAM,KAAK,CAAC,eAAe,CAAC,UAAU,CAAC;;wBAA7C,GAAG,GAAG,SAAuC,CAAC;;;;wBAE9C,sBAAO,OAAO,CAAC,MAAM,CAAC,KAAG,CAAC,EAAC;;wBAEvB,GAAG,GAAI,GAAG,CAAC,UAAkB,CAAC;wBACpC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,iBAAiB,IAAI,GAAG,CAAC,iBAAiB,KAAK,YAAY,CAAC,CAAC,CAAC;4BACtF,MAAM,GAAG,IAAI,CAAC;wBAChB,CAAC;wBAAC,IAAI,CAAC,CAAC;4BACN,UAAU,CAAC,cAAQ,MAAM,CAAC,KAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC,CAAC;wBACtG,CAAC;wBACD,sBAAO,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAC;;;;KAChC;IACH,2BAAC;AAAD,CAAC,CA1KyC,uBAAU,GA0KnD;AA1KY,oDAAoB;;;;;;;ACXjC,kCAAkC;;AAElC;AACA;AACA;AACA;AACA;AACA;;AAEA,+BAA+B;;AAE/B,8BAA8B;;AAE9B;AACA;AACA;;AAEA;AACA;AACA;;AAEA,4BAA4B;;AAE5B,4BAA4B;;AAE5B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,eAAe,UAAU;;AAEzB,4BAA4B;;AAE5B,gCAAgC;;AAEhC;AACA;AACA;;AAEA;;;;;;;;;AC5CA,4DAA4D;AAC5D,+FAA+F;;;;;;;;;;;;AAE/F,0CAA0C;AAG1C;IAA+B,6BAAU;IAIvC,mBAAY,MAAyB;QAAzB,kCAAc,OAAO,CAAC,GAAG;QAArC,YACE,iBAAO,SAER;QADC,KAAI,CAAC,MAAM,GAAG,MAAM,CAAC;;IACvB,CAAC;IAED,yBAAK,GAAL,UAAM,iBAAwC;QAC5C,IAAM,IAAI,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,MAAM,CAAC,iBAAe,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAG,CAAC,CAAC;QACtF,IAAI,CAAC,MAAM,CAAC,8BAA4B,iBAAiB,CAAC,QAAQ,CAAC,MAAQ,CAAC,CAAC;QAC7E,IAAM,YAAY,GAAG,iBAAiB,CAAC,UAAU,CAAC;QAClD,IAAI,CAAC,MAAM,CAAC,cAAY,YAAc,CAAC,CAAC;QACxC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC5C,CAAC;IACH,gBAAC;AAAD,CAAC,CAjB8B,uBAAU,GAiBxC;AAjBY,8BAAS;;;;;;;;;ACNtB,4DAA4D;AAC5D,+FAA+F;;AAE/F,yCAA8C;AAI9C,IAAM,eAAe,GAAG,qBAAS,CAAC,eAAe,CAAC;AAClD,IAAM,4BAA4B,GAAG,QAAQ,CAAC;AAE9C;;;;;;GAMG;AACH;IAIE,0BAAY,KAAa,EAAE,mBAA0D;QAA1D,wFAA0D;QAFrF,wBAAmB,GAAW,4BAA4B,CAAC;QAGzD,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;QACxD,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;IACjD,CAAC;IAED;;;;;OAKG;IACH,sCAAW,GAAX,UAAY,WAAwB;QAClC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC;YAAC,WAAW,CAAC,OAAO,GAAG,EAAE,CAAC;QACnD,WAAW,CAAC,OAAO,CAAC,eAAe,CAAC,aAAa,CAAC,GAAM,IAAI,CAAC,mBAAmB,SAAI,IAAI,CAAC,KAAO,CAAC;QACjG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC;IACH,uBAAC;AAAD,CAAC;AAvBY,4CAAgB;;;;;;;;;ACjB7B,4DAA4D;AAC5D,+FAA+F;;AAE/F,yCAA8C;AAG9C,IAAM,eAAe,GAAG,qBAAS,CAAC,eAAe,CAAC;AAClD,IAAM,4BAA4B,GAAG,OAAO,CAAC;AAE7C;;;;;;;GAOG;AACH;IAIE,wCAAY,QAAgB,EAAE,QAAgB,EAAE,mBAA0D;QAA1D,wFAA0D;QAD1G,wBAAmB,GAAW,4BAA4B,CAAC;QAEzD,EAAE,CAAC,CAAC,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,SAAS,IAAI,OAAO,QAAQ,CAAC,OAAO,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC;YAC1F,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAC;QACtF,CAAC;QACD,EAAE,CAAC,CAAC,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,SAAS,IAAI,OAAO,QAAQ,CAAC,OAAO,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC;YAC1F,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAC;QACtF,CAAC;QACD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;IACjD,CAAC;IAED;;;;;OAKG;IACH,oDAAW,GAAX,UAAY,WAAwB;QAClC,IAAM,WAAW,GAAM,IAAI,CAAC,QAAQ,SAAI,IAAI,CAAC,QAAU,CAAC;QACxD,IAAM,kBAAkB,GAAM,IAAI,CAAC,mBAAmB,SAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAG,CAAC;QACxG,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC;YAAC,WAAW,CAAC,OAAO,GAAG,EAAE,CAAC;QACnD,WAAW,CAAC,OAAO,CAAC,eAAe,CAAC,aAAa,CAAC,GAAG,kBAAkB,CAAC;QACxE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC;IACH,qCAAC;AAAD,CAAC;AA7BY,wEAA8B;;;;;;;;;ACjB3C,4DAA4D;AAC5D,+FAA+F;;AAoB/F;;GAEG;AACH;IAIE;;;;;OAKG;IACH,2BAAY,OAAgC;QAC1C,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACnE,MAAM,IAAI,KAAK,CAAC,8HAA0H,CAAC,CAAC;QAC9I,CAAC;QACD,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACjC,CAAC;IAED;;;;;OAKG;IACH,uCAAW,GAAX,UAAY,WAAwB;QAClC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;YACjB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,yEAAuE,CAAC,CAAC,CAAC;QAC5G,CAAC;QAED,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YAClB,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;gBACzB,WAAW,CAAC,OAAO,GAAG,EAAE,CAAC;YAC3B,CAAC;YACD,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACpD,CAAC;QAED,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;YACjB,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;gBACrB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC,CAAC;YAChF,CAAC;YACD,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBACrC,WAAW,CAAC,GAAG,IAAI,GAAG,CAAC;YACzB,CAAC;YACD,GAAG,CAAC,CAAC,IAAM,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;gBAC/B,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;oBACnC,WAAW,CAAC,GAAG,IAAI,GAAG,CAAC;gBACzB,CAAC;gBACD,WAAW,CAAC,GAAG,IAAO,GAAG,SAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAG,CAAC;YACnD,CAAC;QACH,CAAC;QAED,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC;IACH,wBAAC;AAAD,CAAC;AArDY,8CAAiB","file":"msRestBundle.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 17);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 2e7db996ca14c68144e9","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License. See License.txt in the project root for license information.\n\nimport * as uuid from \"uuid\";\nimport * as FormData from \"form-data\";\nimport { WebResource } from \"../webResource\";\nimport { Constants } from \"./constants\";\nimport { RestError } from \"../restError\";\nimport { HttpOperationResponse } from \"../httpOperationResponse\";\n\n/**\n * Provides the fetch() method based on the environment.\n * @returns {fetch} fetch - The fetch() method available in the environment to make requests\n */\nexport function getFetch(): Function {\n // using window.Fetch in Edge gives a TypeMismatchError\n // (https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/8546263/).\n // Hence we will be using the fetch-ponyfill for Edge.\n if (typeof window !== \"undefined\" && window.fetch && window.navigator &&\n window.navigator.userAgent && window.navigator.userAgent.indexOf(\"Edge/\") === -1) {\n return window.fetch.bind(window);\n }\n return require(\"fetch-ponyfill\")({ useCookie: true }).fetch;\n}\n\n/**\n * A constant that provides the fetch() method based on the environment.\n */\nexport const myFetch = getFetch();\n\n/**\n * A constant that indicates whether the environment is node.js or browser based.\n */\nexport const isNode = typeof navigator === \"undefined\" && typeof process !== \"undefined\";\n\n/**\n * Checks if a parsed URL is HTTPS\n *\n * @param {object} urlToCheck The url to check\n * @return {boolean} True if the URL is HTTPS; false otherwise.\n */\nexport function urlIsHTTPS(urlToCheck: { protocol: string }): boolean {\n return urlToCheck.protocol.toLowerCase() === Constants.HTTPS;\n}\n\n/**\n * Checks if a value is null or undefined.\n *\n * @param {object} value The value to check for null or undefined.\n * @return {boolean} True if the value is null or undefined, false otherwise.\n */\n// TODO: Audit the usages of this and remove them.\n// Read: https://medium.com/@basarat/null-vs-undefined-in-typescript-land-dc0c7a5f240a\n// https://github.com/Microsoft/TypeScript/issues/7426\nexport function objectIsNull(value: any): boolean {\n return value === null || value === undefined;\n}\n\n/**\n * Encodes an URI.\n *\n * @param {string} uri The URI to be encoded.\n * @return {string} The encoded URI.\n */\nexport function encodeUri(uri: string) {\n return encodeURIComponent(uri)\n .replace(/!/g, \"%21\")\n .replace(/\"/g, \"%27\")\n .replace(/\\(/g, \"%28\")\n .replace(/\\)/g, \"%29\")\n .replace(/\\*/g, \"%2A\");\n}\n\n/**\n * Returns a stripped version of the Http Response which only contains body,\n * headers and the status.\n *\n * @param {nodeFetch.Response} response - The Http Response\n *\n * @return {object} strippedResponse - The stripped version of Http Response.\n */\nexport function stripResponse(response: Response) {\n const strippedResponse: any = {};\n strippedResponse.body = response.body;\n strippedResponse.headers = response.headers;\n strippedResponse.status = response.status;\n return strippedResponse;\n}\n\n/**\n * Returns a stripped version of the Http Request that does not contain the\n * Authorization header.\n *\n * @param {object} request - The Http Request object\n *\n * @return {object} strippedRequest - The stripped version of Http Request.\n */\nexport function stripRequest(request: WebResource): WebResource {\n let strippedRequest = new WebResource();\n try {\n strippedRequest = JSON.parse(JSON.stringify(request));\n if (strippedRequest.headers && strippedRequest.headers.Authorization) {\n delete strippedRequest.headers.Authorization;\n } else if (strippedRequest.headers && strippedRequest.headers.authorization) {\n delete strippedRequest.headers.authorization;\n }\n } catch (err) {\n const errMsg = err.message;\n err.message = `Error - \"${errMsg}\" occured while creating a stripped version of the request object - \"${request}\".`;\n return err;\n }\n\n return strippedRequest;\n}\n\n/**\n * Validates the given uuid as a string\n *\n * @param {string} uuid - The uuid as a string that needs to be validated\n *\n * @return {boolean} result - True if the uuid is valid; false otherwise.\n */\nexport function isValidUuid(uuid: string): boolean {\n const validUuidRegex = new RegExp(\"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$\", \"ig\");\n return validUuidRegex.test(uuid);\n}\n\n/**\n * Provides an array of values of an object. For example\n * for a given object { \"a\": \"foo\", \"b\": \"bar\" }, the method returns [\"foo\", \"bar\"].\n *\n * @param {object} obj - An object whose properties need to be enumerated so that it\"s values can be provided as an array\n *\n * @return {array} result - An array of values of the given object.\n */\nexport function objectValues(obj: { [key: string]: any; }): any[] {\n const result: any[] = [];\n if (obj && obj instanceof Object) {\n for (const key in obj) {\n if (obj.hasOwnProperty(key)) {\n result.push((<any>obj)[key]);\n }\n }\n } else {\n throw new Error(`The provided object ${JSON.stringify(obj, undefined, 2)} is not a valid object that can be ` +\n `enumerated to provide its values as an array.`);\n }\n return result;\n}\n\n/**\n * Generated UUID\n *\n * @return {string} RFC4122 v4 UUID.\n */\nexport function generateUuid(): string {\n return uuid.v4();\n}\n\n/*\n * Executes an array of promises sequentially. Inspiration of this method is here:\n * https://pouchdb.com/2015/05/18/we-have-a-problem-with-promises.html. An awesome blog on promises!\n *\n * @param {Array} promiseFactories An array of promise factories(A function that return a promise)\n *\n * @param {any} [kickstart] Input to the first promise that is used to kickstart the promise chain.\n * If not provided then the promise chain starts with undefined.\n *\n * @return A chain of resolved or rejected promises\n */\nexport function executePromisesSequentially(promiseFactories: Array<any>, kickstart: any) {\n let result = Promise.resolve(kickstart);\n promiseFactories.forEach((promiseFactory) => {\n result = result.then(promiseFactory);\n });\n return result;\n}\n\n/*\n * Merges source object into the target object\n * @param {object} source The object that needs to be merged\n *\n * @param {object} target The object to be merged into\n *\n * @returns {object} target - Returns the merged target object.\n */\nexport function mergeObjects(source: { [key: string]: any; }, target: { [key: string]: any; }) {\n Object.keys(source).forEach((key) => {\n target[key] = source[key];\n });\n return target;\n}\n\n/**\n * A wrapper for setTimeout that resolves a promise after t milliseconds.\n * @param {number} t - The number of milliseconds to be delayed.\n * @param {T} value - The value to be resolved with after a timeout of t milliseconds.\n * @returns {Promise<T>} - Resolved promise\n */\nexport function delay<T>(t: number, value?: T): Promise<T> {\n return new Promise((resolve) => setTimeout(() => resolve(value), t));\n}\n\n/**\n * Utility function to create a K:V from a list of strings\n */\nexport function strEnum<T extends string>(o: Array<T>): {[K in T]: K} {\n /* tslint:disable:no-null-keyword */\n return o.reduce((res, key: string) => {\n res[key] = key;\n return res;\n }, Object.create(null));\n /* tslint:enable:no-null-keyword */\n}\n\n/**\n * Service callback that is returned for REST requests initiated by the service client.\n *\n * @property {Error|RestError} err - The error occurred if any, while executing the request; otherwise null\n * @property {TResult} result - The deserialized response body if an error did not occur.\n * @property {WebResource} request - The raw/actual request sent to the server if an error did not occur.\n * @property {Response} response - The raw/actual response from the server if an error did not occur.\n */\nexport interface ServiceCallback<TResult> { (err: Error | RestError, result?: TResult, request?: WebResource, response?: Response): void; }\n\n/**\n * Converts a Promise to a callback.\n * @param {Promise<any>} promise - The Promise to be converted to a callback\n * @returns {Function} fn - A function that takes the callback (cb: Function): void\n */\nexport function promiseToCallback(promise: Promise<any>): Function {\n if (typeof promise.then !== \"function\") {\n throw new Error(\"The provided input is not a Promise.\");\n }\n return (cb: Function): void => {\n promise.then((data: any) => {\n process.nextTick(cb, undefined, data);\n }, (err: Error) => {\n process.nextTick(cb, err);\n });\n };\n}\n\n/**\n * Converts a Promise to a service callback.\n * @param {Promise<HttpOperationResponse>} promise - The Promise of HttpOperationResponse to be converted to a service callback\n * @returns {Function} fn - A function that takes the service callback (cb: ServiceCallback<T>): void\n */\nexport function promiseToServiceCallback<T>(promise: Promise<HttpOperationResponse>): Function {\n if (typeof promise.then !== \"function\") {\n throw new Error(\"The provided input is not a Promise.\");\n }\n return (cb: ServiceCallback<T>): void => {\n promise.then((data: HttpOperationResponse) => {\n process.nextTick(cb, undefined, data.bodyAsJson as T, data.request, data.response);\n }, (err: Error) => {\n process.nextTick(cb, err);\n });\n };\n}\n\n/**\n * Sends the request and returns the received response.\n * @param {WebResource} options - The request to be sent.\n * @returns {Promise<HttpOperationResponse} operationResponse - The response object.\n */\nexport async function dispatchRequest(options: WebResource): Promise<HttpOperationResponse> {\n if (!options) {\n return Promise.reject(new Error(\"options (WebResource) cannot be null or undefined and must be of type object.\"));\n }\n\n if (options.formData) {\n const formData: any = options.formData;\n const requestForm = new FormData();\n const appendFormValue = (key: string, value: any) => {\n if (value && value.hasOwnProperty(\"value\") && value.hasOwnProperty(\"options\")) {\n requestForm.append(key, value.value, value.options);\n } else {\n requestForm.append(key, value);\n }\n };\n for (const formKey in formData) {\n if (formData.hasOwnProperty(formKey)) {\n const formValue = formData[formKey];\n if (formValue instanceof Array) {\n for (let j = 0; j < formValue.length; j++) {\n appendFormValue(formKey, formValue[j]);\n }\n } else {\n appendFormValue(formKey, formValue);\n }\n }\n }\n\n options.body = requestForm;\n options.formData = undefined;\n if (options.headers && options.headers[\"Content-Type\"] &&\n options.headers[\"Content-Type\"].indexOf(\"multipart/form-data\") > -1 && typeof requestForm.getBoundary === \"function\") {\n options.headers[\"Content-Type\"] = `multipart/form-data; boundary=${requestForm.getBoundary()}`;\n }\n }\n let res: Response;\n try {\n res = await myFetch(options.url, options);\n } catch (err) {\n return Promise.reject(err);\n }\n\n const operationResponse = new HttpOperationResponse(options, res);\n if (!options.rawResponse) {\n try {\n operationResponse.bodyAsText = await res.text();\n } catch (err) {\n const msg = `Error \"${err}\" occured while converting the raw response body into string.`;\n const errCode = err.code || \"RAWTEXT_CONVERSION_ERROR\";\n const e = new RestError(msg, errCode, res.status, options, res, res.body);\n return Promise.reject(e);\n }\n try {\n if (operationResponse.bodyAsText) {\n operationResponse.bodyAsJson = JSON.parse(operationResponse.bodyAsText);\n }\n } catch (err) {\n const msg = `Error \"${err}\" occured while executing JSON.parse on the response body - ${operationResponse.bodyAsText}.`;\n const errCode = err.code || \"JSON_PARSE_ERROR\";\n const e = new RestError(msg, errCode, res.status, options, res, operationResponse.bodyAsText);\n return Promise.reject(e);\n }\n }\n return Promise.resolve(operationResponse);\n}\n\n/**\n * Applies the properties on the prototype of sourceCtors to the prototype of targetCtor\n * @param {object} targetCtor The target object on which the properties need to be applied.\n * @param {Array<object>} sourceCtors An array of source objects from which the properties need to be taken.\n */\nexport function applyMixins(targetCtor: any, sourceCtors: any[]): void {\n sourceCtors.forEach(sourceCtors => {\n Object.getOwnPropertyNames(sourceCtors.prototype).forEach(name => {\n targetCtor.prototype[name] = sourceCtors.prototype[name];\n });\n });\n}\n\n\n// WEBPACK FOOTER //\n// ./lib/util/utils.ts","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License. See License.txt in the project root for license information.\n\nimport { WebResource } from \"../webResource\";\nimport { HttpOperationResponse } from \"../httpOperationResponse\";\n\nexport class BaseFilter {\n\n constructor() { }\n\n before(request: WebResource): Promise<WebResource> {\n return Promise.resolve(request);\n }\n\n after(response: HttpOperationResponse): Promise<HttpOperationResponse> {\n return Promise.resolve(response);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./lib/filters/baseFilter.ts","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License. See License.txt in the project root for license information.\n\nexport const Constants = {\n\n /**\n * The ms-rest version\n * @const\n * @type {string}\n */\n msRestVersion: \"0.1.0\",\n\n /**\n * Specifies HTTP.\n *\n * @const\n * @type {string}\n */\n HTTP: \"http:\",\n\n /**\n * Specifies HTTPS.\n *\n * @const\n * @type {string}\n */\n HTTPS: \"https:\",\n\n /**\n * Specifies HTTP Proxy.\n *\n * @const\n * @type {string}\n */\n HTTP_PROXY: \"HTTP_PROXY\",\n\n /**\n * Specifies HTTPS Proxy.\n *\n * @const\n * @type {string}\n */\n HTTPS_PROXY: \"HTTPS_PROXY\",\n\n HttpConstants: {\n /**\n * Http Verbs\n *\n * @const\n * @enum {string}\n */\n HttpVerbs: {\n PUT: \"PUT\",\n GET: \"GET\",\n DELETE: \"DELETE\",\n POST: \"POST\",\n MERGE: \"MERGE\",\n HEAD: \"HEAD\",\n PATCH: \"PATCH\"\n },\n },\n\n /**\n * Defines constants for use with HTTP headers.\n */\n HeaderConstants: {\n /**\n * The Authorization header.\n *\n * @const\n * @type {string}\n */\n AUTHORIZATION: \"authorization\",\n\n AUTHORIZATION_SCHEME: \"Bearer\",\n\n /**\n * The UserAgent header.\n *\n * @const\n * @type {string}\n */\n USER_AGENT: \"User-Agent\"\n }\n};\n\n\n\n// WEBPACK FOOTER //\n// ./lib/util/constants.ts","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License. See License.txt in the project root for license information.\n\nimport { generateUuid } from \"./util/utils\";\nimport { Serializer, Mapper } from \"./serializer\";\nexport type HttpMethods = \"GET\" | \"PUT\" | \"POST\" | \"DELETE\" | \"PATCH\" | \"HEAD\" | \"OPTIONS\" | \"TRACE\";\n\n/**\n * Creates a new WebResource object.\n *\n * This class provides an abstraction over a REST call by being library / implementation agnostic and wrapping the necessary\n * properties to initiate a request.\n *\n * @constructor\n */\nexport class WebResource {\n url: string;\n method: HttpMethods;\n body?: any;\n headers: { [key: string]: any; } = {};\n rawResponse?: boolean;\n formData?: any;\n query?: { [key: string]: any; };\n\n\n constructor(url?: string, method?: HttpMethods, body?: any, query?: { [key: string]: any; }, headers: { [key: string]: any; } = {}, rawResponse = false) {\n this.rawResponse = rawResponse;\n this.url = url || \"\";\n this.method = method || \"GET\";\n this.headers = headers || {};\n this.body = body;\n this.query = query;\n this.formData = undefined;\n }\n\n /**\n * Validates that the required properties such as method, url, headers[\"Content-Type\"],\n * headers[\"accept-language\"] are defined. It will throw an error if one of the above\n * mentioned properties are not defined.\n */\n validateRequestProperties(): void {\n if (!this.method || !this.url || !this.headers[\"Content-Type\"] || !this.headers[\"accept-language\"]) {\n throw new Error(\"method, url, headers[\\\"Content-Type\\\"], headers[\\\"accept-language\\\"] are \" +\n \"required properties before making a request. Either provide them or use WebResource.prepare() method.\");\n }\n return;\n }\n\n /**\n * Prepares the request.\n * @param {RequestPrepareOptions} options - Options to provide for preparing the request.\n * @returns {object} WebResource Returns the prepared WebResource (HTTP Request) object that needs to be given to the request pipeline.\n */\n prepare(options: RequestPrepareOptions) {\n if (options === null || options === undefined || typeof options !== \"object\") {\n throw new Error(\"options cannot be null or undefined and must be of type object\");\n }\n\n if (options.method === null || options.method === undefined || typeof options.method.valueOf() !== \"string\") {\n throw new Error(\"options.method cannot be null or undefined and it must be of type string.\");\n }\n\n if (options.url && options.pathTemplate) {\n throw new Error(\"options.url and options.pathTemplate are mutually exclusive. Please provide either of them.\");\n }\n\n\n if ((options.pathTemplate === null || options.pathTemplate === undefined || typeof options.pathTemplate.valueOf() !== \"string\") && (options.url === null || options.url === undefined || typeof options.url.valueOf() !== \"string\")) {\n throw new Error(\"Please provide either options.pathTemplate or options.url. Currently none of them were provided.\");\n }\n\n // set the url if it is provided.\n if (options.url) {\n if (typeof options.url !== \"string\") {\n throw new Error(\"options.url must be of type \\\"string\\\".\");\n }\n this.url = options.url;\n }\n\n // set the method\n if (options.method) {\n const validMethods = [\"GET\", \"PUT\", \"HEAD\", \"DELETE\", \"OPTIONS\", \"POST\", \"PATCH\", \"TRACE\"];\n if (validMethods.indexOf(options.method.toUpperCase()) === -1) {\n throw new Error(\"The provided method \\\"\" + options.method + \"\\\" is invalid. Supported HTTP methods are: \" + JSON.stringify(validMethods));\n }\n }\n this.method = (options.method.toUpperCase() as HttpMethods);\n\n // construct the url if path template is provided\n if (options.pathTemplate) {\n if (typeof options.pathTemplate !== \"string\") {\n throw new Error(\"options.pathTemplate must be of type \\\"string\\\".\");\n }\n if (!options.baseUrl) {\n options.baseUrl = \"https://management.azure.com\";\n }\n const baseUrl = options.baseUrl;\n let url = baseUrl + (baseUrl.endsWith(\"/\") ? \"\" : \"/\") + (options.pathTemplate.startsWith(\"/\") ? options.pathTemplate.slice(1) : options.pathTemplate);\n const segments = url.match(/({\\w*\\s*\\w*})/ig);\n if (segments && segments.length) {\n if (options.pathParameters === null || options.pathParameters === undefined || typeof options.pathParameters !== \"object\") {\n throw new Error(`pathTemplate: ${options.pathTemplate} has been provided. Hence, options.pathParameters ` +\n `cannot be null or undefined and must be of type \"object\".`);\n }\n segments.forEach(function (item) {\n const pathParamName = item.slice(1, -1);\n const pathParam = (options.pathParameters as { [key: string]: any })[pathParamName];\n if (pathParam === null || pathParam === undefined || !(typeof pathParam === \"string\" || typeof pathParam === \"object\")) {\n throw new Error(`pathTemplate: ${options.pathTemplate} contains the path parameter ${pathParamName}` +\n ` however, it is not present in ${options.pathParameters} - ${JSON.stringify(options.pathParameters, undefined, 2)}.` +\n `The value of the path parameter can either be a \"string\" of the form { ${pathParamName}: \"some sample value\" } or ` +\n `it can be an \"object\" of the form { \"${pathParamName}\": { value: \"some sample value\", skipUrlEncoding: true } }.`);\n }\n\n if (typeof pathParam.valueOf() === \"string\") {\n url = url.replace(item, encodeURIComponent(pathParam));\n }\n\n if (typeof pathParam.valueOf() === \"object\") {\n if (!pathParam.value) {\n throw new Error(`options.pathParameters[${pathParamName}] is of type \"object\" but it does not contain a \"value\" property.`);\n }\n if (pathParam.skipUrlEncoding) {\n url = url.replace(item, pathParam.value);\n } else {\n url = url.replace(item, encodeURIComponent(pathParam.value));\n }\n }\n });\n }\n this.url = url;\n }\n\n // append query parameters to the url if they are provided. They can be provided with pathTemplate or url option.\n if (options.queryParameters) {\n if (typeof options.queryParameters !== \"object\") {\n throw new Error(`options.queryParameters must be of type object. It should be a JSON object ` +\n `of \"query-parameter-name\" as the key and the \"query-parameter-value\" as the value. ` +\n `The \"query-parameter-value\" may be fo type \"string\" or an \"object\" of the form { value: \"query-parameter-value\", skipUrlEncoding: true }.`);\n }\n // append question mark if it is not present in the url\n if (this.url && this.url.indexOf(\"?\") === -1) {\n this.url += \"?\";\n }\n // construct queryString\n const queryParams = [];\n const queryParameters = options.queryParameters;\n // We need to populate this.query as a dictionary if the request is being used for Sway's validateRequest().\n this.query = {};\n for (const queryParamName in queryParameters) {\n const queryParam: any = queryParameters[queryParamName];\n if (queryParam) {\n if (typeof queryParam === \"string\") {\n queryParams.push(queryParamName + \"=\" + encodeURIComponent(queryParam));\n this.query[queryParamName] = encodeURIComponent(queryParam);\n }\n else if (typeof queryParam === \"object\") {\n if (!queryParam.value) {\n throw new Error(`options.queryParameters[${queryParamName}] is of type \"object\" but it does not contain a \"value\" property.`);\n }\n if (queryParam.skipUrlEncoding) {\n queryParams.push(queryParamName + \"=\" + queryParam.value);\n this.query[queryParamName] = queryParam.value;\n } else {\n queryParams.push(queryParamName + \"=\" + encodeURIComponent(queryParam.value));\n this.query[queryParamName] = encodeURIComponent(queryParam.value);\n }\n }\n }\n }// end-of-for\n // append the queryString\n this.url += queryParams.join(\"&\");\n }\n\n // add headers to the request if they are provided\n if (options.headers) {\n const headers = options.headers;\n for (const headerName in headers) {\n if (headers.hasOwnProperty(headerName)) {\n this.headers[headerName] = headers[headerName];\n }\n }\n }\n // ensure accept-language is set correctly\n if (!this.headers[\"accept-language\"]) {\n this.headers[\"accept-language\"] = \"en-US\";\n }\n // ensure the request-id is set correctly\n if (!this.headers[\"x-ms-client-request-id\"] && !options.disableClientRequestId) {\n this.headers[\"x-ms-client-request-id\"] = generateUuid();\n }\n\n // default\n if (!this.headers[\"Content-Type\"]) {\n this.headers[\"Content-Type\"] = \"application/json; charset=utf-8\";\n }\n\n // set the request body. request.js automatically sets the Content-Length request header, so we need not set it explicilty\n this.body = undefined;\n if (options.body !== null && options.body !== undefined) {\n // body as a stream special case. set the body as-is and check for some special request headers specific to sending a stream.\n if (options.bodyIsStream) {\n this.body = options.body;\n if (!this.headers[\"Transfer-Encoding\"]) {\n this.headers[\"Transfer-Encoding\"] = \"chunked\";\n }\n if (this.headers[\"Content-Type\"] !== \"application/octet-stream\") {\n this.headers[\"Content-Type\"] = \"application/octet-stream\";\n }\n } else {\n let serializedBody = undefined;\n if (options.serializationMapper) {\n serializedBody = new Serializer(options.mappers).serialize(options.serializationMapper, options.body, \"requestBody\");\n }\n if (options.disableJsonStringifyOnBody) {\n this.body = serializedBody || options.body;\n } else {\n this.body = serializedBody ? JSON.stringify(serializedBody) : JSON.stringify(options.body);\n }\n }\n }\n\n return this;\n }\n}\n\n/**\n * Prepares the request.\n * @param {object} options The request options that should be provided to send a request successfully\n * @param {string} options.method The HTTP request method. Valid values are \"GET\", \"PUT\", \"HEAD\", \"DELETE\", \"OPTIONS\", \"POST\", \"PATCH\".\n * @param {string} [options.url] The request url. It may or may not have query parameters in it.\n * Either provide the \"url\" or provide the \"pathTemplate\" in the options object. Both the options are mutually exclusive.\n * @param {object} [options.queryParameters] A dictionary of query parameters to be appended to the url, where\n * the \"key\" is the \"query-parameter-name\" and the \"value\" is the \"query-parameter-value\".\n * The \"query-parameter-value\" can be of type \"string\" or it can be of type \"object\".\n * The \"object\" format should be used when you want to skip url encoding. While using the object format,\n * the object must have a property named value which provides the \"query-parameter-value\".\n * Example:\n * - query-parameter-value in \"object\" format: { \"query-parameter-name\": { value: \"query-parameter-value\", skipUrlEncoding: true } }\n * - query-parameter-value in \"string\" format: { \"query-parameter-name\": \"query-parameter-value\"}.\n * Note: \"If options.url already has some query parameters, then the value provided in options.queryParameters will be appended to the url.\n * @param {string} [options.pathTemplate] The path template of the request url. Either provide the \"url\" or provide the \"pathTemplate\"\n * in the options object. Both the options are mutually exclusive.\n * Example: \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}\"\n * @param {string} [options.baseUrl] The base url of the request. Default value is: \"https://management.azure.com\". This is applicable only with\n * options.pathTemplate. If you are providing options.url then it is expected that you provide the complete url.\n * @param {object} [options.pathParameters] A dictionary of path parameters that need to be replaced with actual values in the pathTemplate.\n * Here the key is the \"path-parameter-name\" and the value is the \"path-parameter-value\".\n * The \"path-parameter-value\" can be of type \"string\" or it can be of type \"object\".\n * The \"object\" format should be used when you want to skip url encoding. While using the object format,\n * the object must have a property named value which provides the \"path-parameter-value\".\n * Example:\n * - path-parameter-value in \"object\" format: { \"path-parameter-name\": { value: \"path-parameter-value\", skipUrlEncoding: true } }\n * - path-parameter-value in \"string\" format: { \"path-parameter-name\": \"path-parameter-value\" }.\n * @param {object} [options.headers] A dictionary of request headers that need to be applied to the request.\n * Here the key is the \"header-name\" and the value is the \"header-value\". The header-value MUST be of type string.\n * - ContentType must be provided with the key name as \"Content-Type\". Default value \"application/json; charset=utf-8\".\n * - \"Transfer-Encoding\" is set to \"chunked\" by default if \"options.bodyIsStream\" is set to true.\n * - \"Content-Type\" is set to \"application/octet-stream\" by default if \"options.bodyIsStream\" is set to true.\n * - \"accept-language\" by default is set to \"en-US\"\n * - \"x-ms-client-request-id\" by default is set to a new Guid. To not generate a guid for the request, please set options.disableClientRequestId to true\n * @param {boolean} [options.disableClientRequestId] When set to true, instructs the client to not set \"x-ms-client-request-id\" header to a new Guid().\n * @param {object|string|boolean|array|number|null|undefined} [options.body] - The request body. It can be of any type. This method will JSON.stringify() the request body.\n * @param {object} [options.serializationMapper] - Provides information on how to serialize the request body.\n * @param {object} [options.mappers] - A dictionary of mappers that may be used while [de]serialization.\n * @param {object} [options.deserializationMapper] - Provides information on how to deserialize the response body.\n * @param {boolean} [options.disableJsonStringifyOnBody] - Indicates whether this method should JSON.stringify() the request body. Default value: false.\n * @param {boolean} [options.bodyIsStream] - Indicates whether the request body is a stream (useful for file upload scenarios).\n * @returns {object} WebResource Returns the prepared WebResource (HTTP Request) object that needs to be given to the request pipeline.\n */\nexport interface RequestPrepareOptions {\n method: HttpMethods;\n url?: string;\n queryParameters?: { [key: string]: any | ParameterValue };\n pathTemplate?: string;\n baseUrl?: string;\n pathParameters?: { [key: string]: any | ParameterValue };\n formData?: { [key: string]: any };\n headers?: { [key: string]: any };\n disableClientRequestId?: boolean;\n body?: any;\n serializationMapper?: Mapper;\n mappers?: { [x: string]: any };\n deserializationMapper?: object;\n disableJsonStringifyOnBody?: boolean;\n bodyIsStream?: boolean;\n}\n\n/**\n * The Parameter value provided for path or query parameters in RequestPrepareOptions\n */\nexport interface ParameterValue {\n value: any;\n skipUrlEncoding: boolean;\n [key: string]: any;\n}\n\n/**\n * Describes the base structure of the options object that will be used in every operation.\n */\nexport interface RequestOptionsBase {\n /**\n * @property {object} [customHeaders] - User defined custom request headers that\n * will be applied before the request is sent.\n */\n customHeaders?: { [key: string]: string };\n [key: string]: any;\n}\n\n\n// WEBPACK FOOTER //\n// ./lib/webResource.ts","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/process/browser.js\n// module id = 4\n// module chunks = 0","// Unique ID creation requires a high quality random # generator. In the\n// browser this is a little complicated due to unknown quality of Math.random()\n// and inconsistent support for the `crypto` API. We do the best we can via\n// feature-detection\n\n// getRandomValues needs to be invoked in a context where \"this\" is a Crypto implementation.\nvar getRandomValues = (typeof(crypto) != 'undefined' && crypto.getRandomValues.bind(crypto)) ||\n (typeof(msCrypto) != 'undefined' && msCrypto.getRandomValues.bind(msCrypto));\nif (getRandomValues) {\n // WHATWG crypto RNG - http://wiki.whatwg.org/wiki/Crypto\n var rnds8 = new Uint8Array(16); // eslint-disable-line no-undef\n\n module.exports = function whatwgRNG() {\n getRandomValues(rnds8);\n return rnds8;\n };\n} else {\n // Math.random()-based (RNG)\n //\n // If all else fails, use Math.random(). It's fast, but is of unspecified\n // quality.\n var rnds = new Array(16);\n\n module.exports = function mathRNG() {\n for (var i = 0, r; i < 16; i++) {\n if ((i & 0x03) === 0) r = Math.random() * 0x100000000;\n rnds[i] = r >>> ((i & 0x03) << 3) & 0xff;\n }\n\n return rnds;\n };\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/uuid/lib/rng-browser.js\n// module id = 5\n// module chunks = 0","/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\nvar byteToHex = [];\nfor (var i = 0; i < 256; ++i) {\n byteToHex[i] = (i + 0x100).toString(16).substr(1);\n}\n\nfunction bytesToUuid(buf, offset) {\n var i = offset || 0;\n var bth = byteToHex;\n return bth[buf[i++]] + bth[buf[i++]] +\n bth[buf[i++]] + bth[buf[i++]] + '-' +\n bth[buf[i++]] + bth[buf[i++]] + '-' +\n bth[buf[i++]] + bth[buf[i++]] + '-' +\n bth[buf[i++]] + bth[buf[i++]] + '-' +\n bth[buf[i++]] + bth[buf[i++]] +\n bth[buf[i++]] + bth[buf[i++]] +\n bth[buf[i++]] + bth[buf[i++]];\n}\n\nmodule.exports = bytesToUuid;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/uuid/lib/bytesToUuid.js\n// module id = 6\n// module chunks = 0","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License. See License.txt in the project root for license information.\n\nimport { WebResource } from \"./webResource\";\n\nexport class RestError extends Error {\n code?: string;\n statusCode?: number;\n request?: WebResource;\n response?: Response;\n body?: any;\n constructor(message: string, code?: string, statusCode?: number, request?: WebResource, response?: Response, body?: any) {\n super(message);\n this.code = code;\n this.statusCode = statusCode;\n this.request = request;\n this.response = response;\n this.body = body;\n }\n}\n\n\n// WEBPACK FOOTER //\n// ./lib/restError.ts","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License. See License.txt in the project root for license information.\n\nimport { WebResource } from \"./webResource\";\n\n/**\n * Wrapper object for http request and response. Deserialized object is stored in\n * the `bodyAsJson` property when the response body is received in JSON.\n * @class\n * Initializes a new instance of the HttpOperationResponse class.\n * @constructor\n */\nexport class HttpOperationResponse {\n /**\n * The raw request\n */\n request: WebResource;\n /**\n * The raw response. Please use the response directly when the response body is a ReadableStream.\n */\n response: Response;\n /**\n * The response body as text (string format)\n */\n bodyAsText: string | null;\n /**\n * The response body as parsed JSON\n */\n bodyAsJson: { [key: string]: any } | Array<any> | string | number | boolean | null | void;\n\n constructor(request: WebResource, response: Response) {\n /**\n * Reference to the original request object.\n * [WebResource] object.\n * @type {object}\n */\n this.request = request;\n\n /**\n * Reference to the original response object.\n * [ServerResponse] object.\n * @type {object}\n */\n this.response = response;\n /* tslint:disable:no-null-keyword */\n this.bodyAsText = null;\n this.bodyAsJson = null;\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./lib/httpOperationResponse.ts","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License. See License.txt in the project root for license information.\n\nimport * as utils from \"./util/utils\";\nimport { duration, isDuration } from \"moment\";\nconst isBuffer = require(\"is-buffer\");\nimport * as isStream from \"is-stream\";\n\nexport class Serializer {\n modelMappers?: { [key: string]: any };\n\n constructor(mappers?: { [key: string]: any }) {\n this.modelMappers = mappers;\n }\n\n validateConstraints(mapper: Mapper, value: any, objectName: string): void {\n if (mapper.constraints && (value !== null || value !== undefined)) {\n for (const constraintType of Object.keys(mapper.constraints)) {\n if (constraintType.match(/^ExclusiveMaximum$/ig) !== null) {\n if (value >= ((mapper.constraints as MapperConstraints).ExclusiveMaximum as number)) {\n throw new Error(`\"${objectName}\" with value \"${value}\" should satify the constraint \"ExclusiveMaximum\": ${((mapper.constraints as MapperConstraints).ExclusiveMaximum as number)}.`);\n }\n } else if (constraintType.match(/^ExclusiveMinimum$/ig) !== null) {\n if (value <= ((mapper.constraints as MapperConstraints).ExclusiveMinimum as number)) {\n throw new Error(`${objectName} \" with value \"${value} \" should satify the constraint \"ExclusiveMinimum\": ${((mapper.constraints as MapperConstraints).ExclusiveMinimum as number)}.`);\n }\n } else if (constraintType.match(/^InclusiveMaximum$/ig) !== null) {\n if (value > ((mapper.constraints as MapperConstraints).InclusiveMaximum as number)) {\n throw new Error(`${objectName}\" with value \"${value}\" should satify the constraint \"InclusiveMaximum\": ${((mapper.constraints as MapperConstraints).InclusiveMaximum as number)}.`);\n }\n } else if (constraintType.match(/^InclusiveMinimum$/ig) !== null) {\n if (value < ((mapper.constraints as MapperConstraints).InclusiveMinimum as number)) {\n throw new Error(`${objectName}\" with value \"${value}\" should satify the constraint \"InclusiveMinimum\": ${((mapper.constraints as MapperConstraints).InclusiveMinimum as number)}.`);\n }\n } else if (constraintType.match(/^MaxItems$/ig) !== null) {\n if (value.length > ((mapper.constraints as MapperConstraints).MaxItems as number)) {\n throw new Error(`${objectName}\" with value \"${value}\" should satify the constraint \"MaxItems\": ${((mapper.constraints as MapperConstraints).MaxItems as number)}.`);\n }\n } else if (constraintType.match(/^MaxLength$/ig) !== null) {\n if (value.length > ((mapper.constraints as MapperConstraints).MaxLength as number)) {\n throw new Error(`${objectName}\" with value \"${value}\" should satify the constraint \"MaxLength\": ${((mapper.constraints as MapperConstraints).MaxLength as number)}.`);\n }\n } else if (constraintType.match(/^MinItems$/ig) !== null) {\n if (value.length < ((mapper.constraints as MapperConstraints).MinItems as number)) {\n throw new Error(`${objectName}\" with value \"${value}\" should satify the constraint \"MinItems\": ${((mapper.constraints as MapperConstraints).MinItems as number)}.`);\n }\n } else if (constraintType.match(/^MinLength$/ig) !== null) {\n if (value.length < ((mapper.constraints as MapperConstraints).MinLength as number)) {\n throw new Error(`${objectName}\" with value \"${value}\" should satify the constraint \"MinLength\": ${((mapper.constraints as MapperConstraints).MinLength as number)}.`);\n }\n } else if (constraintType.match(/^MultipleOf$/ig) !== null) {\n if (value.length % ((mapper.constraints as MapperConstraints).MultipleOf as number) !== 0) {\n throw new Error(`${objectName}\" with value \"${value}\" should satify the constraint \"MultipleOf\": ${((mapper.constraints as MapperConstraints).MultipleOf as number)}.`);\n }\n } else if (constraintType.match(/^Pattern$/ig) !== null) {\n if (value.match(((mapper.constraints as MapperConstraints).Pattern as string).split(\"/\").join(\"\\/\")) === null) {\n throw new Error(`${objectName}\" with value \"${value}\" should satify the constraint \"Pattern\": ${((mapper.constraints as MapperConstraints).Pattern as string)}.`);\n }\n } else if (constraintType.match(/^UniqueItems/ig) !== null) {\n if (((mapper.constraints as MapperConstraints).UniqueItems as boolean)) {\n if (value.length !== value.filter((item: any, i: number, ar: Array<any>) => { { return ar.indexOf(item) === i; } }).length) {\n throw new Error(`${objectName}\" with value \"${value}\" should satify the constraint \"UniqueItems\": ${((mapper.constraints as MapperConstraints).UniqueItems as boolean)}`);\n }\n }\n }\n }\n }\n }\n\n private trimEnd(str: string, ch: string) {\n let len = str.length;\n while ((len - 1) >= 0 && str[len - 1] === ch) {\n --len;\n }\n return str.substr(0, len);\n }\n\n private bufferToBase64Url(buffer: any): string | undefined {\n if (!buffer) {\n return undefined;\n }\n if (!isBuffer(buffer)) {\n throw new Error(`Please provide an input of type Buffer for converting to Base64Url.`);\n }\n // Buffer to Base64.\n const str = buffer.toString(\"base64\");\n // Base64 to Base64Url.\n return this.trimEnd(str, \"=\").replace(/\\+/g, \"-\").replace(/\\//g, \"_\");\n }\n\n private base64UrlToBuffer(str: string): any {\n if (!str) {\n return undefined;\n }\n if (str && typeof str.valueOf() !== \"string\") {\n throw new Error(\"Please provide an input of type string for converting to Buffer\");\n }\n // Base64Url to Base64.\n str = str.replace(/\\-/g, \"+\").replace(/\\_/g, \"/\");\n // Base64 to Buffer.\n return Buffer.from(str, \"base64\");\n }\n\n private splitSerializeName(prop: string): Array<string> {\n const classes: Array<string> = [];\n let partialclass = \"\";\n const subwords = prop.split(\".\");\n\n for (const item of subwords) {\n if (item.charAt(item.length - 1) === \"\\\\\") {\n partialclass += item.substr(0, item.length - 1) + \".\";\n } else {\n partialclass += item;\n classes.push(partialclass);\n partialclass = \"\";\n }\n }\n\n return classes;\n }\n\n private dateToUnixTime(d: string | Date): number | undefined {\n if (!d) {\n return undefined;\n }\n\n if (typeof d.valueOf() === \"string\") {\n d = new Date(d as string);\n }\n return Math.floor((d as Date).getTime() / 1000);\n }\n\n private unixTimeToDate(n: number): Date | undefined {\n if (!n) {\n return undefined;\n }\n return new Date(n * 1000);\n }\n\n private serializeBasicTypes(typeName: string, objectName: string, value: any): any {\n if (value !== null && value !== undefined) {\n if (typeName.match(/^Number$/ig) !== null) {\n if (typeof value !== \"number\") {\n throw new Error(`${objectName} with value ${value} must be of type number.`);\n }\n } else if (typeName.match(/^String$/ig) !== null) {\n if (typeof value.valueOf() !== \"string\") {\n throw new Error(`${objectName} with value \"${value}\" must be of type string.`);\n }\n } else if (typeName.match(/^Uuid$/ig) !== null) {\n if (!(typeof value.valueOf() === \"string\" && utils.isValidUuid(value))) {\n throw new Error(`${objectName} with value \"${value}\" must be of type string and a valid uuid.`);\n }\n } else if (typeName.match(/^Boolean$/ig) !== null) {\n if (typeof value !== \"boolean\") {\n throw new Error(`${objectName} with value ${value} must be of type boolean.`);\n }\n } else if (typeName.match(/^Stream$/ig) !== null) {\n if (!isStream(value)) {\n throw new Error(`${objectName} must be of type stream.`);\n }\n }\n }\n return value;\n }\n\n private serializeEnumType(objectName: string, allowedValues: Array<any>, value: any): any {\n if (!allowedValues) {\n throw new Error(`Please provide a set of allowedValues to validate ${objectName} as an Enum Type.`);\n }\n const isPresent = allowedValues.some((item) => {\n if (typeof item.valueOf() === \"string\") {\n return item.toLowerCase() === value.toLowerCase();\n }\n return item === value;\n });\n if (!isPresent) {\n throw new Error(`${value} is not a valid value for ${objectName}. The valid values are: ${JSON.stringify(allowedValues)}.`);\n }\n return value;\n }\n\n private serializeBufferType(objectName: string, value: any): any {\n if (value !== null && value !== undefined) {\n if (!isBuffer(value)) {\n throw new Error(`${objectName} must be of type Buffer.`);\n }\n value = value.toString(\"base64\");\n }\n return value;\n }\n\n private serializeBase64UrlType(objectName: string, value: any): any {\n if (value !== null && value !== undefined) {\n if (!isBuffer(value)) {\n throw new Error(`${objectName} must be of type Buffer.`);\n }\n value = this.bufferToBase64Url(value);\n }\n return value;\n }\n\n private serializeDateTypes(typeName: string, value: any, objectName: string) {\n if (value !== null && value !== undefined) {\n if (typeName.match(/^Date$/ig) !== null) {\n if (!(value instanceof Date ||\n (typeof value.valueOf() === \"string\" && !isNaN(Date.parse(value))))) {\n throw new Error(`${objectName} must be an instanceof Date or a string in ISO8601 format.`);\n }\n value = (value instanceof Date) ? value.toISOString().substring(0, 10) : new Date(value).toISOString().substring(0, 10);\n } else if (typeName.match(/^DateTime$/ig) !== null) {\n if (!(value instanceof Date ||\n (typeof value.valueOf() === \"string\" && !isNaN(Date.parse(value))))) {\n throw new Error(`${objectName} must be an instanceof Date or a string in ISO8601 format.`);\n }\n value = (value instanceof Date) ? value.toISOString() : new Date(value).toISOString();\n } else if (typeName.match(/^DateTimeRfc1123$/ig) !== null) {\n if (!(value instanceof Date ||\n (typeof value.valueOf() === \"string\" && !isNaN(Date.parse(value))))) {\n throw new Error(`${objectName} must be an instanceof Date or a string in RFC-1123 format.`);\n }\n value = (value instanceof Date) ? value.toUTCString() : new Date(value).toUTCString();\n } else if (typeName.match(/^UnixTime$/ig) !== null) {\n if (!(value instanceof Date ||\n (typeof value.valueOf() === \"string\" && !isNaN(Date.parse(value))))) {\n throw new Error(`${objectName} must be an instanceof Date or a string in RFC-1123/ISO8601 format ` +\n `for it to be serialized in UnixTime/Epoch format.`);\n }\n value = this.dateToUnixTime(value);\n } else if (typeName.match(/^TimeSpan$/ig) !== null) {\n if (!(isDuration(value) || (value.constructor && value.constructor.name === \"Duration\" && typeof value.isValid === \"function\" && value.isValid()))) {\n throw new Error(`${objectName} must be a TimeSpan/Duration.`);\n }\n value = value.toISOString();\n }\n }\n return value;\n }\n\n private serializeSequenceType(mapper: SequenceMapper, object: any, objectName: string) {\n\n if (!Array.isArray(object)) {\n throw new Error(`${objectName} must be of type Array.`);\n }\n if (!mapper.type.element || typeof mapper.type.element !== \"object\") {\n throw new Error(`element\" metadata for an Array must be defined in the ` +\n `mapper and it must of type \"object\" in ${objectName}.`);\n }\n const tempArray = [];\n for (let i = 0; i < object.length; i++) {\n tempArray[i] = this.serialize(mapper.type.element, object[i], objectName);\n }\n return tempArray;\n }\n\n private serializeDictionaryType(mapper: DictionaryMapper, object: any, objectName: string) {\n\n if (typeof object !== \"object\") {\n throw new Error(`${objectName} must be of type object.`);\n }\n if (!mapper.type.value || typeof mapper.type.value !== \"object\") {\n throw new Error(`\"value\" metadata for a Dictionary must be defined in the ` +\n `mapper and it must of type \"object\" in ${objectName}.`);\n }\n const tempDictionary: { [key: string]: any } = {};\n for (const key in object) {\n if (object.hasOwnProperty(key)) {\n tempDictionary[key] = this.serialize(mapper.type.value, object[key], objectName);\n }\n }\n return tempDictionary;\n }\n\n private serializeCompositeType(mapper: CompositeMapper, object: any, objectName: string) {\n // check for polymorphic discriminator\n if (mapper.type.polymorphicDiscriminator) {\n mapper = this.getPolymorphicMapper(mapper, object, objectName, \"serialize\");\n }\n\n const payload: any = {};\n let modelMapper: CompositeMapper = {\n required: false,\n serializedName: \"serializedName\",\n type: {\n name: \"Composite\",\n className: \"className\",\n modelProperties: {}\n }\n };\n if (object !== null && object !== undefined) {\n let modelProps = mapper.type.modelProperties;\n if (!modelProps) {\n if (!mapper.type.className) {\n throw new Error(`Class name for model \"${objectName}\" is not provided in the mapper \"${JSON.stringify(mapper, undefined, 2)}\".`);\n }\n // get the mapper if modelProperties of the CompositeType is not present and\n // then get the modelProperties from it.\n modelMapper = (this.modelMappers as { [key: string]: any })[mapper.type.className];\n if (!modelMapper) {\n throw new Error(`mapper() cannot be null or undefined for model \"${mapper.type.className}\".`);\n }\n modelProps = modelMapper.type.modelProperties;\n if (!modelProps) {\n throw new Error(`modelProperties cannot be null or undefined in the ` +\n `mapper \"${JSON.stringify(modelMapper)}\" of type \"${mapper.type.className}\" for object \"${objectName}\".`);\n }\n }\n\n for (const key in modelProps) {\n if (modelProps.hasOwnProperty(key)) {\n const paths = this.splitSerializeName(modelProps[key].serializedName);\n const propName = paths.pop();\n\n let parentObject: any = payload;\n for (const pathName of paths) {\n const childObject = parentObject[pathName];\n if ((childObject === null || childObject === undefined) && (object[key] !== null && object[key] !== undefined)) {\n parentObject[pathName] = {};\n }\n parentObject = parentObject[pathName];\n }\n\n // make sure required properties of the CompositeType are present\n if (modelProps[key].required && !modelProps[key].isConstant) {\n if (object[key] === null || object[key] === undefined) {\n throw new Error(`${key}\" cannot be null or undefined in \"${objectName}\".`);\n }\n }\n // make sure that readOnly properties are not sent on the wire\n if (modelProps[key].readOnly) {\n continue;\n }\n // serialize the property if it is present in the provided object instance\n if (((parentObject !== null && parentObject !== undefined) && (modelProps[key].defaultValue !== null && modelProps[key].defaultValue !== undefined)) ||\n (object[key] !== null && object[key] !== undefined)) {\n let propertyObjectName = objectName;\n if (modelProps[key].serializedName !== \"\") propertyObjectName = objectName + \".\" + modelProps[key].serializedName;\n const propertyMapper = modelProps[key];\n const serializedValue = this.serialize(propertyMapper, object[key], propertyObjectName);\n if (propName !== null && propName !== undefined) parentObject[propName] = serializedValue;\n }\n }\n }\n return payload;\n }\n return object;\n }\n\n /**\n * Serialize the given object based on its metadata defined in the mapper\n *\n * @param {Mapper} mapper The mapper which defines the metadata of the serializable object\n *\n * @param {object|string|Array|number|boolean|Date|stream} object A valid Javascript object to be serialized\n *\n * @param {string} objectName Name of the serialized object\n *\n * @returns {object|string|Array|number|boolean|Date|stream} A valid serialized Javascript object\n */\n serialize(mapper: Mapper, object: any, objectName: string): any {\n let payload: any = {};\n const mapperType = mapper.type.name as string;\n if (!objectName) objectName = mapper.serializedName;\n if (mapperType.match(/^Sequence$/ig) !== null) payload = [];\n // Throw if required and object is null or undefined\n if (mapper.required && (object === null || object === undefined) && !mapper.isConstant) {\n throw new Error(`${objectName} cannot be null or undefined.`);\n }\n // Set Defaults\n if ((mapper.defaultValue !== null && mapper.defaultValue !== undefined) &&\n (object === null || object === undefined)) {\n object = mapper.defaultValue;\n }\n if (mapper.isConstant) object = mapper.defaultValue;\n // Validate Constraints if any\n this.validateConstraints(mapper, object, objectName);\n if (mapperType.match(/^any$/ig) !== null) {\n payload = object;\n } else if (mapperType.match(/^(Number|String|Boolean|Object|Stream|Uuid)$/ig) !== null) {\n payload = this.serializeBasicTypes(mapperType, objectName, object);\n } else if (mapperType.match(/^Enum$/ig) !== null) {\n const enumMapper: EnumMapper = mapper as EnumMapper;\n payload = this.serializeEnumType(objectName, enumMapper.type.allowedValues, object);\n } else if (mapperType.match(/^(Date|DateTime|TimeSpan|DateTimeRfc1123|UnixTime)$/ig) !== null) {\n payload = this.serializeDateTypes(mapperType, object, objectName);\n } else if (mapperType.match(/^ByteArray$/ig) !== null) {\n payload = this.serializeBufferType(objectName, object);\n } else if (mapperType.match(/^Base64Url$/ig) !== null) {\n payload = this.serializeBase64UrlType(objectName, object);\n } else if (mapperType.match(/^Sequence$/ig) !== null) {\n payload = this.serializeSequenceType(mapper as SequenceMapper, object, objectName);\n } else if (mapperType.match(/^Dictionary$/ig) !== null) {\n payload = this.serializeDictionaryType(mapper as DictionaryMapper, object, objectName);\n } else if (mapperType.match(/^Composite$/ig) !== null) {\n payload = this.serializeCompositeType(mapper as CompositeMapper, object, objectName);\n }\n return payload;\n }\n\n private deserializeCompositeType(mapper: CompositeMapper, responseBody: any, objectName: string): any {\n /*jshint validthis: true */\n // check for polymorphic discriminator\n if (mapper.type.polymorphicDiscriminator) {\n mapper = this.getPolymorphicMapper(mapper, responseBody, objectName, \"deserialize\");\n }\n\n let instance: { [key: string]: any } = {};\n let modelMapper: Mapper = {\n required: false,\n serializedName: \"serializedName\",\n type: {\n name: \"Composite\"\n }\n };\n if (responseBody !== null && responseBody !== undefined) {\n let modelProps = mapper.type.modelProperties;\n if (!modelProps) {\n if (!mapper.type.className) {\n throw new Error(`Class name for model \"${objectName}\" is not provided in the mapper \"${JSON.stringify(mapper)}\"`);\n }\n // get the mapper if modelProperties of the CompositeType is not present and\n // then get the modelProperties from it.\n modelMapper = (this.modelMappers as { [key: string]: any })[mapper.type.className];\n if (!modelMapper) {\n throw new Error(`mapper() cannot be null or undefined for model \"${mapper.type.className}\"`);\n }\n modelProps = (modelMapper as CompositeMapper).type.modelProperties;\n if (!modelProps) {\n throw new Error(`modelProperties cannot be null or undefined in the ` +\n `mapper \"${JSON.stringify(modelMapper)}\" of type \"${mapper.type.className}\" for responseBody \"${objectName}\".`);\n }\n }\n\n for (const key in modelProps) {\n if (modelProps.hasOwnProperty(key)) {\n const paths = this.splitSerializeName(modelProps[key].serializedName);\n // deserialize the property if it is present in the provided responseBody instance\n let propertyInstance;\n let res = responseBody;\n // traversing the object step by step.\n for (const item of paths) {\n if (!res) break;\n res = res[item];\n }\n propertyInstance = res;\n let propertyObjectName = objectName;\n if (modelProps[key].serializedName !== \"\") propertyObjectName = objectName + \".\" + modelProps[key].serializedName;\n const propertyMapper = modelProps[key];\n let serializedValue;\n // paging\n if (Array.isArray(responseBody[key]) && modelProps[key].serializedName === \"\") {\n propertyInstance = responseBody[key];\n instance = this.deserialize(propertyMapper, propertyInstance, propertyObjectName);\n } else if (propertyInstance !== null && propertyInstance !== undefined) {\n serializedValue = this.deserialize(propertyMapper, propertyInstance, propertyObjectName);\n instance[key] = serializedValue;\n }\n }\n }\n return instance;\n }\n return responseBody;\n }\n\n private deserializeDictionaryType(mapper: DictionaryMapper, responseBody: any, objectName: string): any {\n /*jshint validthis: true */\n if (!mapper.type.value || typeof mapper.type.value !== \"object\") {\n throw new Error(`\"value\" metadata for a Dictionary must be defined in the ` +\n `mapper and it must of type \"object\" in ${objectName}`);\n }\n if (responseBody) {\n const tempDictionary: { [key: string]: any } = {};\n for (const key in responseBody) {\n if (responseBody.hasOwnProperty(key)) {\n tempDictionary[key] = this.deserialize(mapper.type.value, responseBody[key], objectName);\n }\n }\n return tempDictionary;\n }\n return responseBody;\n }\n\n private deserializeSequenceType(mapper: SequenceMapper, responseBody: any, objectName: string): any {\n /*jshint validthis: true */\n if (!mapper.type.element || typeof mapper.type.element !== \"object\") {\n throw new Error(`element\" metadata for an Array must be defined in the ` +\n `mapper and it must of type \"object\" in ${objectName}`);\n }\n if (responseBody) {\n const tempArray = [];\n for (let i = 0; i < responseBody.length; i++) {\n tempArray[i] = this.deserialize(mapper.type.element, responseBody[i], objectName);\n }\n return tempArray;\n }\n return responseBody;\n }\n\n /**\n * Deserialize the given object based on its metadata defined in the mapper\n *\n * @param {object} mapper The mapper which defines the metadata of the serializable object\n *\n * @param {object|string|Array|number|boolean|Date|stream} responseBody A valid Javascript entity to be deserialized\n *\n * @param {string} objectName Name of the deserialized object\n *\n * @returns {object|string|Array|number|boolean|Date|stream} A valid deserialized Javascript object\n */\n deserialize(mapper: Mapper, responseBody: any, objectName: string): any {\n if (responseBody === null || responseBody === undefined) return responseBody;\n let payload: any;\n const mapperType = mapper.type.name;\n if (!objectName) objectName = mapper.serializedName;\n if (mapperType.match(/^Sequence$/ig) !== null) payload = [];\n\n if (mapperType.match(/^(Number|String|Boolean|Enum|Object|Stream|Uuid|any)$/ig) !== null) {\n payload = responseBody;\n } else if (mapperType.match(/^(Date|DateTime|DateTimeRfc1123)$/ig) !== null) {\n payload = new Date(responseBody);\n } else if (mapperType.match(/^TimeSpan$/ig) !== null) {\n payload = duration(responseBody);\n } else if (mapperType.match(/^UnixTime$/ig) !== null) {\n payload = this.unixTimeToDate(responseBody);\n } else if (mapperType.match(/^ByteArray$/ig) !== null) {\n payload = Buffer.from(responseBody, \"base64\");\n } else if (mapperType.match(/^Base64Url$/ig) !== null) {\n payload = this.base64UrlToBuffer(responseBody);\n } else if (mapperType.match(/^Sequence$/ig) !== null) {\n payload = this.deserializeSequenceType(mapper as SequenceMapper, responseBody, objectName);\n } else if (mapperType.match(/^Dictionary$/ig) !== null) {\n payload = this.deserializeDictionaryType(mapper as DictionaryMapper, responseBody, objectName);\n } else if (mapperType.match(/^Composite$/ig) !== null) {\n payload = this.deserializeCompositeType(mapper as CompositeMapper, responseBody, objectName);\n }\n\n if (mapper.isConstant) payload = mapper.defaultValue;\n\n return payload;\n }\n\n private getPolymorphicMapper(mapper: CompositeMapper, object: any, objectName: string, mode: string): CompositeMapper {\n\n // check for polymorphic discriminator\n // Until version 1.15.1, \"polymorphicDiscriminator\" in the mapper was a string. This method was not effective when the\n // polymorphicDiscriminator property had a dot in it\"s name. So we have comeup with a desgin where polymorphicDiscriminator\n // will be an object that contains the clientName (normalized property name, ex: \"odatatype\") and\n // the serializedName (ex: \"odata.type\") (We do not escape the dots with double backslash in this case as it is not required)\n // Thus when serializing, the user will give us an object which will contain the normalizedProperty hence we will lookup\n // the clientName of the polmorphicDiscriminator in the mapper and during deserialization from the responseBody we will\n // lookup the serializedName of the polmorphicDiscriminator in the mapper. This will help us in selecting the correct mapper\n // for the model that needs to be serializes or deserialized.\n // We need this routing for backwards compatibility. This will absorb the breaking change in the mapper and allow new versions\n // of the runtime to work seamlessly with older version (>= 0.17.0-Nightly20161008) of Autorest generated node.js clients.\n if (mapper.type.polymorphicDiscriminator) {\n if (typeof mapper.type.polymorphicDiscriminator.valueOf() === \"string\") {\n return this.getPolymorphicMapperStringVersion(mapper, object, objectName);\n } else if (mapper.type.polymorphicDiscriminator instanceof Object) {\n return this.getPolymorphicMapperObjectVersion(mapper, object, objectName, mode);\n } else {\n throw new Error(`The polymorphicDiscriminator for \"${objectName}\" is neither a string nor an object.`);\n }\n }\n return mapper;\n }\n\n // processes new version of the polymorphicDiscriminator in the mapper.\n private getPolymorphicMapperObjectVersion(mapper: CompositeMapper, object: any, objectName: string, mode: string): CompositeMapper {\n\n // check for polymorphic discriminator\n let polymorphicPropertyName = \"\";\n if (mode === \"serialize\") {\n polymorphicPropertyName = \"clientName\";\n } else if (mode === \"deserialize\") {\n polymorphicPropertyName = \"serializedName\";\n } else {\n throw new Error(`The given mode \"${mode}\" for getting the polymorphic mapper for \"${objectName}\" is inavlid.`);\n }\n const discriminatorAsObject: PolymorphicDiscriminator = mapper.type.polymorphicDiscriminator as PolymorphicDiscriminator;\n\n if (discriminatorAsObject &&\n discriminatorAsObject[polymorphicPropertyName] !== null &&\n discriminatorAsObject[polymorphicPropertyName] !== undefined) {\n if (object === null || object === undefined) {\n throw new Error(`${objectName}\" cannot be null or undefined. ` +\n `\"${discriminatorAsObject[polymorphicPropertyName]}\" is the ` +\n `polmorphicDiscriminator and is a required property.`);\n }\n if (object[discriminatorAsObject[polymorphicPropertyName]] === null ||\n object[discriminatorAsObject[polymorphicPropertyName]] === undefined) {\n throw new Error(`No discriminator field \"${discriminatorAsObject[polymorphicPropertyName]}\" was found in \"${objectName}\".`);\n }\n let indexDiscriminator = undefined;\n if (object[discriminatorAsObject[polymorphicPropertyName]] === mapper.type.uberParent) {\n indexDiscriminator = object[discriminatorAsObject[polymorphicPropertyName]];\n } else {\n indexDiscriminator = mapper.type.uberParent + \".\" + object[discriminatorAsObject[polymorphicPropertyName]];\n }\n if (this.modelMappers && this.modelMappers.discriminators[indexDiscriminator]) {\n mapper = this.modelMappers.discriminators[indexDiscriminator];\n }\n }\n return mapper;\n }\n\n // processes old version of the polymorphicDiscriminator in the mapper.\n private getPolymorphicMapperStringVersion(mapper: CompositeMapper, object: any, objectName: string): CompositeMapper {\n // check for polymorphic discriminator\n const discriminatorAsString: string = mapper.type.polymorphicDiscriminator as string;\n if (discriminatorAsString !== null && discriminatorAsString !== undefined) {\n if (object === null || object === undefined) {\n throw new Error(`${objectName}\" cannot be null or undefined. \"${discriminatorAsString}\" is the ` +\n `polmorphicDiscriminator and is a required property.`);\n }\n if (object[discriminatorAsString] === null || object[discriminatorAsString] === undefined) {\n throw new Error(`No discriminator field \"${discriminatorAsString}\" was found in \"${objectName}\".`);\n }\n let indexDiscriminator = undefined;\n if (object[discriminatorAsString] === mapper.type.uberParent) {\n indexDiscriminator = object[discriminatorAsString];\n } else {\n indexDiscriminator = mapper.type.uberParent + \".\" + object[discriminatorAsString];\n }\n if (this.modelMappers && this.modelMappers.discriminators[indexDiscriminator]) {\n mapper = this.modelMappers.discriminators[indexDiscriminator];\n }\n }\n\n return mapper;\n }\n}\n\nexport interface MapperConstraints {\n InclusiveMaximum?: number;\n ExclusiveMaximum?: number;\n InclusiveMinimum?: number;\n ExclusiveMinimum?: number;\n MaxLength?: number;\n MinLength?: number;\n Pattern?: string;\n MaxItems?: number;\n MinItems?: number;\n UniqueItems?: true;\n MultipleOf?: number;\n}\n\nexport interface BaseMapperType {\n name: string;\n [key: string]: any;\n}\n\nexport interface Mapper {\n readOnly?: boolean;\n isConstant?: boolean;\n required: boolean;\n serializedName: string;\n type: BaseMapperType;\n defaultValue?: any;\n constraints?: MapperConstraints;\n}\n\nexport interface PolymorphicDiscriminator {\n serializedName: string;\n clientName: string;\n [key: string]: string;\n}\n\nexport interface CompositeMapper extends Mapper {\n type: {\n name: \"Composite\";\n className: string;\n modelProperties?: { [propertyName: string]: Mapper };\n uberParent?: string;\n polymorphicDiscriminator?: string | PolymorphicDiscriminator;\n };\n}\n\nexport interface SequenceMapper extends Mapper {\n type: {\n name: \"Sequence\";\n element: Mapper;\n };\n}\n\nexport interface DictionaryMapper extends Mapper {\n type: {\n name: \"Dictionary\";\n value: Mapper;\n };\n}\n\nexport interface EnumMapper extends Mapper {\n type: {\n name: \"Enum\";\n allowedValues: Array<any>;\n };\n}\n\nexport interface UrlParameterValue {\n value: string;\n skipUrlEncoding: boolean;\n}\n\nexport function serializeObject(toSerialize: any): any {\n if (toSerialize === null || toSerialize === undefined) return undefined;\n if (isBuffer(toSerialize)) {\n toSerialize = toSerialize.toString(\"base64\");\n return toSerialize;\n }\n else if (toSerialize instanceof Date) {\n return toSerialize.toISOString();\n }\n else if (Array.isArray(toSerialize)) {\n const array = [];\n for (let i = 0; i < toSerialize.length; i++) {\n array.push(serializeObject(toSerialize[i]));\n }\n return array;\n } else if (typeof toSerialize === \"object\") {\n const dictionary: { [key: string]: any } = {};\n for (const property in toSerialize) {\n dictionary[property] = serializeObject(toSerialize[property]);\n }\n return dictionary;\n }\n return toSerialize;\n}\n\nexport const MapperType = utils.strEnum([\n \"Base64Url\",\n \"Boolean\",\n \"ByteArray\",\n \"Composite\",\n \"Date\",\n \"DateTime\",\n \"DateTimeRfc1123\",\n \"Dictionary\",\n \"Enum\",\n \"Number\",\n \"Object\",\n \"Sequence\",\n \"String\",\n \"Stream\",\n \"TimeSpan\",\n \"UnixTime\"\n]);\n\n\n// WEBPACK FOOTER //\n// ./lib/serializer.ts","'use strict';\n\nvar isStream = module.exports = function (stream) {\n\treturn stream !== null && typeof stream === 'object' && typeof stream.pipe === 'function';\n};\n\nisStream.writable = function (stream) {\n\treturn isStream(stream) && stream.writable !== false && typeof stream._write === 'function' && typeof stream._writableState === 'object';\n};\n\nisStream.readable = function (stream) {\n\treturn isStream(stream) && stream.readable !== false && typeof stream._read === 'function' && typeof stream._readableState === 'object';\n};\n\nisStream.duplex = function (stream) {\n\treturn isStream.writable(stream) && isStream.readable(stream);\n};\n\nisStream.transform = function (stream) {\n\treturn isStream.duplex(stream) && typeof stream._transform === 'function' && typeof stream._transformState === 'object';\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/is-stream/index.js\n// module id = 10\n// module chunks = 0","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License. See License.txt in the project root for license information.\n\nimport { WebResource } from \"./webResource\";\nimport { HttpOperationResponse } from \"./httpOperationResponse\";\nimport { BaseFilter } from \"./filters/baseFilter\";\nimport * as utils from \"./util/utils\";\n\nexport interface RequestFunction {\n (webResource: WebResource): Promise<HttpOperationResponse>;\n}\nexport class RequestPipeline {\n filters: BaseFilter[];\n requestOptions: RequestInit;\n\n constructor(filters?: BaseFilter[], requestOptions?: RequestInit) {\n this.filters = filters || [];\n this.requestOptions = requestOptions || {};\n }\n\n addFilter(f: BaseFilter): void {\n this.filters.push(f);\n return;\n }\n\n create(): RequestFunction {\n const self = this;\n let pipeline: Array<Function> = [];\n if (self.filters && self.filters.length) {\n const beforeFilters: Array<Function> = [];\n const afterFilters: Array<Function> = [];\n for (let i = 0; i < self.filters.length; i++) {\n const filter = self.filters[i];\n if (filter.before && typeof filter.before === \"function\") {\n beforeFilters.push(filter.before.bind(filter));\n }\n if (filter.after && typeof filter.after === \"function\") {\n afterFilters.push(filter.after.bind(filter));\n }\n }// end-of-for-loop\n // add the request sink\n beforeFilters.push(self.requestSink.bind(self));\n pipeline = beforeFilters.concat(afterFilters);\n } else {\n pipeline.push(self.requestSink.bind(self));\n }\n const requestFun: RequestFunction = (request: WebResource): Promise<HttpOperationResponse> => {\n if (!request.headers) request.headers = {};\n return utils.executePromisesSequentially(pipeline, request);\n };\n return requestFun;\n }\n\n requestSink(options: WebResource): Promise<HttpOperationResponse> {\n if (this.requestOptions.method) delete this.requestOptions.method;\n return utils.dispatchRequest(options);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./lib/requestPipeline.ts","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License. See License.txt in the project root for license information.\n\nimport { BaseFilter } from \"./baseFilter\";\nimport * as utils from \"../util/utils\";\nimport { HttpOperationResponse } from \"../httpOperationResponse\";\n\nexport interface RetryData {\n retryCount: number;\n retryInterval: number;\n error?: RetryError;\n}\n\nexport interface RetryError extends Error {\n message: string;\n code?: string;\n innerError?: RetryError;\n}\n\n/**\n * @class\n * Instantiates a new \"ExponentialRetryPolicyFilter\" instance.\n *\n * @constructor\n * @param {number} retryCount The client retry count.\n * @param {number} retryInterval The client retry interval, in milliseconds.\n * @param {number} minRetryInterval The minimum retry interval, in milliseconds.\n * @param {number} maxRetryInterval The maximum retry interval, in milliseconds.\n */\nexport class ExponentialRetryPolicyFilter extends BaseFilter {\n\n retryCount: number;\n retryInterval: number;\n minRetryInterval: number;\n maxRetryInterval: number;\n DEFAULT_CLIENT_RETRY_INTERVAL = 1000 * 30;\n DEFAULT_CLIENT_RETRY_COUNT = 3;\n DEFAULT_CLIENT_MAX_RETRY_INTERVAL = 1000 * 90;\n DEFAULT_CLIENT_MIN_RETRY_INTERVAL = 1000 * 3;\n\n constructor(retryCount?: number, retryInterval?: number, minRetryInterval?: number, maxRetryInterval?: number) {\n super();\n this.retryCount = typeof retryCount === \"number\" ? retryCount : this.DEFAULT_CLIENT_RETRY_COUNT;\n this.retryInterval = typeof retryInterval === \"number\" ? retryInterval : this.DEFAULT_CLIENT_RETRY_INTERVAL;\n this.minRetryInterval = typeof minRetryInterval === \"number\" ? minRetryInterval : this.DEFAULT_CLIENT_MIN_RETRY_INTERVAL;\n this.maxRetryInterval = typeof maxRetryInterval === \"number\" ? maxRetryInterval : this.DEFAULT_CLIENT_MAX_RETRY_INTERVAL;\n }\n\n /**\n * Determines if the operation should be retried and how long to wait until the next retry.\n *\n * @param {number} statusCode The HTTP status code.\n * @param {RetryData} retryData The retry data.\n * @return {boolean} True if the operation qualifies for a retry; false otherwise.\n */\n shouldRetry(statusCode: number, retryData: RetryData): boolean {\n if ((statusCode < 500 && statusCode !== 408) || statusCode === 501 || statusCode === 505) {\n return false;\n }\n\n let currentCount: number;\n if (!retryData) {\n throw new Error(\"retryData for the ExponentialRetryPolicyFilter cannot be null.\");\n } else {\n currentCount = (retryData && retryData.retryCount);\n }\n\n return (currentCount < this.retryCount);\n }\n\n /**\n * Updates the retry data for the next attempt.\n *\n * @param {RetryData} retryData The retry data.\n * @param {object} err The operation\"s error, if any.\n */\n updateRetryData(retryData?: RetryData, err?: RetryError): RetryData {\n if (!retryData) {\n retryData = {\n retryCount: 0,\n retryInterval: 0\n };\n }\n\n if (err) {\n if (retryData.error) {\n err.innerError = retryData.error;\n }\n\n retryData.error = err;\n }\n\n // Adjust retry count\n retryData.retryCount++;\n\n // Adjust retry interval\n let incrementDelta = Math.pow(2, retryData.retryCount) - 1;\n const boundedRandDelta = this.retryInterval * 0.8 +\n Math.floor(Math.random() * (this.retryInterval * 1.2 - this.retryInterval * 0.8));\n incrementDelta *= boundedRandDelta;\n\n retryData.retryInterval = Math.min(this.minRetryInterval + incrementDelta, this.maxRetryInterval);\n\n return retryData;\n }\n\n async retry(operationResponse: HttpOperationResponse, retryData?: RetryData, err?: RetryError): Promise<HttpOperationResponse> {\n const self = this;\n const response = operationResponse.response;\n retryData = self.updateRetryData(retryData, err);\n if (!utils.objectIsNull(response) && self.shouldRetry(response.status, retryData)) {\n try {\n await utils.delay(retryData.retryInterval);\n const res: HttpOperationResponse = await utils.dispatchRequest(operationResponse.request);\n return self.retry(res, retryData, err);\n } catch (err) {\n return self.retry(operationResponse, retryData, err);\n }\n } else {\n if (!utils.objectIsNull(err)) {\n // If the operation failed in the end, return all errors instead of just the last one\n err = retryData.error;\n return Promise.reject(err);\n }\n return Promise.resolve(operationResponse);\n }\n }\n\n after(operationResponse: HttpOperationResponse): Promise<HttpOperationResponse> {\n return this.retry(operationResponse);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./lib/filters/exponentialRetryPolicyFilter.ts","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License. See License.txt in the project root for license information.\n\nimport { BaseFilter } from \"./baseFilter\";\nimport * as utils from \"../util/utils\";\nimport { HttpOperationResponse } from \"../httpOperationResponse\";\n\nexport interface RetryData {\n retryCount: number;\n retryInterval: number;\n error?: RetryError;\n}\n\nexport interface RetryError extends Error {\n message: string;\n code?: string;\n innerError?: RetryError;\n}\n\n/**\n * @class\n * Instantiates a new \"ExponentialRetryPolicyFilter\" instance.\n *\n * @constructor\n * @param {number} retryCount The client retry count.\n * @param {number} retryInterval The client retry interval, in milliseconds.\n * @param {number} minRetryInterval The minimum retry interval, in milliseconds.\n * @param {number} maxRetryInterval The maximum retry interval, in milliseconds.\n */\nexport class SystemErrorRetryPolicyFilter extends BaseFilter {\n\n retryCount: number;\n retryInterval: number;\n minRetryInterval: number;\n maxRetryInterval: number;\n DEFAULT_CLIENT_RETRY_INTERVAL = 1000 * 30;\n DEFAULT_CLIENT_RETRY_COUNT = 3;\n DEFAULT_CLIENT_MAX_RETRY_INTERVAL = 1000 * 90;\n DEFAULT_CLIENT_MIN_RETRY_INTERVAL = 1000 * 3;\n\n constructor(retryCount?: number, retryInterval?: number, minRetryInterval?: number, maxRetryInterval?: number) {\n super();\n this.retryCount = typeof retryCount === \"number\" ? retryCount : this.DEFAULT_CLIENT_RETRY_COUNT;\n this.retryInterval = typeof retryInterval === \"number\" ? retryInterval : this.DEFAULT_CLIENT_RETRY_INTERVAL;\n this.minRetryInterval = typeof minRetryInterval === \"number\" ? minRetryInterval : this.DEFAULT_CLIENT_MIN_RETRY_INTERVAL;\n this.maxRetryInterval = typeof maxRetryInterval === \"number\" ? maxRetryInterval : this.DEFAULT_CLIENT_MAX_RETRY_INTERVAL;\n }\n\n /**\n * Determines if the operation should be retried and how long to wait until the next retry.\n *\n * @param {number} statusCode The HTTP status code.\n * @param {RetryData} retryData The retry data.\n * @return {boolean} True if the operation qualifies for a retry; false otherwise.\n */\n shouldRetry(retryData: RetryData): boolean {\n let currentCount;\n if (!retryData) {\n throw new Error(\"retryData for the SystemErrorRetryPolicyFilter cannot be null.\");\n } else {\n currentCount = (retryData && retryData.retryCount);\n }\n return (currentCount < this.retryCount);\n }\n\n /**\n * Updates the retry data for the next attempt.\n *\n * @param {RetryData} retryData The retry data.\n * @param {object} err The operation\"s error, if any.\n */\n updateRetryData(retryData?: RetryData, err?: RetryError): RetryData {\n if (!retryData) {\n retryData = {\n retryCount: 0,\n retryInterval: 0\n };\n }\n\n if (err) {\n if (retryData.error) {\n err.innerError = retryData.error;\n }\n\n retryData.error = err;\n }\n\n // Adjust retry count\n retryData.retryCount++;\n\n // Adjust retry interval\n let incrementDelta = Math.pow(2, retryData.retryCount) - 1;\n const boundedRandDelta = this.retryInterval * 0.8 +\n Math.floor(Math.random() * (this.retryInterval * 1.2 - this.retryInterval * 0.8));\n incrementDelta *= boundedRandDelta;\n\n retryData.retryInterval = Math.min(this.minRetryInterval + incrementDelta, this.maxRetryInterval);\n\n return retryData;\n }\n\n async retry(operationResponse: HttpOperationResponse, retryData?: RetryData, err?: RetryError): Promise<HttpOperationResponse> {\n const self = this;\n retryData = self.updateRetryData(retryData, err);\n if (err && err.code && self.shouldRetry(retryData) &&\n (err.code === \"ETIMEDOUT\" || err.code === \"ESOCKETTIMEDOUT\" || err.code === \"ECONNREFUSED\" ||\n err.code === \"ECONNRESET\" || err.code === \"ENOENT\")) {\n // If previous operation ended with an error and the policy allows a retry, do that\n try {\n await utils.delay(retryData.retryInterval);\n const res: HttpOperationResponse = await utils.dispatchRequest(operationResponse.request);\n return self.retry(res, retryData, err);\n } catch (err) {\n return self.retry(operationResponse, retryData, err);\n }\n } else {\n if (!utils.objectIsNull(err)) {\n // If the operation failed in the end, return all errors instead of just the last one\n err = retryData.error;\n return Promise.reject(err);\n }\n return Promise.resolve(operationResponse);\n }\n }\n\n after(operationResponse: HttpOperationResponse): Promise<HttpOperationResponse> {\n return this.retry(operationResponse); // See: https://github.com/Microsoft/TypeScript/issues/7426\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./lib/filters/systemErrorRetryPolicyFilter.ts","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License. See License.txt in the project root for license information.\nimport { BaseFilter } from \"./baseFilter\";\nimport { HttpOperationResponse } from \"../httpOperationResponse\";\nimport * as utils from \"../util/utils\";\n\nconst parse = require(\"url-parse\");\n\nexport class RedirectFilter extends BaseFilter {\n\n maximumRetries?: number;\n\n constructor(maximumRetries = 20) {\n super();\n this.maximumRetries = maximumRetries;\n }\n\n async handleRedirect(operationResponse: HttpOperationResponse, currentRetries: number): Promise<HttpOperationResponse> {\n const request = operationResponse.request;\n const response = operationResponse.response;\n if (response && response.headers && response.headers.get(\"location\") &&\n (response.status === 300 || response.status === 307 || (response.status === 303 && request.method === \"POST\")) &&\n (!this.maximumRetries || currentRetries < this.maximumRetries)) {\n if (parse(response.headers.get(\"location\")).hostname) {\n request.url = response.headers.get(\"location\") as string;\n } else {\n const urlObject = parse(request.url);\n urlObject.set(\"pathname\", response.headers.get(\"location\") as string);\n request.url = urlObject.href;\n }\n // POST request with Status code 303 should be converted into a\n // redirected GET request if the redirect url is present in the location header\n if (response.status === 303) {\n request.method = \"GET\";\n }\n let res: HttpOperationResponse;\n try {\n res = await utils.dispatchRequest(request);\n currentRetries++;\n } catch (err) {\n return Promise.reject(err);\n }\n return this.handleRedirect(res, currentRetries);\n }\n return Promise.resolve(operationResponse);\n }\n\n after(operationResponse: HttpOperationResponse): Promise<HttpOperationResponse> {\n return this.handleRedirect(operationResponse, 0);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./lib/filters/redirectFilter.ts","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License. See License.txt in the project root for license information.\n\nimport { BaseFilter } from \"./baseFilter\";\nimport { WebResource } from \"../webResource\";\nimport { ServiceClientCredentials } from \"../credentials/serviceClientCredentials\";\n\nexport class SigningFilter extends BaseFilter {\n\n authenticationProvider: ServiceClientCredentials;\n\n constructor(authenticationProvider: ServiceClientCredentials) {\n super();\n this.authenticationProvider = authenticationProvider;\n }\n\n before(request: WebResource): Promise<WebResource> {\n const self = this;\n return self.authenticationProvider.signRequest(request);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./lib/filters/signingFilter.ts","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License. See License.txt in the project root for license information.\n\nimport { BaseFilter } from \"./baseFilter\";\nimport { WebResource } from \"../webResource\";\nimport { Constants } from \"../util/constants\";\nimport { isNode } from \"../util/utils\";\nimport * as os from \"os\";\n\nconst HeaderConstants = Constants.HeaderConstants;\n\nexport class MsRestUserAgentFilter extends BaseFilter {\n\n userAgentInfo: Array<string>;\n\n constructor(userAgentInfo: Array<string>) {\n super();\n this.userAgentInfo = userAgentInfo;\n }\n\n tagRequest(request: WebResource): Promise<WebResource> {\n if (isNode) {\n const osInfo = `(${os.arch()}-${os.type()}-${os.release()})`;\n if (this.userAgentInfo.indexOf(osInfo) === -1) {\n this.userAgentInfo.unshift(osInfo);\n }\n\n const runtimeInfo = `Node/${process.version}`;\n if (this.userAgentInfo.indexOf(runtimeInfo) === -1) {\n this.userAgentInfo.unshift(runtimeInfo);\n }\n\n const nodeSDKSignature = `Azure-SDK-For-Node`;\n if (this.userAgentInfo.indexOf(nodeSDKSignature) === -1) {\n const azureRuntime = `ms-rest-azure`;\n\n let insertIndex = this.userAgentInfo.indexOf(azureRuntime);\n // insert after azureRuntime, otherwise, insert last.\n insertIndex = insertIndex < 0 ? this.userAgentInfo.length : insertIndex + 1;\n this.userAgentInfo.splice(insertIndex, 0, nodeSDKSignature);\n }\n if (!request.headers) request.headers = {};\n request.headers[HeaderConstants.USER_AGENT] = this.userAgentInfo.join(\" \");\n }\n return Promise.resolve(request);\n }\n\n before(request: WebResource): Promise<WebResource> {\n const self = this;\n if (!request.headers) request.headers = {};\n if (!request.headers[HeaderConstants.USER_AGENT]) {\n return self.tagRequest(request);\n } else {\n return Promise.resolve(request);\n }\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./lib/filters/msRestUserAgentFilter.ts","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License. See License.txt in the project root for license information.\n\nimport { WebResource, RequestPrepareOptions, HttpMethods, ParameterValue, RequestOptionsBase } from \"./webResource\";\nimport { HttpOperationResponse } from \"./httpOperationResponse\";\nimport { RestError } from \"./restError\";\nimport { ServiceClient, ServiceClientOptions } from \"./serviceClient\";\nimport { Constants } from \"./util/constants\";\nimport { RequestPipeline, RequestFunction } from \"./requestPipeline\";\nimport { LogFilter } from \"./filters/logFilter\";\nimport { BaseFilter } from \"./filters/baseFilter\";\nimport { ExponentialRetryPolicyFilter } from \"./filters/exponentialRetryPolicyFilter\";\nimport { SystemErrorRetryPolicyFilter } from \"./filters/systemErrorRetryPolicyFilter\";\nimport { RedirectFilter } from \"./filters/redirectFilter\";\nimport { SigningFilter } from \"./filters/signingFilter\";\nimport { MsRestUserAgentFilter } from \"./filters/msRestUserAgentFilter\";\nimport {\n BaseMapperType, CompositeMapper, DictionaryMapper, EnumMapper, Mapper,\n MapperConstraints, MapperType, PolymorphicDiscriminator,\n SequenceMapper, Serializer, UrlParameterValue, serializeObject\n} from \"./serializer\";\nimport {\n stripRequest, stripResponse, delay,\n executePromisesSequentially, generateUuid, encodeUri, ServiceCallback,\n promiseToCallback, promiseToServiceCallback, isValidUuid, dispatchRequest,\n applyMixins, isNode\n} from \"./util/utils\";\n\n// Credentials\nimport { TokenCredentials } from \"./credentials/tokenCredentials\";\nimport { BasicAuthenticationCredentials } from \"./credentials/basicAuthenticationCredentials\";\nimport { ApiKeyCredentials, ApiKeyCredentialOptions } from \"./credentials/apiKeyCredentials\";\nimport { ServiceClientCredentials } from \"./credentials/serviceClientCredentials\";\nimport * as isStream from \"is-stream\";\n\nexport {\n BaseMapperType, CompositeMapper, DictionaryMapper, EnumMapper, Mapper, MapperConstraints, MapperType,\n PolymorphicDiscriminator, SequenceMapper, UrlParameterValue, Serializer, serializeObject, TokenCredentials,\n WebResource, RequestPrepareOptions, HttpMethods, ParameterValue, HttpOperationResponse, ServiceClient, Constants, RequestPipeline,\n BasicAuthenticationCredentials, ApiKeyCredentials, ApiKeyCredentialOptions, ServiceClientCredentials, BaseFilter, LogFilter, ServiceClientOptions, ExponentialRetryPolicyFilter,\n SystemErrorRetryPolicyFilter, SigningFilter, MsRestUserAgentFilter, stripRequest, stripResponse, delay, executePromisesSequentially,\n generateUuid, isValidUuid, encodeUri, RestError, RequestOptionsBase, RequestFunction, ServiceCallback, promiseToCallback,\n promiseToServiceCallback, isStream, dispatchRequest, RedirectFilter, applyMixins, isNode\n};\n\n\n\n// WEBPACK FOOTER //\n// ./lib/msRest.ts","var v1 = require('./v1');\nvar v4 = require('./v4');\n\nvar uuid = v4;\nuuid.v1 = v1;\nuuid.v4 = v4;\n\nmodule.exports = uuid;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/uuid/index.js\n// module id = 18\n// module chunks = 0","var rng = require('./lib/rng');\nvar bytesToUuid = require('./lib/bytesToUuid');\n\n// **`v1()` - Generate time-based UUID**\n//\n// Inspired by https://github.com/LiosK/UUID.js\n// and http://docs.python.org/library/uuid.html\n\nvar _nodeId;\nvar _clockseq;\n\n// Previous uuid creation time\nvar _lastMSecs = 0;\nvar _lastNSecs = 0;\n\n// See https://github.com/broofa/node-uuid for API details\nfunction v1(options, buf, offset) {\n var i = buf && offset || 0;\n var b = buf || [];\n\n options = options || {};\n var node = options.node || _nodeId;\n var clockseq = options.clockseq !== undefined ? options.clockseq : _clockseq;\n\n // node and clockseq need to be initialized to random values if they're not\n // specified. We do this lazily to minimize issues related to insufficient\n // system entropy. See #189\n if (node == null || clockseq == null) {\n var seedBytes = rng();\n if (node == null) {\n // Per 4.5, create and 48-bit node id, (47 random bits + multicast bit = 1)\n node = _nodeId = [\n seedBytes[0] | 0x01,\n seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]\n ];\n }\n if (clockseq == null) {\n // Per 4.2.2, randomize (14 bit) clockseq\n clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 0x3fff;\n }\n }\n\n // UUID timestamps are 100 nano-second units since the Gregorian epoch,\n // (1582-10-15 00:00). JSNumbers aren't precise enough for this, so\n // time is handled internally as 'msecs' (integer milliseconds) and 'nsecs'\n // (100-nanoseconds offset from msecs) since unix epoch, 1970-01-01 00:00.\n var msecs = options.msecs !== undefined ? options.msecs : new Date().getTime();\n\n // Per 4.2.1.2, use count of uuid's generated during the current clock\n // cycle to simulate higher resolution clock\n var nsecs = options.nsecs !== undefined ? options.nsecs : _lastNSecs + 1;\n\n // Time since last uuid creation (in msecs)\n var dt = (msecs - _lastMSecs) + (nsecs - _lastNSecs)/10000;\n\n // Per 4.2.1.2, Bump clockseq on clock regression\n if (dt < 0 && options.clockseq === undefined) {\n clockseq = clockseq + 1 & 0x3fff;\n }\n\n // Reset nsecs if clock regresses (new clockseq) or we've moved onto a new\n // time interval\n if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === undefined) {\n nsecs = 0;\n }\n\n // Per 4.2.1.2 Throw error if too many uuids are requested\n if (nsecs >= 10000) {\n throw new Error('uuid.v1(): Can\\'t create more than 10M uuids/sec');\n }\n\n _lastMSecs = msecs;\n _lastNSecs = nsecs;\n _clockseq = clockseq;\n\n // Per 4.1.4 - Convert from unix epoch to Gregorian epoch\n msecs += 12219292800000;\n\n // `time_low`\n var tl = ((msecs & 0xfffffff) * 10000 + nsecs) % 0x100000000;\n b[i++] = tl >>> 24 & 0xff;\n b[i++] = tl >>> 16 & 0xff;\n b[i++] = tl >>> 8 & 0xff;\n b[i++] = tl & 0xff;\n\n // `time_mid`\n var tmh = (msecs / 0x100000000 * 10000) & 0xfffffff;\n b[i++] = tmh >>> 8 & 0xff;\n b[i++] = tmh & 0xff;\n\n // `time_high_and_version`\n b[i++] = tmh >>> 24 & 0xf | 0x10; // include version\n b[i++] = tmh >>> 16 & 0xff;\n\n // `clock_seq_hi_and_reserved` (Per 4.2.2 - include variant)\n b[i++] = clockseq >>> 8 | 0x80;\n\n // `clock_seq_low`\n b[i++] = clockseq & 0xff;\n\n // `node`\n for (var n = 0; n < 6; ++n) {\n b[i + n] = node[n];\n }\n\n return buf ? buf : bytesToUuid(b);\n}\n\nmodule.exports = v1;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/uuid/v1.js\n// module id = 19\n// module chunks = 0","var rng = require('./lib/rng');\nvar bytesToUuid = require('./lib/bytesToUuid');\n\nfunction v4(options, buf, offset) {\n var i = buf && offset || 0;\n\n if (typeof(options) == 'string') {\n buf = options === 'binary' ? new Array(16) : null;\n options = null;\n }\n options = options || {};\n\n var rnds = options.random || (options.rng || rng)();\n\n // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n rnds[6] = (rnds[6] & 0x0f) | 0x40;\n rnds[8] = (rnds[8] & 0x3f) | 0x80;\n\n // Copy bytes to buffer, if provided\n if (buf) {\n for (var ii = 0; ii < 16; ++ii) {\n buf[i + ii] = rnds[ii];\n }\n }\n\n return buf || bytesToUuid(rnds);\n}\n\nmodule.exports = v4;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/uuid/v4.js\n// module id = 20\n// module chunks = 0","/* eslint-env browser */\nmodule.exports = typeof self == 'object' ? self.FormData : window.FormData;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/form-data/lib/browser.js\n// module id = 21\n// module chunks = 0","(function (self) {\n 'use strict';\n\n function fetchPonyfill(options) {\n var Promise = options && options.Promise || self.Promise;\n var XMLHttpRequest = options && options.XMLHttpRequest || self.XMLHttpRequest;\n var global = self;\n\n return (function () {\n var self = Object.create(global, {\n fetch: {\n value: undefined,\n writable: true\n }\n });\n\n (function(self) {\n 'use strict';\n\n if (self.fetch) {\n return\n }\n\n var support = {\n searchParams: 'URLSearchParams' in self,\n iterable: 'Symbol' in self && 'iterator' in Symbol,\n blob: 'FileReader' in self && 'Blob' in self && (function() {\n try {\n new Blob()\n return true\n } catch(e) {\n return false\n }\n })(),\n formData: 'FormData' in self,\n arrayBuffer: 'ArrayBuffer' in self\n }\n\n if (support.arrayBuffer) {\n var viewClasses = [\n '[object Int8Array]',\n '[object Uint8Array]',\n '[object Uint8ClampedArray]',\n '[object Int16Array]',\n '[object Uint16Array]',\n '[object Int32Array]',\n '[object Uint32Array]',\n '[object Float32Array]',\n '[object Float64Array]'\n ]\n\n var isDataView = function(obj) {\n return obj && DataView.prototype.isPrototypeOf(obj)\n }\n\n var isArrayBufferView = ArrayBuffer.isView || function(obj) {\n return obj && viewClasses.indexOf(Object.prototype.toString.call(obj)) > -1\n }\n }\n\n function normalizeName(name) {\n if (typeof name !== 'string') {\n name = String(name)\n }\n if (/[^a-z0-9\\-#$%&'*+.\\^_`|~]/i.test(name)) {\n throw new TypeError('Invalid character in header field name')\n }\n return name.toLowerCase()\n }\n\n function normalizeValue(value) {\n if (typeof value !== 'string') {\n value = String(value)\n }\n return value\n }\n\n // Build a destructive iterator for the value list\n function iteratorFor(items) {\n var iterator = {\n next: function() {\n var value = items.shift()\n return {done: value === undefined, value: value}\n }\n }\n\n if (support.iterable) {\n iterator[Symbol.iterator] = function() {\n return iterator\n }\n }\n\n return iterator\n }\n\n function Headers(headers) {\n this.map = {}\n\n if (headers instanceof Headers) {\n headers.forEach(function(value, name) {\n this.append(name, value)\n }, this)\n } else if (Array.isArray(headers)) {\n headers.forEach(function(header) {\n this.append(header[0], header[1])\n }, this)\n } else if (headers) {\n Object.getOwnPropertyNames(headers).forEach(function(name) {\n this.append(name, headers[name])\n }, this)\n }\n }\n\n Headers.prototype.append = function(name, value) {\n name = normalizeName(name)\n value = normalizeValue(value)\n var oldValue = this.map[name]\n this.map[name] = oldValue ? oldValue+','+value : value\n }\n\n Headers.prototype['delete'] = function(name) {\n delete this.map[normalizeName(name)]\n }\n\n Headers.prototype.get = function(name) {\n name = normalizeName(name)\n return this.has(name) ? this.map[name] : null\n }\n\n Headers.prototype.has = function(name) {\n return this.map.hasOwnProperty(normalizeName(name))\n }\n\n Headers.prototype.set = function(name, value) {\n this.map[normalizeName(name)] = normalizeValue(value)\n }\n\n Headers.prototype.forEach = function(callback, thisArg) {\n for (var name in this.map) {\n if (this.map.hasOwnProperty(name)) {\n callback.call(thisArg, this.map[name], name, this)\n }\n }\n }\n\n Headers.prototype.keys = function() {\n var items = []\n this.forEach(function(value, name) { items.push(name) })\n return iteratorFor(items)\n }\n\n Headers.prototype.values = function() {\n var items = []\n this.forEach(function(value) { items.push(value) })\n return iteratorFor(items)\n }\n\n Headers.prototype.entries = function() {\n var items = []\n this.forEach(function(value, name) { items.push([name, value]) })\n return iteratorFor(items)\n }\n\n if (support.iterable) {\n Headers.prototype[Symbol.iterator] = Headers.prototype.entries\n }\n\n function consumed(body) {\n if (body.bodyUsed) {\n return Promise.reject(new TypeError('Already read'))\n }\n body.bodyUsed = true\n }\n\n function fileReaderReady(reader) {\n return new Promise(function(resolve, reject) {\n reader.onload = function() {\n resolve(reader.result)\n }\n reader.onerror = function() {\n reject(reader.error)\n }\n })\n }\n\n function readBlobAsArrayBuffer(blob) {\n var reader = new FileReader()\n var promise = fileReaderReady(reader)\n reader.readAsArrayBuffer(blob)\n return promise\n }\n\n function readBlobAsText(blob) {\n var reader = new FileReader()\n var promise = fileReaderReady(reader)\n reader.readAsText(blob)\n return promise\n }\n\n function readArrayBufferAsText(buf) {\n var view = new Uint8Array(buf)\n var chars = new Array(view.length)\n\n for (var i = 0; i < view.length; i++) {\n chars[i] = String.fromCharCode(view[i])\n }\n return chars.join('')\n }\n\n function bufferClone(buf) {\n if (buf.slice) {\n return buf.slice(0)\n } else {\n var view = new Uint8Array(buf.byteLength)\n view.set(new Uint8Array(buf))\n return view.buffer\n }\n }\n\n function Body() {\n this.bodyUsed = false\n\n this._initBody = function(body) {\n this._bodyInit = body\n if (!body) {\n this._bodyText = ''\n } else if (typeof body === 'string') {\n this._bodyText = body\n } else if (support.blob && Blob.prototype.isPrototypeOf(body)) {\n this._bodyBlob = body\n } else if (support.formData && FormData.prototype.isPrototypeOf(body)) {\n this._bodyFormData = body\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this._bodyText = body.toString()\n } else if (support.arrayBuffer && support.blob && isDataView(body)) {\n this._bodyArrayBuffer = bufferClone(body.buffer)\n // IE 10-11 can't handle a DataView body.\n this._bodyInit = new Blob([this._bodyArrayBuffer])\n } else if (support.arrayBuffer && (ArrayBuffer.prototype.isPrototypeOf(body) || isArrayBufferView(body))) {\n this._bodyArrayBuffer = bufferClone(body)\n } else {\n throw new Error('unsupported BodyInit type')\n }\n\n if (!this.headers.get('content-type')) {\n if (typeof body === 'string') {\n this.headers.set('content-type', 'text/plain;charset=UTF-8')\n } else if (this._bodyBlob && this._bodyBlob.type) {\n this.headers.set('content-type', this._bodyBlob.type)\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this.headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8')\n }\n }\n }\n\n if (support.blob) {\n this.blob = function() {\n var rejected = consumed(this)\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return Promise.resolve(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(new Blob([this._bodyArrayBuffer]))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as blob')\n } else {\n return Promise.resolve(new Blob([this._bodyText]))\n }\n }\n\n this.arrayBuffer = function() {\n if (this._bodyArrayBuffer) {\n return consumed(this) || Promise.resolve(this._bodyArrayBuffer)\n } else {\n return this.blob().then(readBlobAsArrayBuffer)\n }\n }\n }\n\n this.text = function() {\n var rejected = consumed(this)\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return readBlobAsText(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(readArrayBufferAsText(this._bodyArrayBuffer))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as text')\n } else {\n return Promise.resolve(this._bodyText)\n }\n }\n\n if (support.formData) {\n this.formData = function() {\n return this.text().then(decode)\n }\n }\n\n this.json = function() {\n return this.text().then(JSON.parse)\n }\n\n return this\n }\n\n // HTTP methods whose capitalization should be normalized\n var methods = ['DELETE', 'GET', 'HEAD', 'OPTIONS', 'POST', 'PUT']\n\n function normalizeMethod(method) {\n var upcased = method.toUpperCase()\n return (methods.indexOf(upcased) > -1) ? upcased : method\n }\n\n function Request(input, options) {\n options = options || {}\n var body = options.body\n\n if (input instanceof Request) {\n if (input.bodyUsed) {\n throw new TypeError('Already read')\n }\n this.url = input.url\n this.credentials = input.credentials\n if (!options.headers) {\n this.headers = new Headers(input.headers)\n }\n this.method = input.method\n this.mode = input.mode\n if (!body && input._bodyInit != null) {\n body = input._bodyInit\n input.bodyUsed = true\n }\n } else {\n this.url = String(input)\n }\n\n this.credentials = options.credentials || this.credentials || 'omit'\n if (options.headers || !this.headers) {\n this.headers = new Headers(options.headers)\n }\n this.method = normalizeMethod(options.method || this.method || 'GET')\n this.mode = options.mode || this.mode || null\n this.referrer = null\n\n if ((this.method === 'GET' || this.method === 'HEAD') && body) {\n throw new TypeError('Body not allowed for GET or HEAD requests')\n }\n this._initBody(body)\n }\n\n Request.prototype.clone = function() {\n return new Request(this, { body: this._bodyInit })\n }\n\n function decode(body) {\n var form = new FormData()\n body.trim().split('&').forEach(function(bytes) {\n if (bytes) {\n var split = bytes.split('=')\n var name = split.shift().replace(/\\+/g, ' ')\n var value = split.join('=').replace(/\\+/g, ' ')\n form.append(decodeURIComponent(name), decodeURIComponent(value))\n }\n })\n return form\n }\n\n function parseHeaders(rawHeaders) {\n var headers = new Headers()\n rawHeaders.split(/\\r?\\n/).forEach(function(line) {\n var parts = line.split(':')\n var key = parts.shift().trim()\n if (key) {\n var value = parts.join(':').trim()\n headers.append(key, value)\n }\n })\n return headers\n }\n\n Body.call(Request.prototype)\n\n function Response(bodyInit, options) {\n if (!options) {\n options = {}\n }\n\n this.type = 'default'\n this.status = 'status' in options ? options.status : 200\n this.ok = this.status >= 200 && this.status < 300\n this.statusText = 'statusText' in options ? options.statusText : 'OK'\n this.headers = new Headers(options.headers)\n this.url = options.url || ''\n this._initBody(bodyInit)\n }\n\n Body.call(Response.prototype)\n\n Response.prototype.clone = function() {\n return new Response(this._bodyInit, {\n status: this.status,\n statusText: this.statusText,\n headers: new Headers(this.headers),\n url: this.url\n })\n }\n\n Response.error = function() {\n var response = new Response(null, {status: 0, statusText: ''})\n response.type = 'error'\n return response\n }\n\n var redirectStatuses = [301, 302, 303, 307, 308]\n\n Response.redirect = function(url, status) {\n if (redirectStatuses.indexOf(status) === -1) {\n throw new RangeError('Invalid status code')\n }\n\n return new Response(null, {status: status, headers: {location: url}})\n }\n\n self.Headers = Headers\n self.Request = Request\n self.Response = Response\n\n self.fetch = function(input, init) {\n return new Promise(function(resolve, reject) {\n var request = new Request(input, init)\n var xhr = new XMLHttpRequest()\n\n xhr.onload = function() {\n var options = {\n status: xhr.status,\n statusText: xhr.statusText,\n headers: parseHeaders(xhr.getAllResponseHeaders() || '')\n }\n options.url = 'responseURL' in xhr ? xhr.responseURL : options.headers.get('X-Request-URL')\n var body = 'response' in xhr ? xhr.response : xhr.responseText\n resolve(new Response(body, options))\n }\n\n xhr.onerror = function() {\n reject(new TypeError('Network request failed'))\n }\n\n xhr.ontimeout = function() {\n reject(new TypeError('Network request failed'))\n }\n\n xhr.open(request.method, request.url, true)\n\n if (request.credentials === 'include') {\n xhr.withCredentials = true\n }\n\n if ('responseType' in xhr && support.blob) {\n xhr.responseType = 'blob'\n }\n\n request.headers.forEach(function(value, name) {\n xhr.setRequestHeader(name, value)\n })\n\n xhr.send(typeof request._bodyInit === 'undefined' ? null : request._bodyInit)\n })\n }\n self.fetch.polyfill = true\n })(typeof self !== 'undefined' ? self : this);\n\n\n return {\n fetch: self.fetch,\n Headers: self.Headers,\n Request: self.Request,\n Response: self.Response\n };\n }());\n }\n\n if (typeof define === 'function' && define.amd) {\n define(function () {\n return fetchPonyfill;\n });\n } else if (typeof exports === 'object') {\n module.exports = fetchPonyfill;\n } else {\n self.fetchPonyfill = fetchPonyfill;\n }\n}(typeof self === 'undefined' ? this : self));\n\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/fetch-ponyfill/build/fetch-browser.js\n// module id = 22\n// module chunks = 0","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):e.moment=t()}(this,function(){\"use strict\";var e,t;function n(){return e.apply(null,arguments)}function s(e){return e instanceof Array||\"[object Array]\"===Object.prototype.toString.call(e)}function i(e){return null!=e&&\"[object Object]\"===Object.prototype.toString.call(e)}function r(e){return void 0===e}function a(e){return\"number\"==typeof e||\"[object Number]\"===Object.prototype.toString.call(e)}function o(e){return e instanceof Date||\"[object Date]\"===Object.prototype.toString.call(e)}function u(e,t){var n,s=[];for(n=0;n<e.length;++n)s.push(t(e[n],n));return s}function l(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function d(e,t){for(var n in t)l(t,n)&&(e[n]=t[n]);return l(t,\"toString\")&&(e.toString=t.toString),l(t,\"valueOf\")&&(e.valueOf=t.valueOf),e}function h(e,t,n,s){return Ot(e,t,n,s,!0).utc()}function c(e){return null==e._pf&&(e._pf={empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1,parsedDateParts:[],meridiem:null,rfc2822:!1,weekdayMismatch:!1}),e._pf}function f(e){if(null==e._isValid){var n=c(e),s=t.call(n.parsedDateParts,function(e){return null!=e}),i=!isNaN(e._d.getTime())&&n.overflow<0&&!n.empty&&!n.invalidMonth&&!n.invalidWeekday&&!n.weekdayMismatch&&!n.nullInput&&!n.invalidFormat&&!n.userInvalidated&&(!n.meridiem||n.meridiem&&s);if(e._strict&&(i=i&&0===n.charsLeftOver&&0===n.unusedTokens.length&&void 0===n.bigHour),null!=Object.isFrozen&&Object.isFrozen(e))return i;e._isValid=i}return e._isValid}function m(e){var t=h(NaN);return null!=e?d(c(t),e):c(t).userInvalidated=!0,t}t=Array.prototype.some?Array.prototype.some:function(e){for(var t=Object(this),n=t.length>>>0,s=0;s<n;s++)if(s in t&&e.call(this,t[s],s,t))return!0;return!1};var _=n.momentProperties=[];function y(e,t){var n,s,i;if(r(t._isAMomentObject)||(e._isAMomentObject=t._isAMomentObject),r(t._i)||(e._i=t._i),r(t._f)||(e._f=t._f),r(t._l)||(e._l=t._l),r(t._strict)||(e._strict=t._strict),r(t._tzm)||(e._tzm=t._tzm),r(t._isUTC)||(e._isUTC=t._isUTC),r(t._offset)||(e._offset=t._offset),r(t._pf)||(e._pf=c(t)),r(t._locale)||(e._locale=t._locale),_.length>0)for(n=0;n<_.length;n++)r(i=t[s=_[n]])||(e[s]=i);return e}var g=!1;function p(e){y(this,e),this._d=new Date(null!=e._d?e._d.getTime():NaN),this.isValid()||(this._d=new Date(NaN)),!1===g&&(g=!0,n.updateOffset(this),g=!1)}function v(e){return e instanceof p||null!=e&&null!=e._isAMomentObject}function w(e){return e<0?Math.ceil(e)||0:Math.floor(e)}function M(e){var t=+e,n=0;return 0!==t&&isFinite(t)&&(n=w(t)),n}function S(e,t,n){var s,i=Math.min(e.length,t.length),r=Math.abs(e.length-t.length),a=0;for(s=0;s<i;s++)(n&&e[s]!==t[s]||!n&&M(e[s])!==M(t[s]))&&a++;return a+r}function D(e){!1===n.suppressDeprecationWarnings&&\"undefined\"!=typeof console&&console.warn&&console.warn(\"Deprecation warning: \"+e)}function k(e,t){var s=!0;return d(function(){if(null!=n.deprecationHandler&&n.deprecationHandler(null,e),s){for(var i,r=[],a=0;a<arguments.length;a++){if(i=\"\",\"object\"==typeof arguments[a]){for(var o in i+=\"\\n[\"+a+\"] \",arguments[0])i+=o+\": \"+arguments[0][o]+\", \";i=i.slice(0,-2)}else i=arguments[a];r.push(i)}D(e+\"\\nArguments: \"+Array.prototype.slice.call(r).join(\"\")+\"\\n\"+(new Error).stack),s=!1}return t.apply(this,arguments)},t)}var Y,O={};function T(e,t){null!=n.deprecationHandler&&n.deprecationHandler(e,t),O[e]||(D(t),O[e]=!0)}function x(e){return e instanceof Function||\"[object Function]\"===Object.prototype.toString.call(e)}function b(e,t){var n,s=d({},e);for(n in t)l(t,n)&&(i(e[n])&&i(t[n])?(s[n]={},d(s[n],e[n]),d(s[n],t[n])):null!=t[n]?s[n]=t[n]:delete s[n]);for(n in e)l(e,n)&&!l(t,n)&&i(e[n])&&(s[n]=d({},s[n]));return s}function P(e){null!=e&&this.set(e)}n.suppressDeprecationWarnings=!1,n.deprecationHandler=null,Y=Object.keys?Object.keys:function(e){var t,n=[];for(t in e)l(e,t)&&n.push(t);return n};var W={};function H(e,t){var n=e.toLowerCase();W[n]=W[n+\"s\"]=W[t]=e}function R(e){return\"string\"==typeof e?W[e]||W[e.toLowerCase()]:void 0}function C(e){var t,n,s={};for(n in e)l(e,n)&&(t=R(n))&&(s[t]=e[n]);return s}var F={};function L(e,t){F[e]=t}function U(e,t,n){var s=\"\"+Math.abs(e),i=t-s.length;return(e>=0?n?\"+\":\"\":\"-\")+Math.pow(10,Math.max(0,i)).toString().substr(1)+s}var N=/(\\[[^\\[]*\\])|(\\\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,G=/(\\[[^\\[]*\\])|(\\\\)?(LTS|LT|LL?L?L?|l{1,4})/g,V={},E={};function I(e,t,n,s){var i=s;\"string\"==typeof s&&(i=function(){return this[s]()}),e&&(E[e]=i),t&&(E[t[0]]=function(){return U(i.apply(this,arguments),t[1],t[2])}),n&&(E[n]=function(){return this.localeData().ordinal(i.apply(this,arguments),e)})}function A(e,t){return e.isValid()?(t=j(t,e.localeData()),V[t]=V[t]||function(e){var t,n,s,i=e.match(N);for(t=0,n=i.length;t<n;t++)E[i[t]]?i[t]=E[i[t]]:i[t]=(s=i[t]).match(/\\[[\\s\\S]/)?s.replace(/^\\[|\\]$/g,\"\"):s.replace(/\\\\/g,\"\");return function(t){var s,r=\"\";for(s=0;s<n;s++)r+=x(i[s])?i[s].call(t,e):i[s];return r}}(t),V[t](e)):e.localeData().invalidDate()}function j(e,t){var n=5;function s(e){return t.longDateFormat(e)||e}for(G.lastIndex=0;n>=0&&G.test(e);)e=e.replace(G,s),G.lastIndex=0,n-=1;return e}var Z=/\\d/,z=/\\d\\d/,$=/\\d{3}/,q=/\\d{4}/,J=/[+-]?\\d{6}/,B=/\\d\\d?/,Q=/\\d\\d\\d\\d?/,X=/\\d\\d\\d\\d\\d\\d?/,K=/\\d{1,3}/,ee=/\\d{1,4}/,te=/[+-]?\\d{1,6}/,ne=/\\d+/,se=/[+-]?\\d+/,ie=/Z|[+-]\\d\\d:?\\d\\d/gi,re=/Z|[+-]\\d\\d(?::?\\d\\d)?/gi,ae=/[0-9]{0,256}['a-z\\u00A0-\\u05FF\\u0700-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFF07\\uFF10-\\uFFEF]{1,256}|[\\u0600-\\u06FF\\/]{1,256}(\\s*?[\\u0600-\\u06FF]{1,256}){1,2}/i,oe={};function ue(e,t,n){oe[e]=x(t)?t:function(e,s){return e&&n?n:t}}function le(e,t){return l(oe,e)?oe[e](t._strict,t._locale):new RegExp(de(e.replace(\"\\\\\",\"\").replace(/\\\\(\\[)|\\\\(\\])|\\[([^\\]\\[]*)\\]|\\\\(.)/g,function(e,t,n,s,i){return t||n||s||i})))}function de(e){return e.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g,\"\\\\$&\")}var he={};function ce(e,t){var n,s=t;for(\"string\"==typeof e&&(e=[e]),a(t)&&(s=function(e,n){n[t]=M(e)}),n=0;n<e.length;n++)he[e[n]]=s}function fe(e,t){ce(e,function(e,n,s,i){s._w=s._w||{},t(e,s._w,s,i)})}var me=0,_e=1,ye=2,ge=3,pe=4,ve=5,we=6,Me=7,Se=8;function De(e){return ke(e)?366:365}function ke(e){return e%4==0&&e%100!=0||e%400==0}I(\"Y\",0,0,function(){var e=this.year();return e<=9999?\"\"+e:\"+\"+e}),I(0,[\"YY\",2],0,function(){return this.year()%100}),I(0,[\"YYYY\",4],0,\"year\"),I(0,[\"YYYYY\",5],0,\"year\"),I(0,[\"YYYYYY\",6,!0],0,\"year\"),H(\"year\",\"y\"),L(\"year\",1),ue(\"Y\",se),ue(\"YY\",B,z),ue(\"YYYY\",ee,q),ue(\"YYYYY\",te,J),ue(\"YYYYYY\",te,J),ce([\"YYYYY\",\"YYYYYY\"],me),ce(\"YYYY\",function(e,t){t[me]=2===e.length?n.parseTwoDigitYear(e):M(e)}),ce(\"YY\",function(e,t){t[me]=n.parseTwoDigitYear(e)}),ce(\"Y\",function(e,t){t[me]=parseInt(e,10)}),n.parseTwoDigitYear=function(e){return M(e)+(M(e)>68?1900:2e3)};var Ye,Oe=Te(\"FullYear\",!0);function Te(e,t){return function(s){return null!=s?(be(this,e,s),n.updateOffset(this,t),this):xe(this,e)}}function xe(e,t){return e.isValid()?e._d[\"get\"+(e._isUTC?\"UTC\":\"\")+t]():NaN}function be(e,t,n){e.isValid()&&!isNaN(n)&&(\"FullYear\"===t&&ke(e.year())&&1===e.month()&&29===e.date()?e._d[\"set\"+(e._isUTC?\"UTC\":\"\")+t](n,e.month(),Pe(n,e.month())):e._d[\"set\"+(e._isUTC?\"UTC\":\"\")+t](n))}function Pe(e,t){if(isNaN(e)||isNaN(t))return NaN;var n,s=(t%(n=12)+n)%n;return e+=(t-s)/12,1===s?ke(e)?29:28:31-s%7%2}Ye=Array.prototype.indexOf?Array.prototype.indexOf:function(e){var t;for(t=0;t<this.length;++t)if(this[t]===e)return t;return-1},I(\"M\",[\"MM\",2],\"Mo\",function(){return this.month()+1}),I(\"MMM\",0,0,function(e){return this.localeData().monthsShort(this,e)}),I(\"MMMM\",0,0,function(e){return this.localeData().months(this,e)}),H(\"month\",\"M\"),L(\"month\",8),ue(\"M\",B),ue(\"MM\",B,z),ue(\"MMM\",function(e,t){return t.monthsShortRegex(e)}),ue(\"MMMM\",function(e,t){return t.monthsRegex(e)}),ce([\"M\",\"MM\"],function(e,t){t[_e]=M(e)-1}),ce([\"MMM\",\"MMMM\"],function(e,t,n,s){var i=n._locale.monthsParse(e,s,n._strict);null!=i?t[_e]=i:c(n).invalidMonth=e});var We=/D[oD]?(\\[[^\\[\\]]*\\]|\\s)+MMMM?/,He=\"January_February_March_April_May_June_July_August_September_October_November_December\".split(\"_\");var Re=\"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec\".split(\"_\");function Ce(e,t){var n;if(!e.isValid())return e;if(\"string\"==typeof t)if(/^\\d+$/.test(t))t=M(t);else if(!a(t=e.localeData().monthsParse(t)))return e;return n=Math.min(e.date(),Pe(e.year(),t)),e._d[\"set\"+(e._isUTC?\"UTC\":\"\")+\"Month\"](t,n),e}function Fe(e){return null!=e?(Ce(this,e),n.updateOffset(this,!0),this):xe(this,\"Month\")}var Le=ae;var Ue=ae;function Ne(){function e(e,t){return t.length-e.length}var t,n,s=[],i=[],r=[];for(t=0;t<12;t++)n=h([2e3,t]),s.push(this.monthsShort(n,\"\")),i.push(this.months(n,\"\")),r.push(this.months(n,\"\")),r.push(this.monthsShort(n,\"\"));for(s.sort(e),i.sort(e),r.sort(e),t=0;t<12;t++)s[t]=de(s[t]),i[t]=de(i[t]);for(t=0;t<24;t++)r[t]=de(r[t]);this._monthsRegex=new RegExp(\"^(\"+r.join(\"|\")+\")\",\"i\"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp(\"^(\"+i.join(\"|\")+\")\",\"i\"),this._monthsShortStrictRegex=new RegExp(\"^(\"+s.join(\"|\")+\")\",\"i\")}function Ge(e){var t=new Date(Date.UTC.apply(null,arguments));return e<100&&e>=0&&isFinite(t.getUTCFullYear())&&t.setUTCFullYear(e),t}function Ve(e,t,n){var s=7+t-n;return-((7+Ge(e,0,s).getUTCDay()-t)%7)+s-1}function Ee(e,t,n,s,i){var r,a,o=1+7*(t-1)+(7+n-s)%7+Ve(e,s,i);return o<=0?a=De(r=e-1)+o:o>De(e)?(r=e+1,a=o-De(e)):(r=e,a=o),{year:r,dayOfYear:a}}function Ie(e,t,n){var s,i,r=Ve(e.year(),t,n),a=Math.floor((e.dayOfYear()-r-1)/7)+1;return a<1?s=a+Ae(i=e.year()-1,t,n):a>Ae(e.year(),t,n)?(s=a-Ae(e.year(),t,n),i=e.year()+1):(i=e.year(),s=a),{week:s,year:i}}function Ae(e,t,n){var s=Ve(e,t,n),i=Ve(e+1,t,n);return(De(e)-s+i)/7}I(\"w\",[\"ww\",2],\"wo\",\"week\"),I(\"W\",[\"WW\",2],\"Wo\",\"isoWeek\"),H(\"week\",\"w\"),H(\"isoWeek\",\"W\"),L(\"week\",5),L(\"isoWeek\",5),ue(\"w\",B),ue(\"ww\",B,z),ue(\"W\",B),ue(\"WW\",B,z),fe([\"w\",\"ww\",\"W\",\"WW\"],function(e,t,n,s){t[s.substr(0,1)]=M(e)});I(\"d\",0,\"do\",\"day\"),I(\"dd\",0,0,function(e){return this.localeData().weekdaysMin(this,e)}),I(\"ddd\",0,0,function(e){return this.localeData().weekdaysShort(this,e)}),I(\"dddd\",0,0,function(e){return this.localeData().weekdays(this,e)}),I(\"e\",0,0,\"weekday\"),I(\"E\",0,0,\"isoWeekday\"),H(\"day\",\"d\"),H(\"weekday\",\"e\"),H(\"isoWeekday\",\"E\"),L(\"day\",11),L(\"weekday\",11),L(\"isoWeekday\",11),ue(\"d\",B),ue(\"e\",B),ue(\"E\",B),ue(\"dd\",function(e,t){return t.weekdaysMinRegex(e)}),ue(\"ddd\",function(e,t){return t.weekdaysShortRegex(e)}),ue(\"dddd\",function(e,t){return t.weekdaysRegex(e)}),fe([\"dd\",\"ddd\",\"dddd\"],function(e,t,n,s){var i=n._locale.weekdaysParse(e,s,n._strict);null!=i?t.d=i:c(n).invalidWeekday=e}),fe([\"d\",\"e\",\"E\"],function(e,t,n,s){t[s]=M(e)});var je=\"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday\".split(\"_\");var Ze=\"Sun_Mon_Tue_Wed_Thu_Fri_Sat\".split(\"_\");var ze=\"Su_Mo_Tu_We_Th_Fr_Sa\".split(\"_\");var $e=ae;var qe=ae;var Je=ae;function Be(){function e(e,t){return t.length-e.length}var t,n,s,i,r,a=[],o=[],u=[],l=[];for(t=0;t<7;t++)n=h([2e3,1]).day(t),s=this.weekdaysMin(n,\"\"),i=this.weekdaysShort(n,\"\"),r=this.weekdays(n,\"\"),a.push(s),o.push(i),u.push(r),l.push(s),l.push(i),l.push(r);for(a.sort(e),o.sort(e),u.sort(e),l.sort(e),t=0;t<7;t++)o[t]=de(o[t]),u[t]=de(u[t]),l[t]=de(l[t]);this._weekdaysRegex=new RegExp(\"^(\"+l.join(\"|\")+\")\",\"i\"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp(\"^(\"+u.join(\"|\")+\")\",\"i\"),this._weekdaysShortStrictRegex=new RegExp(\"^(\"+o.join(\"|\")+\")\",\"i\"),this._weekdaysMinStrictRegex=new RegExp(\"^(\"+a.join(\"|\")+\")\",\"i\")}function Qe(){return this.hours()%12||12}function Xe(e,t){I(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}function Ke(e,t){return t._meridiemParse}I(\"H\",[\"HH\",2],0,\"hour\"),I(\"h\",[\"hh\",2],0,Qe),I(\"k\",[\"kk\",2],0,function(){return this.hours()||24}),I(\"hmm\",0,0,function(){return\"\"+Qe.apply(this)+U(this.minutes(),2)}),I(\"hmmss\",0,0,function(){return\"\"+Qe.apply(this)+U(this.minutes(),2)+U(this.seconds(),2)}),I(\"Hmm\",0,0,function(){return\"\"+this.hours()+U(this.minutes(),2)}),I(\"Hmmss\",0,0,function(){return\"\"+this.hours()+U(this.minutes(),2)+U(this.seconds(),2)}),Xe(\"a\",!0),Xe(\"A\",!1),H(\"hour\",\"h\"),L(\"hour\",13),ue(\"a\",Ke),ue(\"A\",Ke),ue(\"H\",B),ue(\"h\",B),ue(\"k\",B),ue(\"HH\",B,z),ue(\"hh\",B,z),ue(\"kk\",B,z),ue(\"hmm\",Q),ue(\"hmmss\",X),ue(\"Hmm\",Q),ue(\"Hmmss\",X),ce([\"H\",\"HH\"],ge),ce([\"k\",\"kk\"],function(e,t,n){var s=M(e);t[ge]=24===s?0:s}),ce([\"a\",\"A\"],function(e,t,n){n._isPm=n._locale.isPM(e),n._meridiem=e}),ce([\"h\",\"hh\"],function(e,t,n){t[ge]=M(e),c(n).bigHour=!0}),ce(\"hmm\",function(e,t,n){var s=e.length-2;t[ge]=M(e.substr(0,s)),t[pe]=M(e.substr(s)),c(n).bigHour=!0}),ce(\"hmmss\",function(e,t,n){var s=e.length-4,i=e.length-2;t[ge]=M(e.substr(0,s)),t[pe]=M(e.substr(s,2)),t[ve]=M(e.substr(i)),c(n).bigHour=!0}),ce(\"Hmm\",function(e,t,n){var s=e.length-2;t[ge]=M(e.substr(0,s)),t[pe]=M(e.substr(s))}),ce(\"Hmmss\",function(e,t,n){var s=e.length-4,i=e.length-2;t[ge]=M(e.substr(0,s)),t[pe]=M(e.substr(s,2)),t[ve]=M(e.substr(i))});var et,tt=Te(\"Hours\",!0),nt={calendar:{sameDay:\"[Today at] LT\",nextDay:\"[Tomorrow at] LT\",nextWeek:\"dddd [at] LT\",lastDay:\"[Yesterday at] LT\",lastWeek:\"[Last] dddd [at] LT\",sameElse:\"L\"},longDateFormat:{LTS:\"h:mm:ss A\",LT:\"h:mm A\",L:\"MM/DD/YYYY\",LL:\"MMMM D, YYYY\",LLL:\"MMMM D, YYYY h:mm A\",LLLL:\"dddd, MMMM D, YYYY h:mm A\"},invalidDate:\"Invalid date\",ordinal:\"%d\",dayOfMonthOrdinalParse:/\\d{1,2}/,relativeTime:{future:\"in %s\",past:\"%s ago\",s:\"a few seconds\",ss:\"%d seconds\",m:\"a minute\",mm:\"%d minutes\",h:\"an hour\",hh:\"%d hours\",d:\"a day\",dd:\"%d days\",M:\"a month\",MM:\"%d months\",y:\"a year\",yy:\"%d years\"},months:He,monthsShort:Re,week:{dow:0,doy:6},weekdays:je,weekdaysMin:ze,weekdaysShort:Ze,meridiemParse:/[ap]\\.?m?\\.?/i},st={},it={};function rt(e){return e?e.toLowerCase().replace(\"_\",\"-\"):e}function at(e){var t=null;if(!st[e]&&\"undefined\"!=typeof module&&module&&module.exports)try{t=et._abbr,require(\"./locale/\"+e),ot(t)}catch(e){}return st[e]}function ot(e,t){var n;return e&&((n=r(t)?lt(e):ut(e,t))?et=n:\"undefined\"!=typeof console&&console.warn&&console.warn(\"Locale \"+e+\" not found. Did you forget to load it?\")),et._abbr}function ut(e,t){if(null!==t){var n,s=nt;if(t.abbr=e,null!=st[e])T(\"defineLocaleOverride\",\"use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info.\"),s=st[e]._config;else if(null!=t.parentLocale)if(null!=st[t.parentLocale])s=st[t.parentLocale]._config;else{if(null==(n=at(t.parentLocale)))return it[t.parentLocale]||(it[t.parentLocale]=[]),it[t.parentLocale].push({name:e,config:t}),null;s=n._config}return st[e]=new P(b(s,t)),it[e]&&it[e].forEach(function(e){ut(e.name,e.config)}),ot(e),st[e]}return delete st[e],null}function lt(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return et;if(!s(e)){if(t=at(e))return t;e=[e]}return function(e){for(var t,n,s,i,r=0;r<e.length;){for(t=(i=rt(e[r]).split(\"-\")).length,n=(n=rt(e[r+1]))?n.split(\"-\"):null;t>0;){if(s=at(i.slice(0,t).join(\"-\")))return s;if(n&&n.length>=t&&S(i,n,!0)>=t-1)break;t--}r++}return et}(e)}function dt(e){var t,n=e._a;return n&&-2===c(e).overflow&&(t=n[_e]<0||n[_e]>11?_e:n[ye]<1||n[ye]>Pe(n[me],n[_e])?ye:n[ge]<0||n[ge]>24||24===n[ge]&&(0!==n[pe]||0!==n[ve]||0!==n[we])?ge:n[pe]<0||n[pe]>59?pe:n[ve]<0||n[ve]>59?ve:n[we]<0||n[we]>999?we:-1,c(e)._overflowDayOfYear&&(t<me||t>ye)&&(t=ye),c(e)._overflowWeeks&&-1===t&&(t=Me),c(e)._overflowWeekday&&-1===t&&(t=Se),c(e).overflow=t),e}function ht(e,t,n){return null!=e?e:null!=t?t:n}function ct(e){var t,s,i,r,a,o=[];if(!e._d){var u,l;for(u=e,l=new Date(n.now()),i=u._useUTC?[l.getUTCFullYear(),l.getUTCMonth(),l.getUTCDate()]:[l.getFullYear(),l.getMonth(),l.getDate()],e._w&&null==e._a[ye]&&null==e._a[_e]&&function(e){var t,n,s,i,r,a,o,u;if(null!=(t=e._w).GG||null!=t.W||null!=t.E)r=1,a=4,n=ht(t.GG,e._a[me],Ie(Tt(),1,4).year),s=ht(t.W,1),((i=ht(t.E,1))<1||i>7)&&(u=!0);else{r=e._locale._week.dow,a=e._locale._week.doy;var l=Ie(Tt(),r,a);n=ht(t.gg,e._a[me],l.year),s=ht(t.w,l.week),null!=t.d?((i=t.d)<0||i>6)&&(u=!0):null!=t.e?(i=t.e+r,(t.e<0||t.e>6)&&(u=!0)):i=r}s<1||s>Ae(n,r,a)?c(e)._overflowWeeks=!0:null!=u?c(e)._overflowWeekday=!0:(o=Ee(n,s,i,r,a),e._a[me]=o.year,e._dayOfYear=o.dayOfYear)}(e),null!=e._dayOfYear&&(a=ht(e._a[me],i[me]),(e._dayOfYear>De(a)||0===e._dayOfYear)&&(c(e)._overflowDayOfYear=!0),s=Ge(a,0,e._dayOfYear),e._a[_e]=s.getUTCMonth(),e._a[ye]=s.getUTCDate()),t=0;t<3&&null==e._a[t];++t)e._a[t]=o[t]=i[t];for(;t<7;t++)e._a[t]=o[t]=null==e._a[t]?2===t?1:0:e._a[t];24===e._a[ge]&&0===e._a[pe]&&0===e._a[ve]&&0===e._a[we]&&(e._nextDay=!0,e._a[ge]=0),e._d=(e._useUTC?Ge:function(e,t,n,s,i,r,a){var o=new Date(e,t,n,s,i,r,a);return e<100&&e>=0&&isFinite(o.getFullYear())&&o.setFullYear(e),o}).apply(null,o),r=e._useUTC?e._d.getUTCDay():e._d.getDay(),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[ge]=24),e._w&&void 0!==e._w.d&&e._w.d!==r&&(c(e).weekdayMismatch=!0)}}var ft=/^\\s*((?:[+-]\\d{6}|\\d{4})-(?:\\d\\d-\\d\\d|W\\d\\d-\\d|W\\d\\d|\\d\\d\\d|\\d\\d))(?:(T| )(\\d\\d(?::\\d\\d(?::\\d\\d(?:[.,]\\d+)?)?)?)([\\+\\-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/,mt=/^\\s*((?:[+-]\\d{6}|\\d{4})(?:\\d\\d\\d\\d|W\\d\\d\\d|W\\d\\d|\\d\\d\\d|\\d\\d))(?:(T| )(\\d\\d(?:\\d\\d(?:\\d\\d(?:[.,]\\d+)?)?)?)([\\+\\-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/,_t=/Z|[+-]\\d\\d(?::?\\d\\d)?/,yt=[[\"YYYYYY-MM-DD\",/[+-]\\d{6}-\\d\\d-\\d\\d/],[\"YYYY-MM-DD\",/\\d{4}-\\d\\d-\\d\\d/],[\"GGGG-[W]WW-E\",/\\d{4}-W\\d\\d-\\d/],[\"GGGG-[W]WW\",/\\d{4}-W\\d\\d/,!1],[\"YYYY-DDD\",/\\d{4}-\\d{3}/],[\"YYYY-MM\",/\\d{4}-\\d\\d/,!1],[\"YYYYYYMMDD\",/[+-]\\d{10}/],[\"YYYYMMDD\",/\\d{8}/],[\"GGGG[W]WWE\",/\\d{4}W\\d{3}/],[\"GGGG[W]WW\",/\\d{4}W\\d{2}/,!1],[\"YYYYDDD\",/\\d{7}/]],gt=[[\"HH:mm:ss.SSSS\",/\\d\\d:\\d\\d:\\d\\d\\.\\d+/],[\"HH:mm:ss,SSSS\",/\\d\\d:\\d\\d:\\d\\d,\\d+/],[\"HH:mm:ss\",/\\d\\d:\\d\\d:\\d\\d/],[\"HH:mm\",/\\d\\d:\\d\\d/],[\"HHmmss.SSSS\",/\\d\\d\\d\\d\\d\\d\\.\\d+/],[\"HHmmss,SSSS\",/\\d\\d\\d\\d\\d\\d,\\d+/],[\"HHmmss\",/\\d\\d\\d\\d\\d\\d/],[\"HHmm\",/\\d\\d\\d\\d/],[\"HH\",/\\d\\d/]],pt=/^\\/?Date\\((\\-?\\d+)/i;function vt(e){var t,n,s,i,r,a,o=e._i,u=ft.exec(o)||mt.exec(o);if(u){for(c(e).iso=!0,t=0,n=yt.length;t<n;t++)if(yt[t][1].exec(u[1])){i=yt[t][0],s=!1!==yt[t][2];break}if(null==i)return void(e._isValid=!1);if(u[3]){for(t=0,n=gt.length;t<n;t++)if(gt[t][1].exec(u[3])){r=(u[2]||\" \")+gt[t][0];break}if(null==r)return void(e._isValid=!1)}if(!s&&null!=r)return void(e._isValid=!1);if(u[4]){if(!_t.exec(u[4]))return void(e._isValid=!1);a=\"Z\"}e._f=i+(r||\"\")+(a||\"\"),kt(e)}else e._isValid=!1}var wt=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\\s)?(\\d{1,2})\\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\\s(\\d{2,4})\\s(\\d\\d):(\\d\\d)(?::(\\d\\d))?\\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\\d{4}))$/;function Mt(e,t,n,s,i,r){var a=[function(e){var t=parseInt(e,10);{if(t<=49)return 2e3+t;if(t<=999)return 1900+t}return t}(e),Re.indexOf(t),parseInt(n,10),parseInt(s,10),parseInt(i,10)];return r&&a.push(parseInt(r,10)),a}var St={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function Dt(e){var t,n,s,i=wt.exec(e._i.replace(/\\([^)]*\\)|[\\n\\t]/g,\" \").replace(/(\\s\\s+)/g,\" \").trim());if(i){var r=Mt(i[4],i[3],i[2],i[5],i[6],i[7]);if(t=i[1],n=r,s=e,t&&Ze.indexOf(t)!==new Date(n[0],n[1],n[2]).getDay()&&(c(s).weekdayMismatch=!0,s._isValid=!1,1))return;e._a=r,e._tzm=function(e,t,n){if(e)return St[e];if(t)return 0;var s=parseInt(n,10),i=s%100;return(s-i)/100*60+i}(i[8],i[9],i[10]),e._d=Ge.apply(null,e._a),e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),c(e).rfc2822=!0}else e._isValid=!1}function kt(e){if(e._f!==n.ISO_8601)if(e._f!==n.RFC_2822){e._a=[],c(e).empty=!0;var t,s,i,r,a,o,u,d,h=\"\"+e._i,f=h.length,m=0;for(i=j(e._f,e._locale).match(N)||[],t=0;t<i.length;t++)r=i[t],(s=(h.match(le(r,e))||[])[0])&&((a=h.substr(0,h.indexOf(s))).length>0&&c(e).unusedInput.push(a),h=h.slice(h.indexOf(s)+s.length),m+=s.length),E[r]?(s?c(e).empty=!1:c(e).unusedTokens.push(r),o=r,d=e,null!=(u=s)&&l(he,o)&&he[o](u,d._a,d,o)):e._strict&&!s&&c(e).unusedTokens.push(r);c(e).charsLeftOver=f-m,h.length>0&&c(e).unusedInput.push(h),e._a[ge]<=12&&!0===c(e).bigHour&&e._a[ge]>0&&(c(e).bigHour=void 0),c(e).parsedDateParts=e._a.slice(0),c(e).meridiem=e._meridiem,e._a[ge]=function(e,t,n){var s;if(null==n)return t;return null!=e.meridiemHour?e.meridiemHour(t,n):null!=e.isPM?((s=e.isPM(n))&&t<12&&(t+=12),s||12!==t||(t=0),t):t}(e._locale,e._a[ge],e._meridiem),ct(e),dt(e)}else Dt(e);else vt(e)}function Yt(e){var t,l,h,_,g=e._i,w=e._f;return e._locale=e._locale||lt(e._l),null===g||void 0===w&&\"\"===g?m({nullInput:!0}):(\"string\"==typeof g&&(e._i=g=e._locale.preparse(g)),v(g)?new p(dt(g)):(o(g)?e._d=g:s(w)?function(e){var t,n,s,i,r;if(0===e._f.length)return c(e).invalidFormat=!0,void(e._d=new Date(NaN));for(i=0;i<e._f.length;i++)r=0,t=y({},e),null!=e._useUTC&&(t._useUTC=e._useUTC),t._f=e._f[i],kt(t),f(t)&&(r+=c(t).charsLeftOver,r+=10*c(t).unusedTokens.length,c(t).score=r,(null==s||r<s)&&(s=r,n=t));d(e,n||t)}(e):w?kt(e):r(l=(t=e)._i)?t._d=new Date(n.now()):o(l)?t._d=new Date(l.valueOf()):\"string\"==typeof l?(h=t,null===(_=pt.exec(h._i))?(vt(h),!1===h._isValid&&(delete h._isValid,Dt(h),!1===h._isValid&&(delete h._isValid,n.createFromInputFallback(h)))):h._d=new Date(+_[1])):s(l)?(t._a=u(l.slice(0),function(e){return parseInt(e,10)}),ct(t)):i(l)?function(e){if(!e._d){var t=C(e._i);e._a=u([t.year,t.month,t.day||t.date,t.hour,t.minute,t.second,t.millisecond],function(e){return e&&parseInt(e,10)}),ct(e)}}(t):a(l)?t._d=new Date(l):n.createFromInputFallback(t),f(e)||(e._d=null),e))}function Ot(e,t,n,r,a){var o,u={};return!0!==n&&!1!==n||(r=n,n=void 0),(i(e)&&function(e){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(e).length;var t;for(t in e)if(e.hasOwnProperty(t))return!1;return!0}(e)||s(e)&&0===e.length)&&(e=void 0),u._isAMomentObject=!0,u._useUTC=u._isUTC=a,u._l=n,u._i=e,u._f=t,u._strict=r,(o=new p(dt(Yt(u))))._nextDay&&(o.add(1,\"d\"),o._nextDay=void 0),o}function Tt(e,t,n,s){return Ot(e,t,n,s,!1)}n.createFromInputFallback=k(\"value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.\",function(e){e._d=new Date(e._i+(e._useUTC?\" UTC\":\"\"))}),n.ISO_8601=function(){},n.RFC_2822=function(){};var xt=k(\"moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/\",function(){var e=Tt.apply(null,arguments);return this.isValid()&&e.isValid()?e<this?this:e:m()}),bt=k(\"moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/\",function(){var e=Tt.apply(null,arguments);return this.isValid()&&e.isValid()?e>this?this:e:m()});function Pt(e,t){var n,i;if(1===t.length&&s(t[0])&&(t=t[0]),!t.length)return Tt();for(n=t[0],i=1;i<t.length;++i)t[i].isValid()&&!t[i][e](n)||(n=t[i]);return n}var Wt=[\"year\",\"quarter\",\"month\",\"week\",\"day\",\"hour\",\"minute\",\"second\",\"millisecond\"];function Ht(e){var t=C(e),n=t.year||0,s=t.quarter||0,i=t.month||0,r=t.week||0,a=t.day||0,o=t.hour||0,u=t.minute||0,l=t.second||0,d=t.millisecond||0;this._isValid=function(e){for(var t in e)if(-1===Ye.call(Wt,t)||null!=e[t]&&isNaN(e[t]))return!1;for(var n=!1,s=0;s<Wt.length;++s)if(e[Wt[s]]){if(n)return!1;parseFloat(e[Wt[s]])!==M(e[Wt[s]])&&(n=!0)}return!0}(t),this._milliseconds=+d+1e3*l+6e4*u+1e3*o*60*60,this._days=+a+7*r,this._months=+i+3*s+12*n,this._data={},this._locale=lt(),this._bubble()}function Rt(e){return e instanceof Ht}function Ct(e){return e<0?-1*Math.round(-1*e):Math.round(e)}function Ft(e,t){I(e,0,0,function(){var e=this.utcOffset(),n=\"+\";return e<0&&(e=-e,n=\"-\"),n+U(~~(e/60),2)+t+U(~~e%60,2)})}Ft(\"Z\",\":\"),Ft(\"ZZ\",\"\"),ue(\"Z\",re),ue(\"ZZ\",re),ce([\"Z\",\"ZZ\"],function(e,t,n){n._useUTC=!0,n._tzm=Ut(re,e)});var Lt=/([\\+\\-]|\\d\\d)/gi;function Ut(e,t){var n=(t||\"\").match(e);if(null===n)return null;var s=((n[n.length-1]||[])+\"\").match(Lt)||[\"-\",0,0],i=60*s[1]+M(s[2]);return 0===i?0:\"+\"===s[0]?i:-i}function Nt(e,t){var s,i;return t._isUTC?(s=t.clone(),i=(v(e)||o(e)?e.valueOf():Tt(e).valueOf())-s.valueOf(),s._d.setTime(s._d.valueOf()+i),n.updateOffset(s,!1),s):Tt(e).local()}function Gt(e){return 15*-Math.round(e._d.getTimezoneOffset()/15)}function Vt(){return!!this.isValid()&&(this._isUTC&&0===this._offset)}n.updateOffset=function(){};var Et=/^(\\-|\\+)?(?:(\\d*)[. ])?(\\d+)\\:(\\d+)(?:\\:(\\d+)(\\.\\d*)?)?$/,It=/^(-|\\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function At(e,t){var n,s,i,r=e,o=null;return Rt(e)?r={ms:e._milliseconds,d:e._days,M:e._months}:a(e)?(r={},t?r[t]=e:r.milliseconds=e):(o=Et.exec(e))?(n=\"-\"===o[1]?-1:1,r={y:0,d:M(o[ye])*n,h:M(o[ge])*n,m:M(o[pe])*n,s:M(o[ve])*n,ms:M(Ct(1e3*o[we]))*n}):(o=It.exec(e))?(n=\"-\"===o[1]?-1:(o[1],1),r={y:jt(o[2],n),M:jt(o[3],n),w:jt(o[4],n),d:jt(o[5],n),h:jt(o[6],n),m:jt(o[7],n),s:jt(o[8],n)}):null==r?r={}:\"object\"==typeof r&&(\"from\"in r||\"to\"in r)&&(i=function(e,t){var n;if(!e.isValid()||!t.isValid())return{milliseconds:0,months:0};t=Nt(t,e),e.isBefore(t)?n=Zt(e,t):((n=Zt(t,e)).milliseconds=-n.milliseconds,n.months=-n.months);return n}(Tt(r.from),Tt(r.to)),(r={}).ms=i.milliseconds,r.M=i.months),s=new Ht(r),Rt(e)&&l(e,\"_locale\")&&(s._locale=e._locale),s}function jt(e,t){var n=e&&parseFloat(e.replace(\",\",\".\"));return(isNaN(n)?0:n)*t}function Zt(e,t){var n={milliseconds:0,months:0};return n.months=t.month()-e.month()+12*(t.year()-e.year()),e.clone().add(n.months,\"M\").isAfter(t)&&--n.months,n.milliseconds=+t-+e.clone().add(n.months,\"M\"),n}function zt(e,t){return function(n,s){var i;return null===s||isNaN(+s)||(T(t,\"moment().\"+t+\"(period, number) is deprecated. Please use moment().\"+t+\"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.\"),i=n,n=s,s=i),$t(this,At(n=\"string\"==typeof n?+n:n,s),e),this}}function $t(e,t,s,i){var r=t._milliseconds,a=Ct(t._days),o=Ct(t._months);e.isValid()&&(i=null==i||i,o&&Ce(e,xe(e,\"Month\")+o*s),a&&be(e,\"Date\",xe(e,\"Date\")+a*s),r&&e._d.setTime(e._d.valueOf()+r*s),i&&n.updateOffset(e,a||o))}At.fn=Ht.prototype,At.invalid=function(){return At(NaN)};var qt=zt(1,\"add\"),Jt=zt(-1,\"subtract\");function Bt(e,t){var n=12*(t.year()-e.year())+(t.month()-e.month()),s=e.clone().add(n,\"months\");return-(n+(t-s<0?(t-s)/(s-e.clone().add(n-1,\"months\")):(t-s)/(e.clone().add(n+1,\"months\")-s)))||0}function Qt(e){var t;return void 0===e?this._locale._abbr:(null!=(t=lt(e))&&(this._locale=t),this)}n.defaultFormat=\"YYYY-MM-DDTHH:mm:ssZ\",n.defaultFormatUtc=\"YYYY-MM-DDTHH:mm:ss[Z]\";var Xt=k(\"moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.\",function(e){return void 0===e?this.localeData():this.locale(e)});function Kt(){return this._locale}function en(e,t){I(0,[e,e.length],0,t)}function tn(e,t,n,s,i){var r;return null==e?Ie(this,s,i).year:(t>(r=Ae(e,s,i))&&(t=r),function(e,t,n,s,i){var r=Ee(e,t,n,s,i),a=Ge(r.year,0,r.dayOfYear);return this.year(a.getUTCFullYear()),this.month(a.getUTCMonth()),this.date(a.getUTCDate()),this}.call(this,e,t,n,s,i))}I(0,[\"gg\",2],0,function(){return this.weekYear()%100}),I(0,[\"GG\",2],0,function(){return this.isoWeekYear()%100}),en(\"gggg\",\"weekYear\"),en(\"ggggg\",\"weekYear\"),en(\"GGGG\",\"isoWeekYear\"),en(\"GGGGG\",\"isoWeekYear\"),H(\"weekYear\",\"gg\"),H(\"isoWeekYear\",\"GG\"),L(\"weekYear\",1),L(\"isoWeekYear\",1),ue(\"G\",se),ue(\"g\",se),ue(\"GG\",B,z),ue(\"gg\",B,z),ue(\"GGGG\",ee,q),ue(\"gggg\",ee,q),ue(\"GGGGG\",te,J),ue(\"ggggg\",te,J),fe([\"gggg\",\"ggggg\",\"GGGG\",\"GGGGG\"],function(e,t,n,s){t[s.substr(0,2)]=M(e)}),fe([\"gg\",\"GG\"],function(e,t,s,i){t[i]=n.parseTwoDigitYear(e)}),I(\"Q\",0,\"Qo\",\"quarter\"),H(\"quarter\",\"Q\"),L(\"quarter\",7),ue(\"Q\",Z),ce(\"Q\",function(e,t){t[_e]=3*(M(e)-1)}),I(\"D\",[\"DD\",2],\"Do\",\"date\"),H(\"date\",\"D\"),L(\"date\",9),ue(\"D\",B),ue(\"DD\",B,z),ue(\"Do\",function(e,t){return e?t._dayOfMonthOrdinalParse||t._ordinalParse:t._dayOfMonthOrdinalParseLenient}),ce([\"D\",\"DD\"],ye),ce(\"Do\",function(e,t){t[ye]=M(e.match(B)[0])});var nn=Te(\"Date\",!0);I(\"DDD\",[\"DDDD\",3],\"DDDo\",\"dayOfYear\"),H(\"dayOfYear\",\"DDD\"),L(\"dayOfYear\",4),ue(\"DDD\",K),ue(\"DDDD\",$),ce([\"DDD\",\"DDDD\"],function(e,t,n){n._dayOfYear=M(e)}),I(\"m\",[\"mm\",2],0,\"minute\"),H(\"minute\",\"m\"),L(\"minute\",14),ue(\"m\",B),ue(\"mm\",B,z),ce([\"m\",\"mm\"],pe);var sn=Te(\"Minutes\",!1);I(\"s\",[\"ss\",2],0,\"second\"),H(\"second\",\"s\"),L(\"second\",15),ue(\"s\",B),ue(\"ss\",B,z),ce([\"s\",\"ss\"],ve);var rn,an=Te(\"Seconds\",!1);for(I(\"S\",0,0,function(){return~~(this.millisecond()/100)}),I(0,[\"SS\",2],0,function(){return~~(this.millisecond()/10)}),I(0,[\"SSS\",3],0,\"millisecond\"),I(0,[\"SSSS\",4],0,function(){return 10*this.millisecond()}),I(0,[\"SSSSS\",5],0,function(){return 100*this.millisecond()}),I(0,[\"SSSSSS\",6],0,function(){return 1e3*this.millisecond()}),I(0,[\"SSSSSSS\",7],0,function(){return 1e4*this.millisecond()}),I(0,[\"SSSSSSSS\",8],0,function(){return 1e5*this.millisecond()}),I(0,[\"SSSSSSSSS\",9],0,function(){return 1e6*this.millisecond()}),H(\"millisecond\",\"ms\"),L(\"millisecond\",16),ue(\"S\",K,Z),ue(\"SS\",K,z),ue(\"SSS\",K,$),rn=\"SSSS\";rn.length<=9;rn+=\"S\")ue(rn,ne);function on(e,t){t[we]=M(1e3*(\"0.\"+e))}for(rn=\"S\";rn.length<=9;rn+=\"S\")ce(rn,on);var un=Te(\"Milliseconds\",!1);I(\"z\",0,0,\"zoneAbbr\"),I(\"zz\",0,0,\"zoneName\");var ln=p.prototype;function dn(e){return e}ln.add=qt,ln.calendar=function(e,t){var s=e||Tt(),i=Nt(s,this).startOf(\"day\"),r=n.calendarFormat(this,i)||\"sameElse\",a=t&&(x(t[r])?t[r].call(this,s):t[r]);return this.format(a||this.localeData().calendar(r,this,Tt(s)))},ln.clone=function(){return new p(this)},ln.diff=function(e,t,n){var s,i,r;if(!this.isValid())return NaN;if(!(s=Nt(e,this)).isValid())return NaN;switch(i=6e4*(s.utcOffset()-this.utcOffset()),t=R(t)){case\"year\":r=Bt(this,s)/12;break;case\"month\":r=Bt(this,s);break;case\"quarter\":r=Bt(this,s)/3;break;case\"second\":r=(this-s)/1e3;break;case\"minute\":r=(this-s)/6e4;break;case\"hour\":r=(this-s)/36e5;break;case\"day\":r=(this-s-i)/864e5;break;case\"week\":r=(this-s-i)/6048e5;break;default:r=this-s}return n?r:w(r)},ln.endOf=function(e){return void 0===(e=R(e))||\"millisecond\"===e?this:(\"date\"===e&&(e=\"day\"),this.startOf(e).add(1,\"isoWeek\"===e?\"week\":e).subtract(1,\"ms\"))},ln.format=function(e){e||(e=this.isUtc()?n.defaultFormatUtc:n.defaultFormat);var t=A(this,e);return this.localeData().postformat(t)},ln.from=function(e,t){return this.isValid()&&(v(e)&&e.isValid()||Tt(e).isValid())?At({to:this,from:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()},ln.fromNow=function(e){return this.from(Tt(),e)},ln.to=function(e,t){return this.isValid()&&(v(e)&&e.isValid()||Tt(e).isValid())?At({from:this,to:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()},ln.toNow=function(e){return this.to(Tt(),e)},ln.get=function(e){return x(this[e=R(e)])?this[e]():this},ln.invalidAt=function(){return c(this).overflow},ln.isAfter=function(e,t){var n=v(e)?e:Tt(e);return!(!this.isValid()||!n.isValid())&&(\"millisecond\"===(t=R(r(t)?\"millisecond\":t))?this.valueOf()>n.valueOf():n.valueOf()<this.clone().startOf(t).valueOf())},ln.isBefore=function(e,t){var n=v(e)?e:Tt(e);return!(!this.isValid()||!n.isValid())&&(\"millisecond\"===(t=R(r(t)?\"millisecond\":t))?this.valueOf()<n.valueOf():this.clone().endOf(t).valueOf()<n.valueOf())},ln.isBetween=function(e,t,n,s){return(\"(\"===(s=s||\"()\")[0]?this.isAfter(e,n):!this.isBefore(e,n))&&(\")\"===s[1]?this.isBefore(t,n):!this.isAfter(t,n))},ln.isSame=function(e,t){var n,s=v(e)?e:Tt(e);return!(!this.isValid()||!s.isValid())&&(\"millisecond\"===(t=R(t||\"millisecond\"))?this.valueOf()===s.valueOf():(n=s.valueOf(),this.clone().startOf(t).valueOf()<=n&&n<=this.clone().endOf(t).valueOf()))},ln.isSameOrAfter=function(e,t){return this.isSame(e,t)||this.isAfter(e,t)},ln.isSameOrBefore=function(e,t){return this.isSame(e,t)||this.isBefore(e,t)},ln.isValid=function(){return f(this)},ln.lang=Xt,ln.locale=Qt,ln.localeData=Kt,ln.max=bt,ln.min=xt,ln.parsingFlags=function(){return d({},c(this))},ln.set=function(e,t){if(\"object\"==typeof e)for(var n=function(e){var t=[];for(var n in e)t.push({unit:n,priority:F[n]});return t.sort(function(e,t){return e.priority-t.priority}),t}(e=C(e)),s=0;s<n.length;s++)this[n[s].unit](e[n[s].unit]);else if(x(this[e=R(e)]))return this[e](t);return this},ln.startOf=function(e){switch(e=R(e)){case\"year\":this.month(0);case\"quarter\":case\"month\":this.date(1);case\"week\":case\"isoWeek\":case\"day\":case\"date\":this.hours(0);case\"hour\":this.minutes(0);case\"minute\":this.seconds(0);case\"second\":this.milliseconds(0)}return\"week\"===e&&this.weekday(0),\"isoWeek\"===e&&this.isoWeekday(1),\"quarter\"===e&&this.month(3*Math.floor(this.month()/3)),this},ln.subtract=Jt,ln.toArray=function(){var e=this;return[e.year(),e.month(),e.date(),e.hour(),e.minute(),e.second(),e.millisecond()]},ln.toObject=function(){var e=this;return{years:e.year(),months:e.month(),date:e.date(),hours:e.hours(),minutes:e.minutes(),seconds:e.seconds(),milliseconds:e.milliseconds()}},ln.toDate=function(){return new Date(this.valueOf())},ln.toISOString=function(e){if(!this.isValid())return null;var t=!0!==e,n=t?this.clone().utc():this;return n.year()<0||n.year()>9999?A(n,t?\"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]\":\"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ\"):x(Date.prototype.toISOString)?t?this.toDate().toISOString():new Date(this.valueOf()+60*this.utcOffset()*1e3).toISOString().replace(\"Z\",A(n,\"Z\")):A(n,t?\"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]\":\"YYYY-MM-DD[T]HH:mm:ss.SSSZ\")},ln.inspect=function(){if(!this.isValid())return\"moment.invalid(/* \"+this._i+\" */)\";var e=\"moment\",t=\"\";this.isLocal()||(e=0===this.utcOffset()?\"moment.utc\":\"moment.parseZone\",t=\"Z\");var n=\"[\"+e+'(\"]',s=0<=this.year()&&this.year()<=9999?\"YYYY\":\"YYYYYY\",i=t+'[\")]';return this.format(n+s+\"-MM-DD[T]HH:mm:ss.SSS\"+i)},ln.toJSON=function(){return this.isValid()?this.toISOString():null},ln.toString=function(){return this.clone().locale(\"en\").format(\"ddd MMM DD YYYY HH:mm:ss [GMT]ZZ\")},ln.unix=function(){return Math.floor(this.valueOf()/1e3)},ln.valueOf=function(){return this._d.valueOf()-6e4*(this._offset||0)},ln.creationData=function(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}},ln.year=Oe,ln.isLeapYear=function(){return ke(this.year())},ln.weekYear=function(e){return tn.call(this,e,this.week(),this.weekday(),this.localeData()._week.dow,this.localeData()._week.doy)},ln.isoWeekYear=function(e){return tn.call(this,e,this.isoWeek(),this.isoWeekday(),1,4)},ln.quarter=ln.quarters=function(e){return null==e?Math.ceil((this.month()+1)/3):this.month(3*(e-1)+this.month()%3)},ln.month=Fe,ln.daysInMonth=function(){return Pe(this.year(),this.month())},ln.week=ln.weeks=function(e){var t=this.localeData().week(this);return null==e?t:this.add(7*(e-t),\"d\")},ln.isoWeek=ln.isoWeeks=function(e){var t=Ie(this,1,4).week;return null==e?t:this.add(7*(e-t),\"d\")},ln.weeksInYear=function(){var e=this.localeData()._week;return Ae(this.year(),e.dow,e.doy)},ln.isoWeeksInYear=function(){return Ae(this.year(),1,4)},ln.date=nn,ln.day=ln.days=function(e){if(!this.isValid())return null!=e?this:NaN;var t,n,s=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=e?(t=e,n=this.localeData(),e=\"string\"!=typeof t?t:isNaN(t)?\"number\"==typeof(t=n.weekdaysParse(t))?t:null:parseInt(t,10),this.add(e-s,\"d\")):s},ln.weekday=function(e){if(!this.isValid())return null!=e?this:NaN;var t=(this.day()+7-this.localeData()._week.dow)%7;return null==e?t:this.add(e-t,\"d\")},ln.isoWeekday=function(e){if(!this.isValid())return null!=e?this:NaN;if(null!=e){var t=(n=e,s=this.localeData(),\"string\"==typeof n?s.weekdaysParse(n)%7||7:isNaN(n)?null:n);return this.day(this.day()%7?t:t-7)}return this.day()||7;var n,s},ln.dayOfYear=function(e){var t=Math.round((this.clone().startOf(\"day\")-this.clone().startOf(\"year\"))/864e5)+1;return null==e?t:this.add(e-t,\"d\")},ln.hour=ln.hours=tt,ln.minute=ln.minutes=sn,ln.second=ln.seconds=an,ln.millisecond=ln.milliseconds=un,ln.utcOffset=function(e,t,s){var i,r=this._offset||0;if(!this.isValid())return null!=e?this:NaN;if(null!=e){if(\"string\"==typeof e){if(null===(e=Ut(re,e)))return this}else Math.abs(e)<16&&!s&&(e*=60);return!this._isUTC&&t&&(i=Gt(this)),this._offset=e,this._isUTC=!0,null!=i&&this.add(i,\"m\"),r!==e&&(!t||this._changeInProgress?$t(this,At(e-r,\"m\"),1,!1):this._changeInProgress||(this._changeInProgress=!0,n.updateOffset(this,!0),this._changeInProgress=null)),this}return this._isUTC?r:Gt(this)},ln.utc=function(e){return this.utcOffset(0,e)},ln.local=function(e){return this._isUTC&&(this.utcOffset(0,e),this._isUTC=!1,e&&this.subtract(Gt(this),\"m\")),this},ln.parseZone=function(){if(null!=this._tzm)this.utcOffset(this._tzm,!1,!0);else if(\"string\"==typeof this._i){var e=Ut(ie,this._i);null!=e?this.utcOffset(e):this.utcOffset(0,!0)}return this},ln.hasAlignedHourOffset=function(e){return!!this.isValid()&&(e=e?Tt(e).utcOffset():0,(this.utcOffset()-e)%60==0)},ln.isDST=function(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},ln.isLocal=function(){return!!this.isValid()&&!this._isUTC},ln.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},ln.isUtc=Vt,ln.isUTC=Vt,ln.zoneAbbr=function(){return this._isUTC?\"UTC\":\"\"},ln.zoneName=function(){return this._isUTC?\"Coordinated Universal Time\":\"\"},ln.dates=k(\"dates accessor is deprecated. Use date instead.\",nn),ln.months=k(\"months accessor is deprecated. Use month instead\",Fe),ln.years=k(\"years accessor is deprecated. Use year instead\",Oe),ln.zone=k(\"moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/\",function(e,t){return null!=e?(\"string\"!=typeof e&&(e=-e),this.utcOffset(e,t),this):-this.utcOffset()}),ln.isDSTShifted=k(\"isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information\",function(){if(!r(this._isDSTShifted))return this._isDSTShifted;var e={};if(y(e,this),(e=Yt(e))._a){var t=e._isUTC?h(e._a):Tt(e._a);this._isDSTShifted=this.isValid()&&S(e._a,t.toArray())>0}else this._isDSTShifted=!1;return this._isDSTShifted});var hn=P.prototype;function cn(e,t,n,s){var i=lt(),r=h().set(s,t);return i[n](r,e)}function fn(e,t,n){if(a(e)&&(t=e,e=void 0),e=e||\"\",null!=t)return cn(e,t,n,\"month\");var s,i=[];for(s=0;s<12;s++)i[s]=cn(e,s,n,\"month\");return i}function mn(e,t,n,s){\"boolean\"==typeof e?(a(t)&&(n=t,t=void 0),t=t||\"\"):(n=t=e,e=!1,a(t)&&(n=t,t=void 0),t=t||\"\");var i,r=lt(),o=e?r._week.dow:0;if(null!=n)return cn(t,(n+o)%7,s,\"day\");var u=[];for(i=0;i<7;i++)u[i]=cn(t,(i+o)%7,s,\"day\");return u}hn.calendar=function(e,t,n){var s=this._calendar[e]||this._calendar.sameElse;return x(s)?s.call(t,n):s},hn.longDateFormat=function(e){var t=this._longDateFormat[e],n=this._longDateFormat[e.toUpperCase()];return t||!n?t:(this._longDateFormat[e]=n.replace(/MMMM|MM|DD|dddd/g,function(e){return e.slice(1)}),this._longDateFormat[e])},hn.invalidDate=function(){return this._invalidDate},hn.ordinal=function(e){return this._ordinal.replace(\"%d\",e)},hn.preparse=dn,hn.postformat=dn,hn.relativeTime=function(e,t,n,s){var i=this._relativeTime[n];return x(i)?i(e,t,n,s):i.replace(/%d/i,e)},hn.pastFuture=function(e,t){var n=this._relativeTime[e>0?\"future\":\"past\"];return x(n)?n(t):n.replace(/%s/i,t)},hn.set=function(e){var t,n;for(n in e)x(t=e[n])?this[n]=t:this[\"_\"+n]=t;this._config=e,this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+\"|\"+/\\d{1,2}/.source)},hn.months=function(e,t){return e?s(this._months)?this._months[e.month()]:this._months[(this._months.isFormat||We).test(t)?\"format\":\"standalone\"][e.month()]:s(this._months)?this._months:this._months.standalone},hn.monthsShort=function(e,t){return e?s(this._monthsShort)?this._monthsShort[e.month()]:this._monthsShort[We.test(t)?\"format\":\"standalone\"][e.month()]:s(this._monthsShort)?this._monthsShort:this._monthsShort.standalone},hn.monthsParse=function(e,t,n){var s,i,r;if(this._monthsParseExact)return function(e,t,n){var s,i,r,a=e.toLocaleLowerCase();if(!this._monthsParse)for(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],s=0;s<12;++s)r=h([2e3,s]),this._shortMonthsParse[s]=this.monthsShort(r,\"\").toLocaleLowerCase(),this._longMonthsParse[s]=this.months(r,\"\").toLocaleLowerCase();return n?\"MMM\"===t?-1!==(i=Ye.call(this._shortMonthsParse,a))?i:null:-1!==(i=Ye.call(this._longMonthsParse,a))?i:null:\"MMM\"===t?-1!==(i=Ye.call(this._shortMonthsParse,a))?i:-1!==(i=Ye.call(this._longMonthsParse,a))?i:null:-1!==(i=Ye.call(this._longMonthsParse,a))?i:-1!==(i=Ye.call(this._shortMonthsParse,a))?i:null}.call(this,e,t,n);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),s=0;s<12;s++){if(i=h([2e3,s]),n&&!this._longMonthsParse[s]&&(this._longMonthsParse[s]=new RegExp(\"^\"+this.months(i,\"\").replace(\".\",\"\")+\"$\",\"i\"),this._shortMonthsParse[s]=new RegExp(\"^\"+this.monthsShort(i,\"\").replace(\".\",\"\")+\"$\",\"i\")),n||this._monthsParse[s]||(r=\"^\"+this.months(i,\"\")+\"|^\"+this.monthsShort(i,\"\"),this._monthsParse[s]=new RegExp(r.replace(\".\",\"\"),\"i\")),n&&\"MMMM\"===t&&this._longMonthsParse[s].test(e))return s;if(n&&\"MMM\"===t&&this._shortMonthsParse[s].test(e))return s;if(!n&&this._monthsParse[s].test(e))return s}},hn.monthsRegex=function(e){return this._monthsParseExact?(l(this,\"_monthsRegex\")||Ne.call(this),e?this._monthsStrictRegex:this._monthsRegex):(l(this,\"_monthsRegex\")||(this._monthsRegex=Ue),this._monthsStrictRegex&&e?this._monthsStrictRegex:this._monthsRegex)},hn.monthsShortRegex=function(e){return this._monthsParseExact?(l(this,\"_monthsRegex\")||Ne.call(this),e?this._monthsShortStrictRegex:this._monthsShortRegex):(l(this,\"_monthsShortRegex\")||(this._monthsShortRegex=Le),this._monthsShortStrictRegex&&e?this._monthsShortStrictRegex:this._monthsShortRegex)},hn.week=function(e){return Ie(e,this._week.dow,this._week.doy).week},hn.firstDayOfYear=function(){return this._week.doy},hn.firstDayOfWeek=function(){return this._week.dow},hn.weekdays=function(e,t){return e?s(this._weekdays)?this._weekdays[e.day()]:this._weekdays[this._weekdays.isFormat.test(t)?\"format\":\"standalone\"][e.day()]:s(this._weekdays)?this._weekdays:this._weekdays.standalone},hn.weekdaysMin=function(e){return e?this._weekdaysMin[e.day()]:this._weekdaysMin},hn.weekdaysShort=function(e){return e?this._weekdaysShort[e.day()]:this._weekdaysShort},hn.weekdaysParse=function(e,t,n){var s,i,r;if(this._weekdaysParseExact)return function(e,t,n){var s,i,r,a=e.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],s=0;s<7;++s)r=h([2e3,1]).day(s),this._minWeekdaysParse[s]=this.weekdaysMin(r,\"\").toLocaleLowerCase(),this._shortWeekdaysParse[s]=this.weekdaysShort(r,\"\").toLocaleLowerCase(),this._weekdaysParse[s]=this.weekdays(r,\"\").toLocaleLowerCase();return n?\"dddd\"===t?-1!==(i=Ye.call(this._weekdaysParse,a))?i:null:\"ddd\"===t?-1!==(i=Ye.call(this._shortWeekdaysParse,a))?i:null:-1!==(i=Ye.call(this._minWeekdaysParse,a))?i:null:\"dddd\"===t?-1!==(i=Ye.call(this._weekdaysParse,a))?i:-1!==(i=Ye.call(this._shortWeekdaysParse,a))?i:-1!==(i=Ye.call(this._minWeekdaysParse,a))?i:null:\"ddd\"===t?-1!==(i=Ye.call(this._shortWeekdaysParse,a))?i:-1!==(i=Ye.call(this._weekdaysParse,a))?i:-1!==(i=Ye.call(this._minWeekdaysParse,a))?i:null:-1!==(i=Ye.call(this._minWeekdaysParse,a))?i:-1!==(i=Ye.call(this._weekdaysParse,a))?i:-1!==(i=Ye.call(this._shortWeekdaysParse,a))?i:null}.call(this,e,t,n);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),s=0;s<7;s++){if(i=h([2e3,1]).day(s),n&&!this._fullWeekdaysParse[s]&&(this._fullWeekdaysParse[s]=new RegExp(\"^\"+this.weekdays(i,\"\").replace(\".\",\".?\")+\"$\",\"i\"),this._shortWeekdaysParse[s]=new RegExp(\"^\"+this.weekdaysShort(i,\"\").replace(\".\",\".?\")+\"$\",\"i\"),this._minWeekdaysParse[s]=new RegExp(\"^\"+this.weekdaysMin(i,\"\").replace(\".\",\".?\")+\"$\",\"i\")),this._weekdaysParse[s]||(r=\"^\"+this.weekdays(i,\"\")+\"|^\"+this.weekdaysShort(i,\"\")+\"|^\"+this.weekdaysMin(i,\"\"),this._weekdaysParse[s]=new RegExp(r.replace(\".\",\"\"),\"i\")),n&&\"dddd\"===t&&this._fullWeekdaysParse[s].test(e))return s;if(n&&\"ddd\"===t&&this._shortWeekdaysParse[s].test(e))return s;if(n&&\"dd\"===t&&this._minWeekdaysParse[s].test(e))return s;if(!n&&this._weekdaysParse[s].test(e))return s}},hn.weekdaysRegex=function(e){return this._weekdaysParseExact?(l(this,\"_weekdaysRegex\")||Be.call(this),e?this._weekdaysStrictRegex:this._weekdaysRegex):(l(this,\"_weekdaysRegex\")||(this._weekdaysRegex=$e),this._weekdaysStrictRegex&&e?this._weekdaysStrictRegex:this._weekdaysRegex)},hn.weekdaysShortRegex=function(e){return this._weekdaysParseExact?(l(this,\"_weekdaysRegex\")||Be.call(this),e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(l(this,\"_weekdaysShortRegex\")||(this._weekdaysShortRegex=qe),this._weekdaysShortStrictRegex&&e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)},hn.weekdaysMinRegex=function(e){return this._weekdaysParseExact?(l(this,\"_weekdaysRegex\")||Be.call(this),e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(l(this,\"_weekdaysMinRegex\")||(this._weekdaysMinRegex=Je),this._weekdaysMinStrictRegex&&e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)},hn.isPM=function(e){return\"p\"===(e+\"\").toLowerCase().charAt(0)},hn.meridiem=function(e,t,n){return e>11?n?\"pm\":\"PM\":n?\"am\":\"AM\"},ot(\"en\",{dayOfMonthOrdinalParse:/\\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10;return e+(1===M(e%100/10)?\"th\":1===t?\"st\":2===t?\"nd\":3===t?\"rd\":\"th\")}}),n.lang=k(\"moment.lang is deprecated. Use moment.locale instead.\",ot),n.langData=k(\"moment.langData is deprecated. Use moment.localeData instead.\",lt);var _n=Math.abs;function yn(e,t,n,s){var i=At(t,n);return e._milliseconds+=s*i._milliseconds,e._days+=s*i._days,e._months+=s*i._months,e._bubble()}function gn(e){return e<0?Math.floor(e):Math.ceil(e)}function pn(e){return 4800*e/146097}function vn(e){return 146097*e/4800}function wn(e){return function(){return this.as(e)}}var Mn=wn(\"ms\"),Sn=wn(\"s\"),Dn=wn(\"m\"),kn=wn(\"h\"),Yn=wn(\"d\"),On=wn(\"w\"),Tn=wn(\"M\"),xn=wn(\"y\");function bn(e){return function(){return this.isValid()?this._data[e]:NaN}}var Pn=bn(\"milliseconds\"),Wn=bn(\"seconds\"),Hn=bn(\"minutes\"),Rn=bn(\"hours\"),Cn=bn(\"days\"),Fn=bn(\"months\"),Ln=bn(\"years\");var Un=Math.round,Nn={ss:44,s:45,m:45,h:22,d:26,M:11};var Gn=Math.abs;function Vn(e){return(e>0)-(e<0)||+e}function En(){if(!this.isValid())return this.localeData().invalidDate();var e,t,n=Gn(this._milliseconds)/1e3,s=Gn(this._days),i=Gn(this._months);t=w((e=w(n/60))/60),n%=60,e%=60;var r=w(i/12),a=i%=12,o=s,u=t,l=e,d=n?n.toFixed(3).replace(/\\.?0+$/,\"\"):\"\",h=this.asSeconds();if(!h)return\"P0D\";var c=h<0?\"-\":\"\",f=Vn(this._months)!==Vn(h)?\"-\":\"\",m=Vn(this._days)!==Vn(h)?\"-\":\"\",_=Vn(this._milliseconds)!==Vn(h)?\"-\":\"\";return c+\"P\"+(r?f+r+\"Y\":\"\")+(a?f+a+\"M\":\"\")+(o?m+o+\"D\":\"\")+(u||l||d?\"T\":\"\")+(u?_+u+\"H\":\"\")+(l?_+l+\"M\":\"\")+(d?_+d+\"S\":\"\")}var In=Ht.prototype;return In.isValid=function(){return this._isValid},In.abs=function(){var e=this._data;return this._milliseconds=_n(this._milliseconds),this._days=_n(this._days),this._months=_n(this._months),e.milliseconds=_n(e.milliseconds),e.seconds=_n(e.seconds),e.minutes=_n(e.minutes),e.hours=_n(e.hours),e.months=_n(e.months),e.years=_n(e.years),this},In.add=function(e,t){return yn(this,e,t,1)},In.subtract=function(e,t){return yn(this,e,t,-1)},In.as=function(e){if(!this.isValid())return NaN;var t,n,s=this._milliseconds;if(\"month\"===(e=R(e))||\"year\"===e)return t=this._days+s/864e5,n=this._months+pn(t),\"month\"===e?n:n/12;switch(t=this._days+Math.round(vn(this._months)),e){case\"week\":return t/7+s/6048e5;case\"day\":return t+s/864e5;case\"hour\":return 24*t+s/36e5;case\"minute\":return 1440*t+s/6e4;case\"second\":return 86400*t+s/1e3;case\"millisecond\":return Math.floor(864e5*t)+s;default:throw new Error(\"Unknown unit \"+e)}},In.asMilliseconds=Mn,In.asSeconds=Sn,In.asMinutes=Dn,In.asHours=kn,In.asDays=Yn,In.asWeeks=On,In.asMonths=Tn,In.asYears=xn,In.valueOf=function(){return this.isValid()?this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*M(this._months/12):NaN},In._bubble=function(){var e,t,n,s,i,r=this._milliseconds,a=this._days,o=this._months,u=this._data;return r>=0&&a>=0&&o>=0||r<=0&&a<=0&&o<=0||(r+=864e5*gn(vn(o)+a),a=0,o=0),u.milliseconds=r%1e3,e=w(r/1e3),u.seconds=e%60,t=w(e/60),u.minutes=t%60,n=w(t/60),u.hours=n%24,o+=i=w(pn(a+=w(n/24))),a-=gn(vn(i)),s=w(o/12),o%=12,u.days=a,u.months=o,u.years=s,this},In.clone=function(){return At(this)},In.get=function(e){return e=R(e),this.isValid()?this[e+\"s\"]():NaN},In.milliseconds=Pn,In.seconds=Wn,In.minutes=Hn,In.hours=Rn,In.days=Cn,In.weeks=function(){return w(this.days()/7)},In.months=Fn,In.years=Ln,In.humanize=function(e){if(!this.isValid())return this.localeData().invalidDate();var t,n,s,i,r,a,o,u,l,d,h,c=this.localeData(),f=(n=!e,s=c,i=At(t=this).abs(),r=Un(i.as(\"s\")),a=Un(i.as(\"m\")),o=Un(i.as(\"h\")),u=Un(i.as(\"d\")),l=Un(i.as(\"M\")),d=Un(i.as(\"y\")),(h=r<=Nn.ss&&[\"s\",r]||r<Nn.s&&[\"ss\",r]||a<=1&&[\"m\"]||a<Nn.m&&[\"mm\",a]||o<=1&&[\"h\"]||o<Nn.h&&[\"hh\",o]||u<=1&&[\"d\"]||u<Nn.d&&[\"dd\",u]||l<=1&&[\"M\"]||l<Nn.M&&[\"MM\",l]||d<=1&&[\"y\"]||[\"yy\",d])[2]=n,h[3]=+t>0,h[4]=s,function(e,t,n,s,i){return i.relativeTime(t||1,!!n,e,s)}.apply(null,h));return e&&(f=c.pastFuture(+this,f)),c.postformat(f)},In.toISOString=En,In.toString=En,In.toJSON=En,In.locale=Qt,In.localeData=Kt,In.toIsoString=k(\"toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)\",En),In.lang=Xt,I(\"X\",0,0,\"unix\"),I(\"x\",0,0,\"valueOf\"),ue(\"x\",se),ue(\"X\",/[+-]?\\d+(\\.\\d{1,3})?/),ce(\"X\",function(e,t,n){n._d=new Date(1e3*parseFloat(e,10))}),ce(\"x\",function(e,t,n){n._d=new Date(M(e))}),n.version=\"2.21.0\",e=Tt,n.fn=ln,n.min=function(){return Pt(\"isBefore\",[].slice.call(arguments,0))},n.max=function(){return Pt(\"isAfter\",[].slice.call(arguments,0))},n.now=function(){return Date.now?Date.now():+new Date},n.utc=h,n.unix=function(e){return Tt(1e3*e)},n.months=function(e,t){return fn(e,t,\"months\")},n.isDate=o,n.locale=ot,n.invalid=m,n.duration=At,n.isMoment=v,n.weekdays=function(e,t,n){return mn(e,t,n,\"weekdays\")},n.parseZone=function(){return Tt.apply(null,arguments).parseZone()},n.localeData=lt,n.isDuration=Rt,n.monthsShort=function(e,t){return fn(e,t,\"monthsShort\")},n.weekdaysMin=function(e,t,n){return mn(e,t,n,\"weekdaysMin\")},n.defineLocale=ut,n.updateLocale=function(e,t){if(null!=t){var n,s,i=nt;null!=(s=at(e))&&(i=s._config),(n=new P(t=b(i,t))).parentLocale=st[e],st[e]=n,ot(e)}else null!=st[e]&&(null!=st[e].parentLocale?st[e]=st[e].parentLocale:null!=st[e]&&delete st[e]);return st[e]},n.locales=function(){return Y(st)},n.weekdaysShort=function(e,t,n){return mn(e,t,n,\"weekdaysShort\")},n.normalizeUnits=R,n.relativeTimeRounding=function(e){return void 0===e?Un:\"function\"==typeof e&&(Un=e,!0)},n.relativeTimeThreshold=function(e,t){return void 0!==Nn[e]&&(void 0===t?Nn[e]:(Nn[e]=t,\"s\"===e&&(Nn.ss=t-1),!0))},n.calendarFormat=function(e,t){var n=e.diff(t,\"days\",!0);return n<-6?\"sameElse\":n<-1?\"lastWeek\":n<0?\"lastDay\":n<1?\"sameDay\":n<2?\"nextDay\":n<7?\"nextWeek\":\"sameElse\"},n.prototype=ln,n.HTML5_FMT={DATETIME_LOCAL:\"YYYY-MM-DDTHH:mm\",DATETIME_LOCAL_SECONDS:\"YYYY-MM-DDTHH:mm:ss\",DATETIME_LOCAL_MS:\"YYYY-MM-DDTHH:mm:ss.SSS\",DATE:\"YYYY-MM-DD\",TIME:\"HH:mm\",TIME_SECONDS:\"HH:mm:ss\",TIME_MS:\"HH:mm:ss.SSS\",WEEK:\"YYYY-[W]WW\",MONTH:\"YYYY-MM\"},n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/moment/min/moment.min.js\n// module id = 23\n// module chunks = 0","module.exports = function(module) {\r\n\tif(!module.webpackPolyfill) {\r\n\t\tmodule.deprecate = function() {};\r\n\t\tmodule.paths = [];\r\n\t\t// module.parent = undefined by default\r\n\t\tif(!module.children) module.children = [];\r\n\t\tObject.defineProperty(module, \"loaded\", {\r\n\t\t\tenumerable: true,\r\n\t\t\tget: function() {\r\n\t\t\t\treturn module.l;\r\n\t\t\t}\r\n\t\t});\r\n\t\tObject.defineProperty(module, \"id\", {\r\n\t\t\tenumerable: true,\r\n\t\t\tget: function() {\r\n\t\t\t\treturn module.i;\r\n\t\t\t}\r\n\t\t});\r\n\t\tmodule.webpackPolyfill = 1;\r\n\t}\r\n\treturn module;\r\n};\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// (webpack)/buildin/module.js\n// module id = 24\n// module chunks = 0","/*!\n * Determine if an object is a Buffer\n *\n * @author Feross Aboukhadijeh <https://feross.org>\n * @license MIT\n */\n\nmodule.exports = function isBuffer (obj) {\n return obj != null && obj.constructor != null &&\n typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj)\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/is-buffer/index.js\n// module id = 25\n// module chunks = 0","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License. See License.txt in the project root for license information.\n\nimport { RequestPipeline } from \"./requestPipeline\";\nimport { ServiceClientCredentials } from \"./credentials/serviceClientCredentials\";\nimport { BaseFilter } from \"./filters/baseFilter\";\nimport { ExponentialRetryPolicyFilter } from \"./filters/exponentialRetryPolicyFilter\";\nimport { SystemErrorRetryPolicyFilter } from \"./filters/systemErrorRetryPolicyFilter\";\nimport { RedirectFilter } from \"./filters/redirectFilter\";\nimport { SigningFilter } from \"./filters/signingFilter\";\nimport { RPRegistrationFilter } from \"./filters/rpRegistrationFilter\";\nimport { MsRestUserAgentFilter } from \"./filters/msRestUserAgentFilter\";\nimport { WebResource, RequestPrepareOptions } from \"./webResource\";\nimport { Constants } from \"./util/constants\";\nimport { HttpOperationResponse } from \"./httpOperationResponse\";\n\n/**\n * Options to be provided while creating the client.\n */\nexport interface ServiceClientOptions {\n /**\n * @property {RequestInit} [requestOptions] The request options. Detailed info can be found\n * here https://github.github.io/fetch/#Request\n */\n requestOptions?: RequestInit;\n /**\n * @property {Array<BaseFilter>} [filters] An array of filters/interceptors that will\n * be processed in the request pipeline (before and after) sending the request on the wire.\n */\n filters?: BaseFilter[];\n /**\n * @property {bool} [noRetryPolicy] - If set to true, turn off the default retry policy.\n */\n noRetryPolicy?: boolean;\n /**\n * @property {number} [rpRegistrationRetryTimeout] - Gets or sets the retry timeout\n * in seconds for AutomaticRPRegistration. Default value is 30.\n */\n rpRegistrationRetryTimeout?: number;\n}\n\n/**\n * @class\n * Initializes a new instance of the ServiceClient.\n */\nexport class ServiceClient {\n /**\n * The string to be appended to the User-Agent header while sending the request.\n * This will be applicable only for node.js environment as the fetch library in browser does not allow setting custom UA.\n * @property {Array<string>} value - An array of string that need to be appended to the User-Agent request header.\n */\n userAgentInfo: { value: Array<string> };\n\n /**\n * The request pipeline that provides hooks for adding custom filters.\n * The before filters get executed before sending the request and the after filters get executed after receiving the response.\n */\n pipeline: Function;\n\n /**\n * The ServiceClient constructor\n * @constructor\n * @param {ServiceClientCredentials }[credentials] - BasicAuthenticationCredentials or\n * TokenCredentials object used for authentication.\n * @param { ServiceClientOptions } [options] The service client options that govern the behavior of the client.\n */\n constructor(credentials?: ServiceClientCredentials, options?: ServiceClientOptions) {\n if (!options) {\n options = {};\n }\n\n if (!options.requestOptions) {\n options.requestOptions = {};\n }\n\n if (!options.filters) {\n options.filters = [];\n }\n\n this.userAgentInfo = { value: [] };\n\n if (credentials && !credentials.signRequest) {\n throw new Error(\"credentials argument needs to implement signRequest method\");\n }\n\n try {\n const moduleName = \"ms-rest-js\";\n const moduleVersion = Constants.msRestVersion;\n this.addUserAgentInfo(`${moduleName}/${moduleVersion}`);\n } catch (err) {\n // do nothing\n }\n\n if (credentials) {\n options.filters.push(new SigningFilter(credentials));\n }\n\n options.filters.push(new MsRestUserAgentFilter(this.userAgentInfo.value));\n options.filters.push(new RedirectFilter());\n options.filters.push(new RPRegistrationFilter(options.rpRegistrationRetryTimeout));\n\n if (!options.noRetryPolicy) {\n options.filters.push(new ExponentialRetryPolicyFilter());\n options.filters.push(new SystemErrorRetryPolicyFilter());\n }\n\n this.pipeline = new RequestPipeline(options.filters, options.requestOptions).create();\n }\n\n /**\n * Adds custom information to user agent header\n * @param {any} additionalUserAgentInfo - information to be added to user agent header, as string.\n */\n addUserAgentInfo(additionalUserAgentInfo: string): void {\n if (this.userAgentInfo.value.indexOf(additionalUserAgentInfo) === -1) {\n this.userAgentInfo.value.push(additionalUserAgentInfo);\n }\n return;\n }\n\n async sendRequest(options: RequestPrepareOptions | WebResource): Promise<HttpOperationResponse> {\n if (options === null || options === undefined || typeof options !== \"object\") {\n throw new Error(\"options cannot be null or undefined and it must be of type object.\");\n }\n\n let httpRequest: WebResource;\n try {\n if (options instanceof WebResource) {\n options.validateRequestProperties();\n httpRequest = options;\n } else {\n httpRequest = new WebResource();\n httpRequest = httpRequest.prepare(options);\n }\n } catch (error) {\n return Promise.reject(error);\n }\n // send request\n let operationResponse: HttpOperationResponse;\n try {\n operationResponse = await this.pipeline(httpRequest);\n } catch (err) {\n return Promise.reject(err);\n }\n return Promise.resolve(operationResponse);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./lib/serviceClient.ts","'use strict';\n\nvar required = require('requires-port')\n , qs = require('querystringify')\n , protocolre = /^([a-z][a-z0-9.+-]*:)?(\\/\\/)?([\\S\\s]*)/i\n , slashes = /^[A-Za-z][A-Za-z0-9+-.]*:\\/\\//;\n\n/**\n * These are the parse rules for the URL parser, it informs the parser\n * about:\n *\n * 0. The char it Needs to parse, if it's a string it should be done using\n * indexOf, RegExp using exec and NaN means set as current value.\n * 1. The property we should set when parsing this value.\n * 2. Indication if it's backwards or forward parsing, when set as number it's\n * the value of extra chars that should be split off.\n * 3. Inherit from location if non existing in the parser.\n * 4. `toLowerCase` the resulting value.\n */\nvar rules = [\n ['#', 'hash'], // Extract from the back.\n ['?', 'query'], // Extract from the back.\n ['/', 'pathname'], // Extract from the back.\n ['@', 'auth', 1], // Extract from the front.\n [NaN, 'host', undefined, 1, 1], // Set left over value.\n [/:(\\d+)$/, 'port', undefined, 1], // RegExp the back.\n [NaN, 'hostname', undefined, 1, 1] // Set left over.\n];\n\n/**\n * These properties should not be copied or inherited from. This is only needed\n * for all non blob URL's as a blob URL does not include a hash, only the\n * origin.\n *\n * @type {Object}\n * @private\n */\nvar ignore = { hash: 1, query: 1 };\n\n/**\n * The location object differs when your code is loaded through a normal page,\n * Worker or through a worker using a blob. And with the blobble begins the\n * trouble as the location object will contain the URL of the blob, not the\n * location of the page where our code is loaded in. The actual origin is\n * encoded in the `pathname` so we can thankfully generate a good \"default\"\n * location from it so we can generate proper relative URL's again.\n *\n * @param {Object|String} loc Optional default location object.\n * @returns {Object} lolcation object.\n * @api public\n */\nfunction lolcation(loc) {\n loc = loc || global.location || {};\n\n var finaldestination = {}\n , type = typeof loc\n , key;\n\n if ('blob:' === loc.protocol) {\n finaldestination = new URL(unescape(loc.pathname), {});\n } else if ('string' === type) {\n finaldestination = new URL(loc, {});\n for (key in ignore) delete finaldestination[key];\n } else if ('object' === type) {\n for (key in loc) {\n if (key in ignore) continue;\n finaldestination[key] = loc[key];\n }\n\n if (finaldestination.slashes === undefined) {\n finaldestination.slashes = slashes.test(loc.href);\n }\n }\n\n return finaldestination;\n}\n\n/**\n * @typedef ProtocolExtract\n * @type Object\n * @property {String} protocol Protocol matched in the URL, in lowercase.\n * @property {Boolean} slashes `true` if protocol is followed by \"//\", else `false`.\n * @property {String} rest Rest of the URL that is not part of the protocol.\n */\n\n/**\n * Extract protocol information from a URL with/without double slash (\"//\").\n *\n * @param {String} address URL we want to extract from.\n * @return {ProtocolExtract} Extracted information.\n * @api private\n */\nfunction extractProtocol(address) {\n var match = protocolre.exec(address);\n\n return {\n protocol: match[1] ? match[1].toLowerCase() : '',\n slashes: !!match[2],\n rest: match[3]\n };\n}\n\n/**\n * Resolve a relative URL pathname against a base URL pathname.\n *\n * @param {String} relative Pathname of the relative URL.\n * @param {String} base Pathname of the base URL.\n * @return {String} Resolved pathname.\n * @api private\n */\nfunction resolve(relative, base) {\n var path = (base || '/').split('/').slice(0, -1).concat(relative.split('/'))\n , i = path.length\n , last = path[i - 1]\n , unshift = false\n , up = 0;\n\n while (i--) {\n if (path[i] === '.') {\n path.splice(i, 1);\n } else if (path[i] === '..') {\n path.splice(i, 1);\n up++;\n } else if (up) {\n if (i === 0) unshift = true;\n path.splice(i, 1);\n up--;\n }\n }\n\n if (unshift) path.unshift('');\n if (last === '.' || last === '..') path.push('');\n\n return path.join('/');\n}\n\n/**\n * The actual URL instance. Instead of returning an object we've opted-in to\n * create an actual constructor as it's much more memory efficient and\n * faster and it pleases my OCD.\n *\n * @constructor\n * @param {String} address URL we want to parse.\n * @param {Object|String} location Location defaults for relative paths.\n * @param {Boolean|Function} parser Parser for the query string.\n * @api public\n */\nfunction URL(address, location, parser) {\n if (!(this instanceof URL)) {\n return new URL(address, location, parser);\n }\n\n var relative, extracted, parse, instruction, index, key\n , instructions = rules.slice()\n , type = typeof location\n , url = this\n , i = 0;\n\n //\n // The following if statements allows this module two have compatibility with\n // 2 different API:\n //\n // 1. Node.js's `url.parse` api which accepts a URL, boolean as arguments\n // where the boolean indicates that the query string should also be parsed.\n //\n // 2. The `URL` interface of the browser which accepts a URL, object as\n // arguments. The supplied object will be used as default values / fall-back\n // for relative paths.\n //\n if ('object' !== type && 'string' !== type) {\n parser = location;\n location = null;\n }\n\n if (parser && 'function' !== typeof parser) parser = qs.parse;\n\n location = lolcation(location);\n\n //\n // Extract protocol information before running the instructions.\n //\n extracted = extractProtocol(address || '');\n relative = !extracted.protocol && !extracted.slashes;\n url.slashes = extracted.slashes || relative && location.slashes;\n url.protocol = extracted.protocol || location.protocol || '';\n address = extracted.rest;\n\n //\n // When the authority component is absent the URL starts with a path\n // component.\n //\n if (!extracted.slashes) instructions[2] = [/(.*)/, 'pathname'];\n\n for (; i < instructions.length; i++) {\n instruction = instructions[i];\n parse = instruction[0];\n key = instruction[1];\n\n if (parse !== parse) {\n url[key] = address;\n } else if ('string' === typeof parse) {\n if (~(index = address.indexOf(parse))) {\n if ('number' === typeof instruction[2]) {\n url[key] = address.slice(0, index);\n address = address.slice(index + instruction[2]);\n } else {\n url[key] = address.slice(index);\n address = address.slice(0, index);\n }\n }\n } else if ((index = parse.exec(address))) {\n url[key] = index[1];\n address = address.slice(0, index.index);\n }\n\n url[key] = url[key] || (\n relative && instruction[3] ? location[key] || '' : ''\n );\n\n //\n // Hostname, host and protocol should be lowercased so they can be used to\n // create a proper `origin`.\n //\n if (instruction[4]) url[key] = url[key].toLowerCase();\n }\n\n //\n // Also parse the supplied query string in to an object. If we're supplied\n // with a custom parser as function use that instead of the default build-in\n // parser.\n //\n if (parser) url.query = parser(url.query);\n\n //\n // If the URL is relative, resolve the pathname against the base URL.\n //\n if (\n relative\n && location.slashes\n && url.pathname.charAt(0) !== '/'\n && (url.pathname !== '' || location.pathname !== '')\n ) {\n url.pathname = resolve(url.pathname, location.pathname);\n }\n\n //\n // We should not add port numbers if they are already the default port number\n // for a given protocol. As the host also contains the port number we're going\n // override it with the hostname which contains no port number.\n //\n if (!required(url.port, url.protocol)) {\n url.host = url.hostname;\n url.port = '';\n }\n\n //\n // Parse down the `auth` for the username and password.\n //\n url.username = url.password = '';\n if (url.auth) {\n instruction = url.auth.split(':');\n url.username = instruction[0] || '';\n url.password = instruction[1] || '';\n }\n\n url.origin = url.protocol && url.host && url.protocol !== 'file:'\n ? url.protocol +'//'+ url.host\n : 'null';\n\n //\n // The href is just the compiled result.\n //\n url.href = url.toString();\n}\n\n/**\n * This is convenience method for changing properties in the URL instance to\n * insure that they all propagate correctly.\n *\n * @param {String} part Property we need to adjust.\n * @param {Mixed} value The newly assigned value.\n * @param {Boolean|Function} fn When setting the query, it will be the function\n * used to parse the query.\n * When setting the protocol, double slash will be\n * removed from the final url if it is true.\n * @returns {URL}\n * @api public\n */\nfunction set(part, value, fn) {\n var url = this;\n\n switch (part) {\n case 'query':\n if ('string' === typeof value && value.length) {\n value = (fn || qs.parse)(value);\n }\n\n url[part] = value;\n break;\n\n case 'port':\n url[part] = value;\n\n if (!required(value, url.protocol)) {\n url.host = url.hostname;\n url[part] = '';\n } else if (value) {\n url.host = url.hostname +':'+ value;\n }\n\n break;\n\n case 'hostname':\n url[part] = value;\n\n if (url.port) value += ':'+ url.port;\n url.host = value;\n break;\n\n case 'host':\n url[part] = value;\n\n if (/:\\d+$/.test(value)) {\n value = value.split(':');\n url.port = value.pop();\n url.hostname = value.join(':');\n } else {\n url.hostname = value;\n url.port = '';\n }\n\n break;\n\n case 'protocol':\n url.protocol = value.toLowerCase();\n url.slashes = !fn;\n break;\n\n case 'pathname':\n case 'hash':\n if (value) {\n var char = part === 'pathname' ? '/' : '#';\n url[part] = value.charAt(0) !== char ? char + value : value;\n } else {\n url[part] = value;\n }\n break;\n\n default:\n url[part] = value;\n }\n\n for (var i = 0; i < rules.length; i++) {\n var ins = rules[i];\n\n if (ins[4]) url[ins[1]] = url[ins[1]].toLowerCase();\n }\n\n url.origin = url.protocol && url.host && url.protocol !== 'file:'\n ? url.protocol +'//'+ url.host\n : 'null';\n\n url.href = url.toString();\n\n return url;\n}\n\n/**\n * Transform the properties back in to a valid and full URL string.\n *\n * @param {Function} stringify Optional query stringify function.\n * @returns {String}\n * @api public\n */\nfunction toString(stringify) {\n if (!stringify || 'function' !== typeof stringify) stringify = qs.stringify;\n\n var query\n , url = this\n , protocol = url.protocol;\n\n if (protocol && protocol.charAt(protocol.length - 1) !== ':') protocol += ':';\n\n var result = protocol + (url.slashes ? '//' : '');\n\n if (url.username) {\n result += url.username;\n if (url.password) result += ':'+ url.password;\n result += '@';\n }\n\n result += url.host + url.pathname;\n\n query = 'object' === typeof url.query ? stringify(url.query) : url.query;\n if (query) result += '?' !== query.charAt(0) ? '?'+ query : query;\n\n if (url.hash) result += url.hash;\n\n return result;\n}\n\nURL.prototype = { set: set, toString: toString };\n\n//\n// Expose the URL parser and some additional properties that might be useful for\n// others or testing.\n//\nURL.extractProtocol = extractProtocol;\nURL.location = lolcation;\nURL.qs = qs;\n\nmodule.exports = URL;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/url-parse/index.js\n// module id = 27\n// module chunks = 0","var g;\r\n\r\n// This works in non-strict mode\r\ng = (function() {\r\n\treturn this;\r\n})();\r\n\r\ntry {\r\n\t// This works if eval is allowed (see CSP)\r\n\tg = g || Function(\"return this\")() || (1,eval)(\"this\");\r\n} catch(e) {\r\n\t// This works if the window reference is available\r\n\tif(typeof window === \"object\")\r\n\t\tg = window;\r\n}\r\n\r\n// g can still be undefined, but nothing to do about it...\r\n// We return undefined, instead of nothing here, so it's\r\n// easier to handle this case. if(!global) { ...}\r\n\r\nmodule.exports = g;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// (webpack)/buildin/global.js\n// module id = 28\n// module chunks = 0","'use strict';\n\n/**\n * Check if we're required to add a port number.\n *\n * @see https://url.spec.whatwg.org/#default-port\n * @param {Number|String} port Port number we need to check\n * @param {String} protocol Protocol we need to check against.\n * @returns {Boolean} Is it a default port for the given protocol\n * @api private\n */\nmodule.exports = function required(port, protocol) {\n protocol = protocol.split(':')[0];\n port = +port;\n\n if (!port) return false;\n\n switch (protocol) {\n case 'http':\n case 'ws':\n return port !== 80;\n\n case 'https':\n case 'wss':\n return port !== 443;\n\n case 'ftp':\n return port !== 21;\n\n case 'gopher':\n return port !== 70;\n\n case 'file':\n return false;\n }\n\n return port !== 0;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/requires-port/index.js\n// module id = 29\n// module chunks = 0","'use strict';\n\nvar has = Object.prototype.hasOwnProperty;\n\n/**\n * Decode a URI encoded string.\n *\n * @param {String} input The URI encoded string.\n * @returns {String} The decoded string.\n * @api private\n */\nfunction decode(input) {\n return decodeURIComponent(input.replace(/\\+/g, ' '));\n}\n\n/**\n * Simple query string parser.\n *\n * @param {String} query The query string that needs to be parsed.\n * @returns {Object}\n * @api public\n */\nfunction querystring(query) {\n var parser = /([^=?&]+)=?([^&]*)/g\n , result = {}\n , part;\n\n //\n // Little nifty parsing hack, leverage the fact that RegExp.exec increments\n // the lastIndex property so we can continue executing this loop until we've\n // parsed all results.\n //\n for (;\n part = parser.exec(query);\n result[decode(part[1])] = decode(part[2])\n );\n\n return result;\n}\n\n/**\n * Transform a query string to an object.\n *\n * @param {Object} obj Object that should be transformed.\n * @param {String} prefix Optional prefix.\n * @returns {String}\n * @api public\n */\nfunction querystringify(obj, prefix) {\n prefix = prefix || '';\n\n var pairs = [];\n\n //\n // Optionally prefix with a '?' if needed\n //\n if ('string' !== typeof prefix) prefix = '?';\n\n for (var key in obj) {\n if (has.call(obj, key)) {\n pairs.push(encodeURIComponent(key) +'='+ encodeURIComponent(obj[key]));\n }\n }\n\n return pairs.length ? prefix + pairs.join('&') : '';\n}\n\n//\n// Expose the module.\n//\nexports.stringify = querystringify;\nexports.parse = querystring;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/querystringify/index.js\n// module id = 30\n// module chunks = 0","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License. See License.txt in the project root for license information.\nimport { BaseFilter } from \"./baseFilter\";\nimport { HttpOperationResponse } from \"../httpOperationResponse\";\nimport { WebResource } from \"../webResource\";\nimport * as utils from \"../util/utils\";\n\n/* tslint:disable:prefer-const */\nlet retryTimeout = 30;\n/* tslint:enable:prefer-const */\n\nexport class RPRegistrationFilter extends BaseFilter {\n\n constructor(retryTimeout = 30) {\n super();\n retryTimeout = retryTimeout;\n }\n\n async after(operationResponse: HttpOperationResponse): Promise<HttpOperationResponse> {\n let rpName, urlPrefix;\n const options = operationResponse.request;\n if (operationResponse.response.status === 409) {\n rpName = this.checkRPNotRegisteredError(operationResponse.bodyAsText as string);\n }\n if (rpName) {\n urlPrefix = this.extractSubscriptionUrl(options.url);\n let registrationStatus = false;\n try {\n registrationStatus = await this.registerRP(urlPrefix, rpName, options);\n } catch (err) {\n // Autoregistration of ${provider} failed for some reason. We will not return this error\n // instead will return the initial response with 409 status code back to the user.\n // do nothing here as we are returning the original response at the end of this method.\n }\n\n if (registrationStatus) {\n // Retry the original request. We have to change the x-ms-client-request-id\n // otherwise Azure endpoint will return the initial 409 (cached) response.\n options.headers[\"x-ms-client-request-id\"] = utils.generateUuid();\n let finalRes: HttpOperationResponse;\n try {\n finalRes = await utils.dispatchRequest(options);\n } catch (err) {\n return Promise.reject(err);\n }\n return Promise.resolve(finalRes);\n }\n }\n return Promise.resolve(operationResponse);\n }\n\n /**\n * Reuses the headers of the original request and url (if specified).\n * @param {WebResource} originalRequest The original request\n * @param {boolean} reuseUrlToo Should the url from the original request be reused as well. Default false.\n * @returns {object} reqOptions - A new request object with desired headers.\n */\n getRequestEssentials(originalRequest: WebResource, reuseUrlToo = false): any {\n const reqOptions: any = {\n headers: {}\n };\n if (reuseUrlToo) {\n reqOptions.url = originalRequest.url;\n }\n\n // Copy over the original request headers. This will get us the auth token and other useful stuff from\n // the original request header. Thus making it easier to make requests from this filter.\n for (const h in originalRequest.headers) {\n reqOptions.headers[h] = originalRequest.headers[h];\n }\n // We have to change the x-ms-client-request-id otherwise Azure endpoint\n // will return the initial 409 (cached) response.\n reqOptions.headers[\"x-ms-client-request-id\"] = utils.generateUuid();\n\n // Set content-type to application/json\n reqOptions.headers[\"Content-Type\"] = \"application/json; charset=utf-8\";\n\n return reqOptions;\n }\n\n /**\n * Validates the error code and message associated with 409 response status code. If it matches to that of\n * RP not registered then it returns the name of the RP else returns undefined.\n * @param {string} body - The response body received after making the original request.\n * @returns {string} result The name of the RP if condition is satisfied else undefined.\n */\n checkRPNotRegisteredError(body: string): string {\n let result, responseBody;\n if (body) {\n try {\n responseBody = JSON.parse(body);\n } catch (err) {\n // do nothing;\n }\n if (responseBody && responseBody.error && responseBody.error.message &&\n responseBody.error.code && responseBody.error.code === \"MissingSubscriptionRegistration\") {\n const matchRes = responseBody.error.message.match(/.*'(.*)'/i);\n if (matchRes) {\n result = matchRes.pop();\n }\n }\n }\n return result;\n }\n\n /**\n * Extracts the first part of the URL, just after subscription:\n * https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/\n * @param {string} url - The original request url\n * @returns {string} urlPrefix The url prefix as explained above.\n */\n extractSubscriptionUrl(url: string): string {\n let result;\n const matchRes = url.match(/.*\\/subscriptions\\/[a-f0-9-]+\\//ig);\n if (matchRes && matchRes[0]) {\n result = matchRes[0];\n } else {\n throw new Error(`Unable to extract subscriptionId from the given url - ${url}.`);\n }\n return result;\n }\n\n /**\n * Registers the given provider.\n * @param {string} urlPrefix - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/\n * @param {string} provider - The provider name to be registered.\n * @param {object} originalRequest - The original request sent by the user that returned a 409 response\n * with a message that the provider is not registered.\n * @param {registrationCallback} callback - The callback that handles the RP registration\n */\n async registerRP(urlPrefix: string, provider: string, originalRequest: WebResource): Promise<boolean> {\n const postUrl = `${urlPrefix}providers/${provider}/register?api-version=2016-02-01`;\n const getUrl = `${urlPrefix}providers/${provider}?api-version=2016-02-01`;\n const reqOptions = this.getRequestEssentials(originalRequest);\n reqOptions.method = \"POST\";\n reqOptions.url = postUrl;\n let res: HttpOperationResponse;\n try {\n res = await utils.dispatchRequest(reqOptions);\n } catch (err) {\n return Promise.reject(err);\n }\n if (res.response.status !== 200) {\n return Promise.reject(new Error(`Autoregistration of ${provider} failed. Please try registering manually.`));\n }\n let statusRes = false;\n try {\n statusRes = await this.getRegistrationStatus(getUrl, originalRequest);\n } catch (err) {\n return Promise.reject(err);\n }\n return Promise.resolve(statusRes);\n }\n\n /**\n * Polls the registration status of the provider that was registered. Polling happens at an interval of 30 seconds.\n * Polling will happen till the registrationState property of the response body is \"Registered\".\n * @param {string} url - The request url for polling\n * @param {object} originalRequest - The original request sent by the user that returned a 409 response\n * with a message that the provider is not registered.\n * @returns {Promise<boolean>} promise - True if RP Registration is successful.\n */\n async getRegistrationStatus(url: string, originalRequest: WebResource): Promise<boolean> {\n const reqOptions: any = this.getRequestEssentials(originalRequest);\n let res: HttpOperationResponse;\n let result = false;\n reqOptions.url = url;\n reqOptions.method = \"GET\";\n try {\n res = await utils.dispatchRequest(reqOptions);\n } catch (err) {\n return Promise.reject(err);\n }\n const obj = (res.bodyAsJson as any);\n if (res.bodyAsJson && obj.registrationState && obj.registrationState === \"Registered\") {\n result = true;\n } else {\n setTimeout(() => { return this.getRegistrationStatus(url, originalRequest); }, retryTimeout * 1000);\n }\n return Promise.resolve(result);\n }\n}\n\n\n// WEBPACK FOOTER //\n// ./lib/filters/rpRegistrationFilter.ts","exports.endianness = function () { return 'LE' };\n\nexports.hostname = function () {\n if (typeof location !== 'undefined') {\n return location.hostname\n }\n else return '';\n};\n\nexports.loadavg = function () { return [] };\n\nexports.uptime = function () { return 0 };\n\nexports.freemem = function () {\n return Number.MAX_VALUE;\n};\n\nexports.totalmem = function () {\n return Number.MAX_VALUE;\n};\n\nexports.cpus = function () { return [] };\n\nexports.type = function () { return 'Browser' };\n\nexports.release = function () {\n if (typeof navigator !== 'undefined') {\n return navigator.appVersion;\n }\n return '';\n};\n\nexports.networkInterfaces\n= exports.getNetworkInterfaces\n= function () { return {} };\n\nexports.arch = function () { return 'javascript' };\n\nexports.platform = function () { return 'browser' };\n\nexports.tmpdir = exports.tmpDir = function () {\n return '/tmp';\n};\n\nexports.EOL = '\\n';\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/os-browserify/browser.js\n// module id = 32\n// module chunks = 0","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License. See License.txt in the project root for license information.\n\nimport { BaseFilter } from \"./baseFilter\";\nimport { HttpOperationResponse } from \"../httpOperationResponse\";\n\nexport class LogFilter extends BaseFilter {\n\n logger?: any;\n\n constructor(logger: any = console.log) {\n super();\n this.logger = logger;\n }\n\n after(operationResponse: HttpOperationResponse): Promise<HttpOperationResponse> {\n const self = this;\n self.logger(`>> Request: ${JSON.stringify(operationResponse.request, undefined, 2)}`);\n self.logger(`>> Response status code: ${operationResponse.response.status}`);\n const responseBody = operationResponse.bodyAsText;\n self.logger(`>> Body: ${responseBody}`);\n return Promise.resolve(operationResponse);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./lib/filters/logFilter.ts","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License. See License.txt in the project root for license information.\n\nimport { Constants } from \"../util/constants\";\nimport { WebResource } from \"../webResource\";\nimport { ServiceClientCredentials } from \"./serviceClientCredentials\";\n\nconst HeaderConstants = Constants.HeaderConstants;\nconst DEFAULT_AUTHORIZATION_SCHEME = \"Bearer\";\n\n/**\n * Creates a new TokenCredentials object.\n *\n * @constructor\n * @param {string} token The token.\n * @param {string} authorizationScheme The authorization scheme.\n */\nexport class TokenCredentials implements ServiceClientCredentials {\n token: string;\n authorizationScheme: string = DEFAULT_AUTHORIZATION_SCHEME;\n\n constructor(token: string, authorizationScheme: string = DEFAULT_AUTHORIZATION_SCHEME) {\n if (!token) {\n throw new Error(\"token cannot be null or undefined.\");\n }\n this.token = token;\n this.authorizationScheme = authorizationScheme;\n }\n\n /**\n * Signs a request with the Authentication header.\n *\n * @param {WebResource} The WebResource to be signed.\n * @return {Promise<WebResource>} The signed request object.\n */\n signRequest(webResource: WebResource) {\n if (!webResource.headers) webResource.headers = {};\n webResource.headers[HeaderConstants.AUTHORIZATION] = `${this.authorizationScheme} ${this.token}`;\n return Promise.resolve(webResource);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./lib/credentials/tokenCredentials.ts","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License. See License.txt in the project root for license information.\n\nimport { Constants } from \"../util/constants\";\nimport { WebResource } from \"../webResource\";\nimport { ServiceClientCredentials } from \"./serviceClientCredentials\";\nconst HeaderConstants = Constants.HeaderConstants;\nconst DEFAULT_AUTHORIZATION_SCHEME = \"Basic\";\n\n/**\n * Creates a new BasicAuthenticationCredentials object.\n *\n * @constructor\n * @param {string} userName User name.\n * @param {string} password Password.\n * @param {string} [authorizationScheme] The authorization scheme.\n */\nexport class BasicAuthenticationCredentials implements ServiceClientCredentials {\n userName: string;\n password: string;\n authorizationScheme: string = DEFAULT_AUTHORIZATION_SCHEME;\n constructor(userName: string, password: string, authorizationScheme: string = DEFAULT_AUTHORIZATION_SCHEME) {\n if (userName === null || userName === undefined || typeof userName.valueOf() !== \"string\") {\n throw new Error(\"userName cannot be null or undefined and must be of type string.\");\n }\n if (password === null || password === undefined || typeof password.valueOf() !== \"string\") {\n throw new Error(\"password cannot be null or undefined and must be of type string.\");\n }\n this.userName = userName;\n this.password = password;\n this.authorizationScheme = authorizationScheme;\n }\n\n /**\n * Signs a request with the Authentication header.\n *\n * @param {WebResource} The WebResource to be signed.\n * @returns {Promise<WebResource>} - The signed request object.\n */\n signRequest(webResource: WebResource) {\n const credentials = `${this.userName}:${this.password}`;\n const encodedCredentials = `${this.authorizationScheme} ${Buffer.from(credentials).toString(\"base64\")}`;\n if (!webResource.headers) webResource.headers = {};\n webResource.headers[HeaderConstants.AUTHORIZATION] = encodedCredentials;\n return Promise.resolve(webResource);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./lib/credentials/basicAuthenticationCredentials.ts","// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License. See License.txt in the project root for license information.\n\nimport { WebResource } from \"../webResource\";\nimport { ServiceClientCredentials } from \"./serviceClientCredentials\";\n\n/**\n * @interface ApiKeyCredentialOptions\n * Describes the options to be provided while creating an instance of ApiKeyCredentials\n */\nexport interface ApiKeyCredentialOptions {\n /**\n * @property {object} [inHeader] A key value pair of the header parameters that need to be applied to the request.\n */\n inHeader?: { [x: string]: any };\n /**\n * @property {object} [inQuery] A key value pair of the query parameters that need to be applied to the request.\n */\n inQuery?: { [x: string]: any };\n}\n\n/**\n * Authenticates to a service using an API key.\n */\nexport class ApiKeyCredentials implements ServiceClientCredentials {\n private readonly inHeader?: { [x: string]: any };\n private readonly inQuery?: { [x: string]: any };\n\n /**\n * @constructor\n * @param {object} options Specifies the options to be provided for auth. Either header or query needs to be provided.\n * @param {object} [inHeader] A key value pair of the header parameters that need to be applied to the request.\n * @param {object} [inQuery] A key value pair of the query parameters that need to be applied to the request.\n */\n constructor(options: ApiKeyCredentialOptions) {\n if (!options || (options && !options.inHeader && !options.inQuery)) {\n throw new Error(`options cannot be null or undefined. Either \"inHeader\" or \"inQuery\" property of the options object needs to be provided.`);\n }\n this.inHeader = options.inHeader;\n this.inQuery = options.inQuery;\n }\n\n /**\n * Signs a request with the values provided in the inHeader and inQuery parameter.\n *\n * @param {WebResource} The WebResource to be signed.\n * @returns {Promise<WebResource>} - The signed request object.\n */\n signRequest(webResource: WebResource): Promise<WebResource> {\n if (!webResource) {\n return Promise.reject(new Error(`webResource cannot be null or undefined and must be of type \"object\".`));\n }\n\n if (this.inHeader) {\n if (!webResource.headers) {\n webResource.headers = {};\n }\n Object.assign(webResource.headers, this.inHeader);\n }\n\n if (this.inQuery) {\n if (!webResource.url) {\n return Promise.reject(new Error(`url cannot be null in the request object.`));\n }\n if (webResource.url.indexOf(\"?\") < 0) {\n webResource.url += \"?\";\n }\n for (const key in this.inQuery) {\n if (!webResource.url.endsWith(\"?\")) {\n webResource.url += \"&\";\n }\n webResource.url += `${key}=${this.inQuery[key]}`;\n }\n }\n\n return Promise.resolve(webResource);\n }\n}\n\n\n// WEBPACK FOOTER //\n// ./lib/credentials/apiKeyCredentials.ts"],"sourceRoot":""} |