{"version":3,"file":"main.js","mappings":";;;;;;;;;;;;;;;AACuD;;;AAEvD,MAAM,MAAM,GAAW;IACrB;QACE,IAAI,EAAE,EAAE;QACR,UAAU,EAAE,MAAM;QAClB,uBAAuB;QACvB,SAAS,EAAE,MAAM;KAClB;CACF,CAAC;AAEF,MAAM,QAAQ,GAAG,MAAM,KAAK,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC;AAC3D,wEAAwE;AAUjE,MAAM,gBAAgB;;gFAAhB,gBAAgB;6GAAhB,gBAAgB;iHAPlB;YACP,sIAAsI;YACtI,sDAAsD;YACtD,iEAAoB,CAAC,MAAM,CAAC;SAC7B,EACS,yDAAY;mIAEX,gBAAgB,oFAFjB,yDAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACpBiG;AAExF;AAEG;AAGwB;AAGgB;AACZ;AASF;AAE5B;;;;;;;;;;;;;;;ICflB,yEAA0D;IAAA,wDAAsB;IAAA,6DAAI;;;IAA1B,2DAAsB;IAAtB,2FAAsB;;;IAiChE,sEAA0M;;;IAA1J,qKAAoC;;;IACzD,wDAAS;;;IAAT,8EAAS;;;IAOxC,0EAAgD;IAAA,wDAAoC;IAAA,6DAAK;;;IAAzC,2DAAoC;IAApC,kHAAoC;;;IACpF,0EAAwE;IAAA,wDAA8B;IAAA,6DAAK;;;IAAnC,2DAA8B;IAA9B,4GAA8B;;;;;IAYtG,0EAAyC;IACC,kSAAS,eAAO,IAAC;IAAC,kEAAM;IAAA,6DAAI;;IAA9C,2DAAiB;IAAjB,+IAAiB;;;;IAEzC,0EAAwC;IACE,kSAAS,gBAAQ,IAAC;IAAC,mEAAO;IAAA,6DAAI;;IAAhD,2DAAiB;IAAjB,+IAAiB;;;;IAQjE,2EAAyF;IACtC,wSAAS,eAAO,IAAC;IAAC,kEAAM;IAAA,6DAAS;;;IA8BhF,2EAAgD;IACzC,wDAA8B;IAAA,6DAAI;IACrC,qEAAG;IAAA,wDAA6B;IAAA,6DAAI;IACpC,qEAAG;IAAA,wDAA+B;IAAA,6DAAI;IACtC,qEAAG;IAAA,wDAA2B;IAAA,6DAAI;;;IAH/B,2DAA8B;IAA9B,+FAA8B;IAC9B,2DAA6B;IAA7B,4GAA6B;IAC7B,2DAA+B;IAA/B,8GAA+B;IAC/B,2DAA2B;IAA3B,0GAA2B;;;;IA5F1C,uEAA4B;IAmBJ,uEAAyC;IAC7C,6DAAS;IACT,2EAAsF;IAG1E,iHAA0M;IAC1M,8MAAkD;IACtD,6DAAI;IAEJ,qFAA2H;IACnI,6DAAM;IACN,4EAAsD;IAE9C,iHAAyF;IACzF,iHAA2G;IAY3G,iHAEK;IACL,iHAEK;IACT,6DAAK;IAIzB,0EAAyB;IAEzB,mHAEM;IAEN,4EAAuC;IA0BpB,oTAAY,sCAA8B,IAAC;IAAC,6DAAgB;IAC3E,mHAKM;IACV,6DAAM;IAIN,4EAAwG;IAGhG,uEAAgG;IACpG,6DAAO;IAgEP,2EAAqD;IAEnB,yDAAmD;;IAAA,6DAAO;IAG5F,2EAAqD;IAEnB,yDAAuB;IAAA,6DAAO;;;;IAtK6C,2DAAyB;IAAzB,0FAAyB;IAiBxG,2DAAuB;IAAvB,yFAAuB;IAId,2DAAyB;IAAzB,0FAAyB;IAIvC,2DAAgB;IAAhB,oFAAgB;IAChB,2DAAwC;IAAxC,mHAAwC;IAYxC,2DAAiB;IAAjB,qFAAiB;IAGjB,2DAAgB;IAAhB,oFAAgB;IASvC,2DAAiB;IAAjB,qFAAiB;IA+Bb,2DAA0B;IAA1B,8FAA0B;IAU0C,2DAAyB;IAAzB,0FAAyB;IAsEjE,2DAAmD;IAAnD,+LAAmD;IAKnD,2DAAuB;IAAvB,qGAAuB;;AD/J1D,MAAM,YAAY;IA0DvB,YACU,YAA0B,EAC3B,WAAwB,EACxB,WAAwB,EACxB,oBAA0C,EAC1C,aAA4B,EAC3B,YAA0B,EAC1B,aAA4B,EAC5B,MAAc,EACd,cAA8B;QAR9B,iBAAY,GAAZ,YAAY,CAAc;QAC3B,gBAAW,GAAX,WAAW,CAAa;QACxB,gBAAW,GAAX,WAAW,CAAa;QACxB,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,kBAAa,GAAb,aAAa,CAAe;QAC3B,iBAAY,GAAZ,YAAY,CAAc;QAC1B,kBAAa,GAAb,aAAa,CAAe;QAC5B,WAAM,GAAN,MAAM,CAAQ;QACd,mBAAc,GAAd,cAAc,CAAgB;QAjExC,mBAAc,GAAG,KAAK,CAAC;QAIvB,mBAAc,GAAG,qEAAc,CAAC;QAChC,eAAU,GAAG,KAAK,CAAC;QACnB,YAAO,GAAG,KAAK,CAAC;QAChB,iBAAY,GAAG,CAAC,CAAC;QACjB,wBAAmB,GAAG,KAAK,CAAC;QAE5B,kBAAa,GAAG;YACd,YAAY,EAAE;gBACZ,KAAK,EAAE,kEAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,8BAA8B;aAC3B;YACd,YAAY,EAAE;gBACZ,KAAK,EAAE,kEAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,oCAAoC;aACjC;YACd,cAAc,EAAE;gBACd,KAAK,EAAE,kEAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,mCAAmC;aAChC;YACd,aAAa,EAAE;gBACb,KAAK,EAAE,kEAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,8BAA8B;aAC3B;YACd,eAAe,EAAE;gBACf,KAAK,EAAE,kEAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,uCAAuC;aACpC;YACd,cAAc,EAAE;gBACd,KAAK,EAAE,oEAAmB;gBAC1B,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,+BAA+B;aAC5B;SACf,CAAC;QAEF,oBAAe,GAAG,IAAI,+CAAY,EAAE,CAAC;QACrC,mBAAc,GAAG,IAAI,+CAAY,EAAE,CAAC;QACpC,oBAAe,GAAG,IAAI,+CAAY,EAAE,CAAC;QACrC,qBAAgB,GAAG,IAAI,+CAAY,EAAE,CAAC;QACtC,kBAAa,GAAG,IAAI,+CAAY,EAAE,CAAC;QACnC,kBAAa,GAAG,IAAI,+CAAY,EAAE,CAAC;QACnC,qBAAgB,GAAG,IAAI,+CAAY,EAAE,CAAC;QAEtC,kBAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE3B,YAAO,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;QACnC,SAAI,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAanE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAC1B,CAAC,KAAkB,EAAE,EAAE;YACrB,IAAI,KAAK,YAAY,6DAAe,EAAE;gBACpC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;aACrB;YACD,IAAI,KAAK,YAAY,2DAAa,IAAI,KAAK,YAAY,8DAAgB,IAAI,KAAK,YAAY,6DAAe,EAAE;gBAC3G,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;aACtB;QACH,CAAC,CACF,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI;QACxC,oDAAoD;SACrD;aACA,SAAS,CACR,eAAe,CAAC,EAAE;YAChB,IAAI,CAAC,YAAY,GAAG,eAAe,CAAC;YACpC,IAAI,CAAC,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,YAAY,GAAG,aAAa,CAAC,kCAAkC,EAAE;gBACrG,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;gBAChC,MAAM,YAAY,GAAG,IAAI,4CAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,qBAAqB,CAAC,CAAC,CAAC;gBAC/E,YAAY,CAAC,IAAI,EAAE,CAAC;aACrB;YAAA,CAAC;YACF,IAAI,IAAI,CAAC,YAAY,GAAG,aAAa,CAAC,iCAAiC,EAAE;gBACvE,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC;aAClC;QACH,CAAC,CACF,CAAC;QAEF,IAAI,CAAC,gBAAgB,CAAC,GAAG,CACvB,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,IAAI;QACvC,2EAA2E;SAC9E,CAAC,SAAS,CAAE,CAAC,MAAM,EAAE,EAAE;YACpB,OAAO,CAAC,GAAG,CAAC,iBAAiB,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;YACjD,IAAI,MAAM,CAAC,SAAS,KAAK,iFAA+B,IAAI,MAAM,CAAC,SAAS,KAAK,yEAAuB,EAAE;gBACxG,2CAA2C;gBAC3C,kGAAkG;gBAClG,uEAAuE;gBACvE,KAAK;gBACL,uCAAuC;gBACvC,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC;aACnC;QACL,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAEH,IAAI,qBAAqB;QACvB,OAAO,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC;IAC9C,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC;IACtC,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC;IACvC,CAAC;IAED,QAAQ;QACN,IAAI,MAAM,KAAK,MAAM,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YAChD,eAAe;YACb,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,0EAA0E;SAC3G;aAAM;YACL,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;YAC5B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;YAC1C,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;YACtC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC;YAChD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,wBAAwB,CAAC,SAAS,CACvE,CAAC,CAAC,EAAE;gBACF,IAAI,CAAC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;gBACvD,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;YACtB,CAAC,CACF,CAAC;YACF,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,SAAS,CAC7D,CAAC,CAAC,EAAE;gBACF,IAAI,CAAC,IAAI,CAAC,oBAAoB,GAAG,CAAC,EAAE,SAAS,CAAC,CAAC;gBAC/C,IAAI,CAAC,EAAE;oBACL,yFAAyF;oBACzF,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;yBAClF,SAAS,CACR,CAAC,MAAc,EAAE,EAAE;wBACjB,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;oBACjD,CAAC,EACD,CAAC,GAAsB,EAAE,EAAE;wBACzB,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE,GAAG,CAAC,CAAC;oBACzE,CAAC,CACF,CAAC;oBACF,6BAA6B;oBAC7B,+DAA+D;oBAC/D,gBAAgB;oBAChB,mBAAmB;oBACnB,gDAAgD;oBAChD,SAAS;oBACT,oCAAoC;oBACpC,2CAA2C;oBAC3C,iFAAiF;oBACjF,QAAQ;oBACR,MAAM;oBACN,KAAK;oBACL,IAAI,CAAC,gBAAgB,CAAC,GAAG;oBACvB,iFAAiF;oBACjF,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,SAAS,CAC1E,CAAC,YAA0B,EAAE,EAAE;wBAC7B,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;wBACrD,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBAC7D,CAAC,EACD,CAAC,GAAsB,EAAE,EAAE;wBACzB,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE,GAAG,CAAC,CAAC;oBAC3E,CAAC,CACF,CACF,CAAC;oBACF,IAAI,CAAC,WAAW,CAAC,qBAAqB,EAAE,CAAC;iBAC1C;qBAAM;oBACL,IAAI,CAAC,IAAI,CAAC,oCAAoC,IAAI,CAAC,UAAU,EAAE,EAAE,kEAAgB,CAAC,CAAC;oBACnF,IAAI,IAAI,CAAC,UAAU,EAAE;wBACnB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,qEAAc,CAAC,8EAAuB,CAAC,CAAC,CAAC,CAAC;qBAC9E;iBACF;YACH,CAAC,EACD,GAAG,CAAC,EAAE;gBACJ,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;YACrE,CAAC,CACF,CAAC;YACF,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;SAC5B;IACH,CAAC;IAED,WAAW;QACT,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;QACnC,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;QAClC,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;QACnC,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC;QACpC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;QACjC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;QACjC,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC;IACpC,CAAC;IAEH,sBAAsB,CAAC,KAAU;QAC/B,IAAI,CAAC,aAAa,CAAC,aAAa,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC;IAC5D,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;IAC5B,CAAC;IAED,KAAK;QACH,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;IAED,SAAS,CAAC,KAAK;QACb,IAAI,CAAC,WAAW,CAAC,QAAQ,GAAG,KAAK,CAAC;IACpC,CAAC;IAED,mBAAmB;QACjB,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;QACjC,mCAAmC;IACrC,CAAC;IAED,sBAAsB,CAAC,eAAuB;QAC5C,OAAO,4CAAe,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC;IAChE,CAAC;IAED,0BAA0B,CAAC,eAAuB;QAChD,OAAO,eAAe,GAAG,CACrB,IAAI,CAAC,aAAa,CAAC,iCAAiC,GAAG,IAAI,CAAC,aAAa,CAAC,oCAAoC,CAC/G;YACD,CAAC,CAAC,sBAAsB;YACxB,CAAC,CAAC,sBAAsB,CAAC;IAC7B,CAAC;IAED,IAAI,kBAAkB;QACpB,OAAO,qCAAqC,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;IAC/F,CAAC;IAED,IAAI,kBAAkB;QACpB,IAAI,iBAAiB,GAAG,IAAI,CAAC;QAC7B,IAAI,IAAI,CAAC,YAAY,GAAG,CACtB,IAAI,CAAC,aAAa,CAAC,iCAAiC,GAAG,IAAI,CAAC,aAAa,CAAC,oCAAoC,CAC7G,EAAE;YACD,MAAM,eAAe,GAAG,IAAI,CAAC,aAAa,CAAC,iCAAiC,GAAG,IAAI,CAAC,YAAY,CAAC;YACjG,MAAM,sBAAsB,GAC1B,eAAe,GAAG,EAAE,CAAC,CAAC;gBACtB,IAAI,CAAC,sBAAsB,CAAC,eAAe,CAAC,CAAC,CAAC;gBAC9C,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,eAAe,CAAC,GAAG,UAAU,CAAC;YAC9C,iBAAiB;gBACf,2CAA2C,sBAAsB,EAAE,CAAC;SACvE;QACD,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAED,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC;IAC5C,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC;IAC1C,CAAC;;wEAxQU,YAAY;2GAAZ,YAAY;QC/BzB,0EAAwL;QAIlH,8EAAkB;QAAA,6DAAK;QAEjF,0EAAwB;QACjB,wDAAsB;QAAA,6DAAI;QAC7B,qGAAoF;QACxF,6DAAM;QACN,2EAA0B;QACwD,sIAAS,yBAAqB,IAAC;QAAC,4EAAe;QAAA,6DAAS;QACtI,8EAAgG;QAAnB,sIAAS,YAAQ,IAAC;QAAC,oEAAO;QAAA,6DAAS;QAKhI,8GAiLM;;QA/LgC,2DAAoD;QAApD,sHAAoD;QAIvE,2DAAsB;QAAtB,wFAAsB;QACrB,2DAAwB;QAAxB,yFAAwB;QAStC,2DAAoB;QAApB,qFAAoB;;;;;;;;;;;;;;;;;;;ACfgC;;AAGnD,MAAM,SAAS;IAGlB;QACI,gFAAgF;QAChF,gFAAgF;QAChF,IAAI,CAAC,YAAY,GAAG,yEAAkB,CAAC;IAC3C,CAAC;;kEAPQ,SAAS;0GAAT,SAAS,WAAT,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACLoC;AACqB;AAElC;AAC8B;AAC3B;AAEuF;AACxB;AAEtC;AAGL;AACJ;AAChE,4CAA4C;AAEG;AAEN;AACiB;AAEF;AACI;AACT;AACS;AACZ;AACe;AACZ;AACQ;AACA;AACL;AACH;AACe;;;AA6F3D,MAAM,SAAS;;kEAAT,SAAS;uGAAT,SAAS,cAHR,wDAAY,EAAE,uEAAqB;4GAxBpC;QACT,kDAAS;QACT,aAAa;QACb;YACE,OAAO,EAAE,oEAAiB;YAC1B,QAAQ,EAAE,6EAAkB;YAC5B,KAAK,EAAE,IAAI;SACZ;QACD;YACE,OAAO,EAAE,oEAAiB;YAC1B,QAAQ,EAAE,yEAAkB;YAC5B,KAAK,EAAE,IAAI;SACZ;QACD;YACE,OAAO,EAAE,oEAAiB;YAC1B,QAAQ,EAAE,iEAAe;YACzB,6BAA6B;YAC7B,KAAK,EAAE,IAAI;SACZ;QACD,6DAAW;QACX,2DAAS;QACT,sEAAoB;QACpB,EAAC,OAAO,EAAE,2DAAa,EAAE,QAAQ,EAAE,kFAAsB,EAAC;KAC3D,YAnFQ;YACP,yGAAyG;YACzG,oEAAkB,CAChB,IAAI,yEAAuB,CACzB;gBACE,IAAI,EAAE;oBACJ,QAAQ,EAAE,2EAAoB;oBAC9B,SAAS,EAAE,8BAA8B,GAAG,2EAAoB;oBAChE,sDAAsD;oBACtD,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM;oBACnC,qBAAqB,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM;iBAC9C;gBACD,KAAK,EAAE;oBACL,aAAa,EAAE,mFAAiC;oBAChD,sBAAsB,EAAE,KAAK;iBAC9B;gBACD,MAAM,EAAE;oBACN,aAAa,EAAE;wBACb,cAAc,EAAE,GAAG,EAAE,GAAE,CAAC;wBACxB,QAAQ,EAAE,+DAAa;wBACvB,iBAAiB,EAAE,KAAK;qBACzB;iBACF;aACF,CACF,EACD;gBACE,yEAAyE;gBACzE,eAAe,EAAE,uEAAqB,EAAE,2BAA2B;aACpE,EACD;gBACE,+EAA+E;gBAC/E,eAAe,EAAE,uEAAqB;gBACtC,oBAAoB,EAAE,IAAI,GAAG,CAAC;oBAC1B,CAAC,qCAAqC,EAAE,CAAC,sCAAsC,CAAC,CAAC;oBACjF,mEAAmE;oBACnE,yEAAyE;oBACzE,CAAC,yEAAkB,GAAG,IAAI,EAAE,CAAC,2EAAoB,GAAG,WAAW,CAAC,CAAC;oBACjE,CAAC,yBAAyB,EAAE,IAAI,CAAC;iBAClC,CACF;aACF,CACF;YACD,qEAAc;YACd,qEAAa;YACb,0FAAuB;YACvB,4DAAW;YACX,qEAAc;YACd,0DAAU;YACV,yEAAe;YACf,wDAAW;YACX,mEAAgB;YAChB,wDAAwD;YACxD,qEAAa;YACb,gEAAY;YACZ,6DAAW;YACX,6DAAW;YACX,qEAAa;YACb,4EAAgB;YAChB,iEAAgB,EAAE,iFAAiF;SACpG;oIA4BU,SAAS,mBAzFlB,wDAAY,2EA4CZ,qEAAc;QACd,qEAAa;QACb,0FAAuB;QACvB,4DAAW;QACX,qEAAc;QACd,0DAAU;QACV,yEAAe;QACf,wDAAW;QACX,mEAAgB;QAChB,wDAAwD;QACxD,qEAAa;QACb,gEAAY;QACZ,6DAAW;QACX,6DAAW;QACX,qEAAa;QACb,4EAAgB;QAChB,iEAAgB;;;;;;;;;;;;;;;;;;AChGmC;;;AAEvD,MAAM,MAAM,GAAW,EAAE,CAAC;AAMnB,MAAM,qBAAqB;;0FAArB,qBAAqB;kHAArB,qBAAqB;sHAHvB,CAAC,kEAAqB,CAAC,MAAM,CAAC,CAAC,EAC9B,yDAAY;mIAEX,qBAAqB,oFAFtB,yDAAY;;;;;;;;;;;;;;;;;;;;;;;;ACNgC;AAIqB;AAIvC;;;;;;;;;ICGlC,0EAAwD;IACxB,sEAAwC;IACpE,yJACF;IAAA,4DAAM;;;IAGN,0EAAiD;IACjB,sEAAwC;IAAC,uDAAwB;IAAA,4DAAM;;;IAA9B,0DAAwB;IAAxB,sGAAwB;;;;;IAY3F,yEAMyC;IAAvC,gZAAS,yCAA4B,IAAC;IACtC,yEAAgB;IAAA,uDAAkC;IAAA,4DAAK;IACvD,qEAAI;IAAA,uDAAoB;IAAA,4DAAK;IAE7B,qEAAI;IAAA,uDAAyB;IAAA,4DAAK;;;;IATlC,ogBAIE;IAEc,0DAAkC;IAAlC,kGAAkC;IAC9C,0DAAoB;IAApB,oFAAoB;IAEpB,0DAAyB;IAAzB,yFAAyB;;;IAvBrC,mIAEM;IACN,0EAA8B;IAIO,wEAAa;IAAA,4DAAK;IAC/C,yEAA6B;IAAA,oEAAS;IAAA,4DAAK;IAC3C,yEAA6B;IAAA,mFAAuB;IAAA,4DAAK;IAG7D,yEAAO;IACL,mIAWK;IACP,4DAAQ;;;IAzBN,+FAA4B;IAIF,0DAA6C;IAA7C,wGAA6C;IAS9C,2DAAiB;IAAjB,wFAAiB;;ADf/C,MAAM,uBAAuB;IA8BlC,YACU,WAAwB,EACxB,YAA0B,EAC1B,eAAgC,EAChC,aAA4B;QAH5B,gBAAW,GAAX,WAAW,CAAa;QACxB,iBAAY,GAAZ,YAAY,CAAc;QAC1B,oBAAe,GAAf,eAAe,CAAiB;QAChC,kBAAa,GAAb,aAAa,CAAe;QA5B7B,kBAAa,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QAChD,iBAAY,GAAG,KAAK,CAAC;QAE9B,iBAAY,GAAoB,EAAE,CAAC;QAInC,yBAAoB,GAAG,IAAI,uDAAW,CACpC;YACE,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,KAAK;SAChB,CACF,CAAC;QAEF,kBAAa,GAAG;YACd,gBAAgB,EAAE;gBAChB,KAAK,EAAE,kEAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,iCAAiC;aAC9B;SACf,CAAC;QAEF,SAAI,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAOhE,CAAC;IAEP,WAAW,CAAC,OAAsB;QAChC,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE;YAAE,OAAO;SAAE;QACnE,IAAI,IAAI,CAAC,eAAe,KAAK,IAAI,CAAC,UAAU,EAAE;YAAE,OAAO;SAAE;QACzD,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE;YAC/B,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,CAAC;SACrC;aAAM;YACL,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,CAAC;SACpC;QAAA,CAAC;QACF,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,UAAU,CAAC;QACvC,IAAI,CAAC,eAAe,CAAC,4BAA4B,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,SAAS,CAAC;aAChG,SAAS,CACR,CAAC,EAAmB,EAAE,EAAE;YACtB,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC,IAAI,CACzB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBACP,OAAO,CAAC,CAAC,qBAAqB,CAAC,iBAAiB,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,qBAAqB,CAAC,iBAAiB,EAAE,CAAC;YAC/G,CAAC,CACF,CAAC;QACJ,CAAC,EACD,CAAC,GAAsB,EAAE,EAAE;YACzB,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;QACzE,CAAC,EACD,GAAG,EAAE;YACH,IAAI,CAAC,IAAI,CAAC,wBAAwB,IAAI,CAAC,UAAU,QAAQ,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,EAAE,SAAS,CAAC,CAAC;YACrG,MAAM,uBAAuB,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAE,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,UAAU,KAAK,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAE,CAAC;YAC7H,IAAI,uBAAuB,EAAE;gBAAC,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,uBAAuB,CAAC,WAAW,CAAC,CAAC;aAAE;QAC1G,CAAC,CACF,CAAC;IACJ,CAAC;IAED,eAAe,CAAC,GAAW,EAAE,QAAkB;QAC7C,IAAI,CAAC,IAAI,CAAC,2BAA2B,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,qBAAqB,EAAE,EAAE,SAAS,CAAC,CAAC;QACrI,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE;YAAE,OAAO;SAAE;QAC5C,IAAI,IAAI,CAAC,gBAAgB,CAAC,UAAU,KAAK,QAAQ,CAAC,UAAU,EAAE;YAC5D,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,CAAC;SAC9C;aAAM;YACL,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC;gBAC5C,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,YAAY,EAAE,QAAQ,CAAC,YAAY;gBACnC,mBAAmB,EAAE,QAAQ,CAAC,mBAAmB;gBACjD,WAAW,EAAE,QAAQ,CAAC,WAAW,IAAI,IAAI;gBACzC,qBAAqB,EAAE,QAAQ,CAAC,qBAAqB;gBACrD,WAAW,EAAE,QAAQ,CAAC,WAAW,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC,sBAAsB;aAC7E,CAAC;YACF,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;SACpD;QACD,IAAI,QAAQ,CAAC,UAAU,KAAK,CAAC,IAAI,CAAC,gBAAgB,IAAI,IAAI,+CAAQ,EAAE,CAAC,CAAC,UAAU,EAAE;YAChF,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,cAAc,EAAE,CAAC;SACvD;IACL,CAAC;;8FAvFY,uBAAuB;qHAAvB,uBAAuB;QChBpC,yEAAkB;QAGK,+EAAoB;QAAA,4DAAO;QAC5C,0EAAuC;QAEnC,sEAA4G;QAE5G,2EAAwD;QAAA,gGAAqC;QAAA,4DAAQ;QAI3G,qHAIM;QACN,kNA6Bc;QAChB,4DAAM;;;QAzCyE,0DAAoC;QAApC,iGAAoC;QAM3G,0DAAoB;QAApB,kFAAoB;;;;;;;;;;;;;;;;;;;;;;;ACXiB;AACmB;AAEA;AACI;AACjB;;AAa9C,MAAM,cAAc;;4EAAd,cAAc;2GAAd,cAAc;gHAFd,CAAC,8DAAe,CAAC,YARnB;YACP,yDAAY;YACZ,uDAAW;YACX,+DAAmB;YACnB,2EAAqB;SACtB;mIAKU,cAAc,mBAJV,+EAAuB,aALpC,yDAAY;QACZ,uDAAW;QACX,+DAAmB;QACnB,2EAAqB,aAGb,+EAAuB;;;;;;;;;;;;;;;;;;;;;;ACbW;AACG;AAIY;;;AAE7D,MAAM,YAAY,GAAG,yEAAkB,CAAC;AAGjC,MAAM,eAAe;IAE1B,YAAqB,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;IAAI,CAAC;IAE1C,WAAW,CAAC,UAAkB;QAC5B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,GAAG,YAAY,aAAa,UAAU,EAAE,CACvC,CAAC,IAAI,CACJ,mDAAG,CAAE,IAAI,CAAC,EAAE,GAAG,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAE,EACjD,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACN,CAAC;IAED,4BAA4B,CAAC,QAAgB,EAAE,OAAe;QAC5D,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,GAAG,YAAY,cAAc,QAAQ,aAAa,OAAO,YAAY,CACpE,CAAC,IAAI,CACJ,mDAAG,CAAC,IAAI,CAAC,EAAE,GAAE,OAAO,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EACtD,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACN,CAAC;;8EApBU,eAAe;gHAAf,eAAe,WAAf,eAAe;;;;;;;;;;;;;;;;ACbrB,MAAM,QAAQ;CAUpB;;;;;;;;;;;;;;;;;;;;;;ACLmC;;;;;;;ICmCJ,6EAA8G;IAAA,uDAAW;IAAA,4DAAS;;;IAA3C,kFAAsB;IAAC,0DAAW;IAAX,2EAAW;;;;IAjBzI,0EAAmF;IAGxE,uDAAe;IAAA,4DAAI;IAE1B,0EAAmD;IAGwC,0VAAU,4BAAkB,IAAC;IAAhH,4DAA6I;IAGrJ,0EAAuC;IAKQ,8EAAkB;IAAA,4DAAS;IAC9D,kIAAkI;IACtI,4DAAS;IAGjB,2EAAuC;IAE/B,wEAAyG;IAC7G,4DAAM;;;;;IArBH,0DAAe;IAAf,+EAAe;IAES,0DAAmB;IAAnB,+EAAmB;IAM/B,0DAAmB;IAAnB,+EAAmB;IAMH,0DAAgC;IAAhC,0GAAgC;IAIhD,0DAAmB;IAAnB,+EAAmB;;;IAO9C,0EAAgD;IAQpB,sEAAW;IAAA,4DAAM;IACvC,0EAAuB;IAAA,uDAAqB;;IAAA,4DAAM;;;IAA3B,0DAAqB;IAArB,mJAAqB;;AD/CvD,MAAM,sBAAsB;IASjC,YAAoB,EAAe,EAAU,YAA0B,EAAS,WAAwB;QAApF,OAAE,GAAF,EAAE,CAAa;QAAU,iBAAY,GAAZ,YAAY,CAAc;QAAS,gBAAW,GAAX,WAAW,CAAa;QAP/F,qBAAgB,GAA8B,EAAE,CAAC;QAGlD,YAAO,GAAiB,IAAI,8CAAY,EAAE,CAAC;QAEnD,eAAU,GAAG,EAAE;QAGb,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,OAAO,CAAC,GAAG,CACd,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,SAAS,CAC7C,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,GAAG,EAAE,CAC3B,CACF;IACH,CAAC;IAED,WAAW;QACT,uDAAuD;QACvD,+BAA+B;QAC/B,oCAAoC;QACpC,iDAAiD;QACjD,4BAA4B;QAC5B,iFAAiF;QACjF,+EAA+E;QAC/E,cAAc;QACd,YAAY;QACZ,UAAU;QACV,8BAA8B;QAC9B,YAAY;QACZ,2CAA2C;QAC3C,qCAAqC;QACrC,mDAAmD;QACnD,gEAAgE;QAChE,8DAA8D;QAC9D,YAAY;QACZ,UAAU;QACV,QAAQ;QACR,MAAM;QACN,KAAK;IACP,CAAC;IAED,WAAW;QACT,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IAC7B,CAAC;IAED,UAAU;QACR,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAE,EAAC,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,EAAC,CAAE,CAAC;IAClE,CAAC;IAED,eAAe,CAAC,UAAkB;QAChC,6GAA6G;QAC7G,MAAM,EAAE,GAAgB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAgB,CAAC;QAE1E,IAAI,EAAE,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE;YACpC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;YAC1B,EAAE,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,MAAM,EAAE,CAAC;SACvC;aAAM;YACL,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC;YAC3B,EAAE,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,OAAO,EAAE,CAAC;SACxC;QAED,qGAAqG;QACrG,8EAA8E;QAC9E,WAAW;QACX,6EAA6E;QAC7E,IAAI;IACN,CAAC;IAED,SAAS,CAAC,KAAU,EAAE,IAAS;QAC7B,OAAO,KAAK,CAAC;IACf,CAAC;;4FA3EU,sBAAsB;oHAAtB,sBAAsB;QCbnC,yEAAkB;QASM,wEACJ;QAAA,4DAAM;QACN,yEAA+B;QAC3B,qEACJ;QAAA,4DAAM;QACN,yEAAmB;QACf,oEACJ;QAAA,4DAAM;QACN,0EAAmB;QACf,iFACJ;QAAA,4DAAM;QAIV,qHA0BM;QACV,4DAAM;QACN,qHAWM;QACV,4DAAO;;QA3DY,0DAAsB;QAAtB,mFAAsB;QAmBb,2DAAmB;QAAnB,uFAAmB;QA4BrC,0DAA0B;QAA1B,0FAA0B;;;;;;;;;;;;;;;;;;;;;;ACjDR;;;;;;IC6BxB,sEAAgD;IAEI,uDAAe;IAAA,4DAAM;IACjE,0EAA+C;IAAA,yEAAc;IAAA,4DAAM;IACnE,0EAAyE;IAAA,uDAAa;IAAA,4DAAM;IAC5F,0EAAoC;IAAA,uDAAqD;IAAA,4DAAM;IAEnG,0EAAiB;IAEN,wDAAyB;IAAA,4DAAI;;;;IAPQ,0DAAe;IAAf,+EAAe;IAExB,0DAAqC;IAArC,wGAAqC;IAAC,0DAAa;IAAb,6EAAa;IAClD,0DAAqD;IAArD,qHAAqD;IAIlF,0DAAyB;IAAzB,yFAAyB;;AD9B7C,MAAM,yBAAyB;IAMpC,YAAoB,YAA0B,EAAU,MAAc;QAAlD,iBAAY,GAAZ,YAAY,CAAc;QAAU,WAAM,GAAN,MAAM,CAAQ;QAJtE,YAAO,GAAiB,IAAI,8CAAY,EAAE,CAAC;QAC3C,aAAQ,GAAG,IAAI,IAAI,EAAE,CAAC;QACtB,gBAAW,GAAQ,EAAE;IAEqD,CAAC;IAE3E,QAAQ;QACN,IAAI,CAAC,OAAO,CAAC,GAAG,CACd,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,SAAS,CAC1C,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,GAAG,GAAG,CAC9B,CACF;IACH,CAAC;IAED,WAAW;QACT,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IAC7B,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACtH,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACtH,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACtH,CAAC;IAED,cAAc,CAAC,MAAc;QAC3B,IAAI,MAAM,KAAK,GAAG,EAAE;YAClB,OAAO,WAAW;SACnB;aAAM,IAAI,MAAM,KAAK,GAAG,EAAE;YACzB,OAAO,YAAY;SACpB;aAAM,IAAI,MAAM,KAAK,GAAG,EAAE;YACzB,OAAO,YAAY;SACpB;aAAM;YACL,OAAO,EAAE;SACV;IACH,CAAC;IAED,SAAS;QACP,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,yBAAyB,CAAC,CAAC;IACnD,CAAC;;kGA9CU,yBAAyB;uHAAzB,yBAAyB;QCTtC,yEAAkB;QAEa,2FAAgC;QAAA,4DAAK;QAC5D,yEAA6B;QAE4B,gEAAK;QAAA,4DAAM;QAC5D,yEAA6B;QAAA,uDAA2B;QAAA,4DAAM;QAC9D,0EAAiD;QAAA,qEAAS;QAAA,4DAAM;QAChE,0EAA6B;QAAA,wDAA6B;QAAA,4DAAM;QAChE,0EAAiD;QAAA,iEAAK;QAAA,4DAAM;QAC5D,0EAA6B;QAAA,wDAAiC;;QAAA,4DAAM;QAExE,0EAAiB;QACoC,oEAAQ;QAAA,4DAAM;QAC/D,0EAA6B;QAAA,wDAAuB;QAAA,4DAAM;QAC1D,0EAAiD;QAAA,oEAAQ;QAAA,4DAAM;QAC/D,0EAA6B;QAAA,wDAAuB;QAAA,4DAAM;QAC1D,0EAAiD;QAAA,0EAAc;QAAA,4DAAM;QACrE,0EAA6B;QAAA,wDAA4B;QAAA,4DAAM;QAEnE,0EAAsB;QAC2C,iEAAK;QAAA,4DAAM;QACxE,0EAA6D;QAAA,iEAAK;QAAA,4DAAM;QACxE,0EAA6D;QAAA,gEAAI;QAAA,4DAAM;QAE3E,2EAAsB;QAC6C,wDAAc;QAAA,4DAAM;QACnF,2EAAgE;QAAA,wDAAc;QAAA,4DAAM;QACpF,2EAAgE;QAAA,wDAAa;QAAA,4DAAM;QAEvF,yHAYM;QACN,0EAAsB;QACmB,8EAAkB;QAAA,4DAAM;QAC7D,2EAA8B;QAAA,wDAAiC;QAAA,4DAAM;QAEzE,0EAAsB;QACmB,6EAAiB;QAAA,4DAAM;QAC5D,2EAA6B;QAAA,wDAAqC;QAAA,4DAAM;QACxE,2EAAyC;QAAA,wDAAqC;QAAA,4DAAM;QACpF,2EAAyC;QAAA,wDAAuC;QAAA,4DAAM;QAE1F,2EAAsB;QAEwC,+EAAmB;QAAA,4DAAS;QAEtF,2EAAmB;QACsC,kJAAS,eAAW,IAAC;QAAC,gEAAI;QAAA,4DAAS;;QApD/D,0DAA2B;QAA3B,4HAA2B;QAE3B,0DAA6B;QAA7B,8HAA6B;QAE7B,0DAAiC;QAAjC,8JAAiC;QAIjC,0DAAuB;QAAvB,wHAAuB;QAEvB,0DAAuB;QAAvB,wFAAuB;QAEvB,0DAA4B;QAA5B,6FAA4B;QAQM,2DAAc;QAAd,+EAAc;QACb,0DAAc;QAAd,+EAAc;QACd,0DAAa;QAAb,8EAAa;QAE7D,0DAA0B;QAA1B,gIAA0B;QAeZ,0DAAiC;QAAjC,kIAAiC;QAIlC,0DAAqC;QAArC,sLAAqC;QACzB,0DAAqC;QAArC,sLAAqC;QACrC,0DAAuC;QAAvC,wLAAuC;;;;;;;;;;;;;;;;;;;;;;;;;;;ACjD5D;AAC4C;;;;;;;;;;;ICKpD,6EAA0D;IAAA,uDAAW;IAAA,4DAAS;;;;IAAhC,uEAAW;IAAC,0DAAW;IAAX,2EAAW;;;IAOrE,6EAA+D;IAAA,uDAAkB;IAAA,4DAAS;;;IAA3C,2EAAe;IAAC,0DAAkB;IAAlB,kFAAkB;;;IAyB7F,0EAAoD;IAC1B,wEAAa;IAAA,4DAAM;IACzC,0EAAuB;IAAA,uDAAuB;;IAAA,4DAAM;;;IAA7B,0DAAuB;IAAvB,qJAAuB;;;IAI1C,oFACqB;;;IAD+B,iGAAiC;;;IAyB7F,0EAAoD;IAC1B,oEAAS;IAAA,4DAAM;IACrC,0EAAuB;IAAA,uDAA+B;;IAAA,4DAAM;;;IAArC,0DAA+B;IAA/B,6JAA+B;;ADxDnE,MAAM,kBAAkB;IAgC7B,YACU,YAA0B,EAC1B,cAA8B,EAC9B,aAA4B,EAC7B,WAAwB,EACvB,EAAe,EACf,MAAc;QALd,iBAAY,GAAZ,YAAY,CAAc;QAC1B,mBAAc,GAAd,cAAc,CAAgB;QAC9B,kBAAa,GAAb,aAAa,CAAe;QAC7B,gBAAW,GAAX,WAAW,CAAa;QACvB,OAAE,GAAF,EAAE,CAAa;QACf,WAAM,GAAN,MAAM,CAAQ;QApCf,cAAS,GAAW,EAAE,CAAC;QAEhC,kBAAa,GAAG,IAAI,8CAAY,EAAE,CAAC;QACnC,UAAK,GAAmB,EAAE,CAAC;QAC3B,WAAM,GAAkB,EAAE,CAAC;QAG3B,iBAAY,GAA8B,EAAE,CAAC;QAC7C,eAAU,GAAG,EAAE;QAEf,mBAAc,GAAG,IAAI,qDAAS,CAC5B;YACE,IAAI,EAAE,IAAI,uDAAW,CAAC,EAAC,KAAK,EAAE,CAAC,CAAC,EAAC,CAAC;YAClC,MAAM,EAAE,IAAI,uDAAW,CAAC,CAAC,CAAC,CAAC;YAC3B,UAAU,EAAE,IAAI,uDAAW,CAAC,EAAE,CAAC;YAC/B,YAAY,EAAE,IAAI,uDAAW,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,CAAC;YAC9D,gBAAgB,EAAE,IAAI,uDAAW,CAAC,EAAE,CAAC;YACrC,YAAY,EAAE,IAAI,uDAAW,CAAC,QAAQ,CAAC;YACvC,MAAM,EAAE,IAAI,uDAAW,CAAC,EAAE,CAAC;YAC3B,OAAO,EAAE,IAAI,uDAAW,CAAC,EAAE,CAAC;YAC5B,eAAe,EAAE,IAAI,qDAAS,CAC5B;gBACE,GAAG,EAAE,IAAI,uDAAW,CAAC,EAAE,CAAC;gBACxB,GAAG,EAAE,IAAI,uDAAW,CAAC,EAAE,CAAC;gBACxB,KAAK,EAAE,IAAI,uDAAW,CAAC,EAAE,CAAC;aAC3B,CACF;SACF,CACF;IASG,CAAC;IAIL,QAAQ;QACN,IAAI,CAAC,aAAa,CAAC,GAAG,CACpB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC,SAAS,CACzC,CAAC,EAAkB,EAAE,EAAE;YACrB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;YAChB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3D,CAAC,CACF,CACF;QAED,IAAI,CAAC,aAAa,CAAC,GAAG,CACpB,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC,SAAS,CAC1C,CAAC,GAAkB,EAAE,EAAE;YACrB,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;QACpB,CAAC,CACF,CACF;QAED,IAAI,CAAC,aAAa,CAAC,GAAG,CACpB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,SAAS,CACpD,CAAC,IAAY,EAAE,EAAE;YACf,IAAI,IAAI,GAAG,CAAC,CAAC,EAAE;gBACb,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC;gBAClD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAErC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,YAAY,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,CACxD,IAAI,CAAC,YAAY,CAAC,GAAG,CACnB,CAAC,EAAsB,EAAE,EAAE;oBACzB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE;wBACrC,IAAI,CAAC,aAAa,CAAC,GAAG,CACpB,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,SAAS,CACjE,CAAC,EAAqB,EAAE,EAAE;4BACxB,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC;4BACtC,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;wBAC9D,CAAC,CACF,CACF;qBACF;oBACD,OAAO,IAAI,CAAC,EAAE,CAAC,KAAK,CAClB;wBACE,YAAY,EAAE,EAAE,CAAC,YAAY;wBAC7B,gBAAgB,EAAE,KAAK;wBACvB,MAAM,EAAE,CAAC,EAAC,KAAK,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC;wBACrC,QAAQ,EAAE,GAAG,EAAE,CAAC,cAAc,MAAM,EAAE,CAAC,SAAS,EAAE;wBAClD,kBAAkB,EAAE,CAAC,EAAC,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC;qBAClD,CACF;gBACH,CAAC,CACF,CACF,CAAC;aACH;QAEH,CAAC,CACF,CACF;QAED,IAAI,CAAC,aAAa,CAAC,GAAG,CACpB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,SAAS,CACtD,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CACrH,CACF;IAEH,CAAC;IAED,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;IACnC,CAAC;IAED,SAAS,CAAC,OAAe;QACtB,OAAO,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrD,CAAC;IAED,aAAa;QACX,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QACnE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC;IACvD,CAAC;;oFAtHU,kBAAkB;gHAAlB,kBAAkB;QClB/B,yEAAkB;QAEa,4EAAiB;QAAA,4DAAK;QAC7C,yEAA6B;QAIwB,+DAAI;QAAA,4DAAQ;QACjD,6EAA6D;QACzD,sHAA8E;QAClF,4DAAS;QAGb,0EAAmB;QACwB,kEAAM;QAAA,4DAAQ;QACrD,8EAAiE;QAC7D,sHAA0F;QAC9F,4DAAS;QAEb,0EAAmB;QAC0B,oEAAQ;QAAA,4DAAQ;QACzD,wEAAoG;QACxG,4DAAM;QAEV,0EAAiB;QAEoC,yEAAa;QAAA,4DAAQ;QAClE,8EAA6E;QAC9C,kEAAM;QAAA,4DAAS;QAC1C,8EAA2B;QAAA,kEAAM;QAAA,4DAAS;QAGlD,0EAAmB;QACwB,yEAAa;QAAA,4DAAQ;QAC5D,wEAA6E;QACjF,4DAAM;QACN,0EAAmB;QACyB,mEAAO;QAAA,4DAAQ;QACvD,wEAA+E;QACnF,4DAAM;QAEV,iHAGM;QACN,2EAAsB;QAEd,+IACqB;QACzB,4DAAM;QAEV,0EAAiB;QAEwC,6EAAiB;QAAA,4DAAQ;QAC1E,2EACkD;QACtD,4DAAM;QAEV,2EAAiD;QAEO,8EAAkB;QAAA,4DAAQ;QAC1E,2EAAqF;QACzF,4DAAM;QACN,0EAAmB;QACiC,8EAAkB;QAAA,4DAAQ;QAC1E,2EAAqF;QACzF,4DAAM;QACN,0EAAmB;QACiC,8EAAkB;QAAA,4DAAQ;QAC1E,2EAAuF;QAC3F,4DAAM;QAEV,iHAGM;QACV,4DAAO;QAGP,0EAAiB;QAEuC,6EAAiB;QAAA,4DAAQ;QACzE,wEAAgH;QACpH,4DAAM;QAGV,0EAAiB;QAEuD,2IAAS,mBAAe,IAAC;QAAC,kEAAM;QAAA,4DAAS;;QApF3G,0DAA4B;QAA5B,yFAA4B;QAKK,0DAAU;QAAV,8EAAU;QAOV,0DAAW;QAAX,+EAAW;QAKgB,0DAAoC;QAApC,iGAAoC;QAO9E,0DAAkB;QAAlB,2EAAkB;QAClB,0DAAkB;QAAlB,2EAAkB;QAYhC,2DAA0B;QAA1B,0FAA0B;QAMH,0DAA6B;QAA7B,6FAA6B;QAyBpD,2DAA0B;QAA1B,0FAA0B;;;;;;;;;;;;;;;;;ACxEzC,MAAM,WAAW;CAQvB;;;;;;;;;;;;;;;;;;;;;;;ACLmC;;;;;;;;ICS1B,2EAAkF;IAAA,uDAA2C;IAAA,4DAAO;;;IAAlD,0DAA2C;IAA3C,2GAA2C;;;;;IAHjI,wEAAyT;IAA7I,0WAAS,8CAAoC,OAAO,EAAE,IAAC;IACjO,yEAA8D;IACtD,uDAA0B;IAAA,wEAAO;IAAA,uDAAwE;;IAAA,4DAAQ;IACvH,sIAAoI;IACtI,4DAAK;;;;IAJ+C,4KAAuD;IAEnG,0DAA0B;IAA1B,mGAA0B;IAAO,0DAAwE;IAAxE,6MAAwE;IACxG,0DAAiD;IAAjD,gHAAiD;;;IAQtD,2EAAkF;IAAA,uDAA2C;IAAA,4DAAO;;;IAAlD,0DAA2C;IAA3C,4GAA2C;;;;IAHjI,wEAAyT;IAA7I,mXAAS,gDAAoC,OAAO,EAAE,IAAC;IACjO,yEAA8D;IACtD,uDAA0B;IAAA,wEAAO;IAAA,uDAAwE;;IAAA,4DAAQ;IACvH,4IAAoI;IACtI,4DAAK;;;;IAJ+C,6KAAuD;IAEnG,0DAA0B;IAA1B,oGAA0B;IAAO,0DAAwE;IAAxE,8MAAwE;IACxG,0DAAiD;IAAjD,iHAAiD;;;IAL9D,sEAAgD;IAC7B,8FAAmC;IAAA,4DAAK;IACzD,kIAKI;IACN,4DAAM;;;IAN+H,0DAA4B;IAA5B,mGAA4B;;;;IAbnK,yEAA2C;IACrC,yFAA8B;IAAA,4DAAK;IACvC,uEAA8M;IAA/G,wSAAS,8BAAsB,IAAC;IAC7H,qEAAI;IAAA,qEAAU;IAAA,4DAAK;IAErB,4HAKI;IACJ,gIAQM;IACR,4DAAM;;;IAf+H,0DAA4B;IAA5B,mGAA4B;IAMzJ,0DAAwC;IAAxC,2GAAwC;;ADF7C,MAAM,6BAA6B;IAcxC,YAAoB,WAAwB,EAAU,YAA0B,EAAU,MAAc;QAApF,gBAAW,GAAX,WAAW,CAAa;QAAU,iBAAY,GAAZ,YAAY,CAAc;QAAU,WAAM,GAAN,MAAM,CAAQ;QAZxG,kBAAa,GAAG,IAAI,8CAAY,CAAC;QACjC,yBAAoB,GAAe,EAAE,CAAC;QACtC,4BAAuB,GAAe,EAAE,CAAC;QACzC,4BAAuB,GAAe,EAAE,CAAC;QACzC,cAAS,GAAG,IAAI,CAAC;QAEjB,gCAA2B,GAAG;YAC5B,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,SAAS;SACnB,CAAC;IAE0G,CAAC;IAE7G,QAAQ;QACN,IAAI,CAAC,aAAa,CAAC,GAAG,CACpB,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,SAAS,CACvC,CAAC,CAAC,EAAE;YACF,IAAI,CAAC,CAAC,EAAE,EAAE;gBACR,IAAI,CAAC,uBAAuB,EAAE,CAAC;aAChC;QACH,CAAC,CACF,CACF;IACH,CAAC;IAED,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;IACnC,CAAC;IACD,oBAAoB;QAClB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;IACvC,CAAC;IAED,0BAA0B,CAAC,SAAiB;QAC1C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;QAC1E,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,EAAE,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IAC/F,CAAC;IAED,cAAc;QACZ,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;QAC/B,IAAI,CAAC,uBAAuB,EAAE,CAAC;IACjC,CAAC;IAED,uBAAuB;QACrB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,aAAa,CAAC,GAAG,CACpB,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,SAAS,CACzE,CAAC,GAAe,EAAE,EAAE;YAClB,GAAG,CAAC,IAAI,CAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,mBAAmB,CAAC,GAAC,CAAC,CAAC;YAC/E,IAAI,CAAC,uBAAuB,GAAG,EAAE;YACjC,IAAI,CAAC,uBAAuB,GAAG,EAAE;YACjC,IAAI,CAAC,oBAAoB,GAAG,GAAG,CAAC;YAChC,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAC9B,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBACP,IAAI,CAAC,CAAC,qBAAqB,CAAC,EAAE;oBAC3B,IAAI,CAAC,uBAAuB,CAAC,IAAI,iCAAK,CAAC,KAAE,OAAO,EAAE,CAAC,IAAE;iBACtD;YACH,CAAC,CACF;YACH,gEAAgE;YAChE,4EAA4E;YAC5E,MAAM;YACN,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAC9B,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBACN,IAAI,CAAC,CAAC,CAAC,qBAAqB,CAAC,EAAE;oBAC7B,IAAI,CAAC,uBAAuB,CAAC,IAAI,iCAAK,CAAC,KAAE,OAAO,EAAE,CAAC,IAAE;iBACtD;YACH,CAAC,CACF;YACH,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACzB,CAAC,CACF,CACF,CAAC;IACJ,CAAC;;0GA3EU,6BAA6B;2HAA7B,6BAA6B;QCb1C,yEAAwB;QAEG,8EAAmB;QAAA,uEAAoD;QAA3B,gJAAS,oBAAgB,IAAC;QAAC,qEAAiC;QAAA,4DAAI;QACnI,+EAAqG;QACrG,yHAoBM;QACR,4DAAM;;QAtBY,0DAAuB;QAAvB,oFAAuB;QACjC,0DAAgB;QAAhB,gFAAgB;;;;;;;;;;;;;;;;;;;ACCnB,MAAM,cAAc;IAEzB,SAAS,CAAC,KAAa,EAAE,IAAU;QACjC,IAAI,SAAS,GAAG,EAAE,CAAC;QACnB,QAAQ,KAAK,EAAE;YACb,KAAK,GAAG;gBACN,SAAS,GAAG,UAAU,CAAC;gBACvB,MAAM;YACR,KAAK,GAAG;gBACN,SAAS,GAAG,UAAU,CAAC;gBACvB,MAAM;YACR,KAAK,GAAG;gBACN,SAAS,GAAG,eAAe,CAAC;gBAC5B,MAAM;YACR;gBACE,SAAS,GAAG,SAAS,CAAC;SACzB;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;;4EAlBU,cAAc;4HAAd,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACFqC;AACV;AAEwB;AAEpB;;;;;;;AAKnD,MAAM,gBAAgB;IAsB3B,YACU,YAA0B,EAC1B,WAAwB,EACxB,YAA0B,EAC1B,aAA4B,EAC5B,MAAc;QAJd,iBAAY,GAAZ,YAAY,CAAc;QAC1B,gBAAW,GAAX,WAAW,CAAa;QACxB,iBAAY,GAAZ,YAAY,CAAc;QAC1B,kBAAa,GAAb,aAAa,CAAe;QAC5B,WAAM,GAAN,MAAM,CAAQ;QAzBxB,kBAAa,GAAiB,IAAI,8CAAY,EAAE,CAAC;QAEjD,kBAAa,GAAG;YACd,gBAAgB,EAAE;gBAChB,KAAK,EAAE,qEAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,+BAA+B;aAC5B;YACd,aAAa,EAAE;gBACb,KAAK,EAAE,qEAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,mCAAmC;aAChC;YACd,aAAa,EAAE;gBACb,KAAK,EAAE,qEAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,mCAAmC;aAChC;SACf,CAAC;IAQE,CAAC;IAEL,WAAW,CAAC,KAA6B,EAAE,KAA0B;QAEnE,MAAM,gBAAgB,GAAqB;YACvC,WAAW,EAAE,EAAE,aAAa,EAAE,KAAK,CAAC,GAAG,EAAC;SAC3C,CAAC;QAEF,sIAAsI;QAEtI,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE;YACjC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YAChC,OAAO,wCAAE,CAAC,KAAK,CAAC,CAAC;SAClB;QACD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE;YAC5B,OAAO,wCAAE,CAAC,IAAI,CAAC,CAAC;SACjB;QACD,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE;YACrC,OAAO,wCAAE,CAAC,KAAK,CAAC,CAAC;SAClB;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,IAAI,CACvF,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;QACF,MAAM,cAAc,GAAG,cAAc,CAAC,IAAI,CACxC,wDAAQ,CAAE,MAAM,CAAC,EAAE;YACf,OAAO,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QAC5E,CAAC,CACF,EACD,0DAAU,CAAE,GAAG,CAAC,EAAE;YAChB,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC;QAAC,CAAC,CAC1B,CACF,CAAC;QACF,MAAM,cAAc,GAAG,cAAc,CAAC,IAAI,CACxC,wDAAQ,CAAE,MAAM,CAAC,EAAE;YACf,OAAO,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QAC5E,CAAC,CACF,EACD,0DAAU,CAAE,GAAG,CAAC,EAAE;YAChB,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC;QAAC,CAAC,CAC1B,CACF,CAAC;QAEF,IAAK,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,EAAE;YACrC,IAAI,CAAC,aAAa,CAAC,GAAG,CACpB,cAAc,CAAC,SAAS,CACtB,SAAS,CAAC,EAAE;gBACV,IAAI,CAAC,SAAS,EAAE;oBACd,4DAAM,CAAC,mCAAmC,KAAK,CAAC,MAAM,CAAC,OAAO,cAAc,EAAE,+DAAa,CAAC,CAAC;oBAC7F,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC;iBAC/C;YACH,CAAC,EACD,GAAG,CAAC,EAAE;gBACJ,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;YACtE,CAAC,CACF,CACF,CAAC;YACF,OAAO,cAAc,CAAC;SACvB;aAAM,IAAK,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,EAAE;YAC5C,IAAI,CAAC,aAAa,CAAC,GAAG,CACpB,cAAc,CAAC,SAAS,CACtB,SAAS,CAAC,EAAE;gBACV,IAAI,CAAC,SAAS,EAAE;oBACd,4DAAM,CAAC,mCAAmC,KAAK,CAAC,MAAM,CAAC,OAAO,cAAc,EAAE,+DAAa,CAAC,CAAC;oBAC7F,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC;iBAC/C;YACH,CAAC,EACD,GAAG,CAAC,EAAE;gBACJ,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;YACtE,CAAC,CACF,CACF,CAAC;YACF,OAAO,cAAc,CAAC;SACvB;aAAM;YACL,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YAChC,OAAO,wCAAE,CAAC,KAAK,CAAC,CAAC;SAClB;IACH,CAAC;IAED,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;IACnC,CAAC;;gFA7GU,gBAAgB;kHAAhB,gBAAgB,WAAhB,gBAAgB;;;;;;;;;;;;;;;;;;;;;;ACVO;AAIyC;;;;;;;ICHzE,yEAAgF;IAExC,sFAA2B;IAAA,4DAAI;;;IAD/B,0DAAe;IAAf,oJAAe;IAChD,0DAAgB;IAAhB,6IAAgB;;;IAGvB,sEAAgC;IAC9B,oEAA+C;IACjD,4DAAM;;;IADC,0DAAe;IAAf,4IAAe;;;IAEtB,sEAA8B;IAEA,sEAAwC;IAAC,iGAAqC;IAAA,4DAAK;IAC7G,oEAAG;IAAA,2HAAgE;IAAA,4DAAI;IACvE,wEAAiB;IACf,+QAEF;IAAA,4DAAI;IACJ,gEAAI;IACJ,yEAAwB;IAAA,6IAAiF;IAAA,4DAAI;;ADL9G,MAAM,sBAAsB;IAsCjC,YAAqB,YAA0B,EAAU,YAA0B,EAAU,SAAuB;QAA/F,iBAAY,GAAZ,YAAY,CAAc;QAAU,iBAAY,GAAZ,YAAY,CAAc;QAAU,cAAS,GAAT,SAAS,CAAc;QAnBtH,uBAAuB;QAErB,YAAO,GAAG,KAAK,CAAC;QAChB,YAAO,GAAG,KAAK,CAAC;QAChB,SAAI,GAAG,KAAK,CAAC;QAKb,kBAAa,GAAG;YACd,WAAW,EAAE;gBACX,KAAK,EAAE,kEAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,iCAAiC;aAC9B;SACf,CAAC;QAEF,iBAAY,GAAG,IAAI,8CAAY,EAAE,CAAC;IAEsF,CAAC;IA/BzH,IAAa,OAAO,CAAC,KAAK;QACxB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;IACxB,CAAC;IACD,IAAa,KAAK,CAAC,KAAK;QACtB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IACD,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IACD,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAsBD,WAAW;QACT,OAAO,CAAC,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YAAE,OAAO;SAAE;QAC7C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,8BAA8B,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAEzH,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC;aACxE,SAAS,CACR,CAAC,EAAE,EAAE,EAAE;YACL,IAAI,OAAO,GAAG,EAAE,CAAC;YACjB,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAC,CAAC,CAAC;YAC7C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;YAC1B,IAAI,IAAI,CAAC,IAAI,KAAK,iBAAiB,IAAI,IAAI,CAAC,IAAI,KAAK,oBAAoB,EAAE;gBACzE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;gBACrB,+DAA+D;gBAC/D,+CAA+C;gBAC/C,wBAAwB;gBACxB,WAAW;gBACX,kDAAkD;gBAClD,yBAAyB;gBACzB,IAAI;gBACJ,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;gBAC3C,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;aACvB;iBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE;gBAC9D,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;gBACpB,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;aAC5C;YACD,+DAA+D;YAC/D,+CAA+C;YAC/C,WAAW;YACX,kDAAkD;YAClD,oDAAoD;YACpD,iCAAiC;YACjC,IAAI;YACJ,oDAAoD;YACpD,OAAO,CAAC,GAAG,CAAC,aAAa,GAAG,OAAO,CAAC,CAAC;YACrC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,8BAA8B,CAAC,OAAO,CAAC,CAAC;YACtE,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;YAC/C,oCAAoC;YACpC,mDAAmD;YACnD,+CAA+C;YAC/C,0BAA0B;YAC1B,4BAA4B;YAC5B,4DAA4D;YAC5D,MAAM;YACN,+BAA+B;YAC/B,wBAAwB;QAC1B,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;YACN,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QACpE,CAAC,EACD,GAAG,EAAE;YACH,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YAC5B,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;YAC1B,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QACzB,CAAC;QACC,uGAAuG;QACvG,+BAA+B;SAClC,CAAC;QACR,iGAAiG;IAE/F,CAAC;IAED,WAAW;QACT,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;IAClC,CAAC;;4FAxGU,sBAAsB;oHAAtB,sBAAsB;QChBnC,yEAA0B;QAEC,2EAAgB;QAAA,4DAAK;QAE5C,kHAIM;QACN,kHAEM;QACN,mHAWM;QACR,4DAAM;;QApBE,0DAAyB;QAAzB,6FAAyB;QAKzB,0DAAwB;QAAxB,4FAAwB;QAGxB,0DAAsB;QAAtB,0FAAsB;;;;;;;;;;;;;;;;;;;;;;;ACVI;AAEyC;;;;;;;ICUnE,qEAA0C;IAC1B,yGAA8C;IAAA,4DAAK;;;;IAO/D,6EAAgI;IAApD,icAAS,6DAAyC,IAAC;IAAC,+DAAI;IAAA,4DAAS;;;;IAC7I,6EAAoH;IAAxC,iZAAS,wCAA6B,IAAC;IAAC,+DAAI;IAAA,4DAAS;;;IANrI,qEAAmE;IACtD,uDAAgD;;IAAA,4DAAK;IAChE,qEAAI;IAAA,uDAA0B;IAAA,4DAAK;IAEnC,qEAAI;IACF,+HAA6I;IAC7I,+HAAiI;IACnI,4DAAK;;;;;IANM,0DAAgD;IAAhD,2KAAgD;IACvD,0DAA0B;IAA1B,0FAA0B;IAGnB,0DAA0B;IAA1B,gGAA0B;IAC1B,0DAA0B;IAA1B,gGAA0B;;;IAQjD,uFAAkH;;;IAAjE,sFAAsB;;ADhBhE,MAAM,sBAAsB;IAqBjC,YAAoB,YAA0B,EAAU,YAA0B;QAA9D,iBAAY,GAAZ,YAAY,CAAc;QAAU,iBAAY,GAAZ,YAAY,CAAc;QAjBlF,4BAA4B;QAC5B,YAAO,GAAG,KAAK,CAAC;QAChB,mBAAc,GAAW,CAAC,CAAC,CAAC;QAG5B,SAAI,GAAG,KAAK,CAAC;QAEb,kBAAa,GAAG;YACd,YAAY,EAAE;gBACZ,KAAK,EAAE,kEAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,kCAAkC;aAC/B;SACf,CAAC;QAEF,iBAAY,GAAG,IAAI,8CAAY,EAAE,CAAC;QAGhC,qFAAqF;IACvF,CAAC;IAED,WAAW;QACT,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YAAE,OAAO;SAAE;QAC9B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC;aAC/D,SAAS,CACR,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,GAAG,EAAE,EACnC,CAAC,GAAG,EAAE,EAAE;YACN,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QACrE,CAAC,CACF,CAAC;IAEJ,CAAC;IAED,WAAW,CAAC,OAAe,EAAE,KAAa,EAAE,MAAc;QACxD,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC;QAC1B,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC;IAC/B,CAAC;IAED,WAAW,CAAE,KAAa;QACxB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC;IAC3B,CAAC;IAED,WAAW;QACT,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;IAClC,CAAC;;4FAlDU,sBAAsB;oHAAtB,sBAAsB;QCfnC,yEAAkB;QAES,6EAAkB;QAAA,4DAAK;QAC9C,yEAA8B;QAIN,sEAAW;QAAA,4DAAK;QAChC,yEAAgB;QAAA,oEAAQ;QAAA,4DAAK;QAE7B,yEAAgB;QAAA,4EAAgB;QAAA,4DAAK;QAGzC,yEAAO;QACL,kHAEK;QACL,kHAQK;QACP,4DAAQ;QAKhB,gJAAkH;;QAjBnG,2DAAmC;QAAnC,6IAAmC;QAGV,0DAAsB;QAAtB,0FAAsB;QAc1C,0DAA2B;QAA3B,2FAA2B;;;;;;;;;;;;;;;;;;;;;;;AC7BX;AAEyC;;;;;;;ICWnE,qEAAiE;IACxC,uDAA+C;;IAAA,4DAAK;IAC3E,qEAAI;IAAA,uDAA2B;IAAA,4DAAK;IACpC,qEAAI;IAAA,uDACJ;IADA,4DAAI;IACJ,qEAAI;IAAA,uDAA4C;;IAAA,4DAAK;IACrD,sEAAI;IAAA,wDAAwB;IAAA,4DAAK;;;IAJV,0DAA+C;IAA/C,0KAA+C;IAClE,0DAA2B;IAA3B,2FAA2B;IAC3B,0DACJ;IADI,sHACJ;IAAI,0DAA4C;IAA5C,gKAA4C;IAC5C,0DAAwB;IAAxB,wFAAwB;;ADJjC,MAAM,qBAAqB;IAgBhC,YAAoB,YAA0B,EAAU,YAA0B;QAA9D,iBAAY,GAAZ,YAAY,CAAc;QAAU,iBAAY,GAAZ,YAAY,CAAc;QAVlF,kBAAa,GAAG;YACd,eAAe,EAAE;gBACf,KAAK,EAAE,kEAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,gCAAgC;aAC7B;SACf,CAAC;QAEF,qBAAgB,GAAG,IAAI,8CAAY,EAAE,CAAC;IAEgD,CAAC;IAEvF,WAAW;QACT,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YACpC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;iBACrE,SAAS,CACR,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,GAAG,EAAE,EAClC,CAAC,GAAG,EAAE,EAAE;gBACN,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;YACxE,CAAC,CACF,CAAC;SACH;IACH,CAAC;IAED,WAAW;QACT,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC;IACtC,CAAC;;0FAhCU,qBAAqB;mHAArB,qBAAqB;QChBlC,yEAAkB;QAES,wEAAa;QAAA,4DAAK;QACzC,yEAA8B;QAIN,sEAAW;QAAA,4DAAK;QAChC,yEAAgB;QAAA,kEAAM;QAAA,4DAAK;QAC3B,yEAAgB;QAAA,sEAAU;QAAA,4DAAK;QAC/B,yEAAgB;QAAA,qEAAS;QAAA,4DAAK;QAC9B,yEAA6B;QAAA,mEAAO;QAAA,4DAAK;QAG7C,yEAAO;QACL,mHAMK;QACP,4DAAQ;;QAPuB,2DAAqB;QAArB,yFAAqB;;;;;;;;;;;;;;;;;ACfrD,MAAM,UAAU;CAStB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACLD,mCAAmC;AACF;AAEmB;AAIyB;AAGnC;;;;;;;;;;ICWtB,6EAAoG;IAAA,uDAAuB;IAAA,4DAAS;;;IAAhE,4FAA+B;IAAC,0DAAuB;IAAvB,wFAAuB;;;IAS/H,6EAA+E;IAAA,uDAAgB;IAAA,4DAAS;;;IAAlD,qFAAwB;IAAC,0DAAgB;IAAhB,iFAAgB;;;IAO/F,6EAA4E;IAAA,uDAAe;IAAA,4DAAS;;;IAAhD,oFAAuB;IAAC,0DAAe;IAAf,gFAAe;;;IAO3F,6EAAqF;IAAA,uDAAkB;IAAA,4DAAS;;;IAAtD,uFAA0B;IAAC,0DAAkB;IAAlB,mFAAkB;;;IAJ3G,0EAAgD;IACqB,mEAAQ;IAAA,4DAAQ;IACnF,6EAA0G;IAC/E,wEAAa;IAAA,4DAAS;IAC/C,4HAAgH;IAClH,4DAAS;;;IAFC,0DAAgB;IAAhB,yEAAgB;IACW,0DAAqB;IAArB,8FAAqB;;;IAOxD,6EAAqF;IAAA,uDAAkB;IAAA,4DAAS;;;IAAtD,uFAA0B;IAAC,0DAAkB;IAAlB,mFAAkB;;;IAJ3G,0EAAgD;IACqB,mEAAQ;IAAA,4DAAQ;IACnF,6EAA0G;IAC/E,wEAAa;IAAA,4DAAS;IAC/C,4HAAgH;IAClH,4DAAS;;;IAFC,0DAAgB;IAAhB,yEAAgB;IACW,0DAAqB;IAArB,8FAAqB;;;IAOxD,6EAAsG;IAAA,uDAAiC;IAAA,4DAAS;;;IAAnF,qGAAwC;IAAC,0DAAiC;IAAjC,kGAAiC;;;IAOvI,6EAA0G;IAAA,uDAAmC;IAAA,4DAAS;;;IAAvF,uGAA0C;IAAC,0DAAmC;IAAnC,oGAAmC;;;IAiBzI,yEAAiD;IAAA,mEAAQ;IAAA,4DAAK;;;IAC9D,yEAAgD;IAAA,mEAAQ;IAAA,4DAAK;;;;IASzD,wEAAgH;IAAvC,oYAAS,wCAA4B,IAAC;IAAC,8DAAG;IAAA,4DAAI;;;IAQzH,qEAAwB;IAAA,uDAAsB;IAAA,4DAAK;;;IAA3B,0DAAsB;IAAtB,uFAAsB;;;IAC9C,qEAAuB;IAAA,uDAAsB;IAAA,4DAAK;;;IAA3B,0DAAsB;IAAtB,uFAAsB;;;IAX/C,wEAAuC;IACrC,yEAAkD;IAAnC,iKAAS,wBAAwB,IAAC;IAC/C,gIAAuH;IACzH,4DAAK;IACL,yEAAgB;IAAA,uDAAY;IAAA,4DAAK;IACjC,qEAAI;IAAA,uDAAiC;IAAA,4DAAK;IAE1C,qEAAI;IAAwC,uDAAwB;IAAA,4DAAO;IAAC,wDAAqB;IAAA,4DAAK;IACtG,sEAAI;IAAA,wDAAwB;IAAA,4DAAK;IACjC,sEAAI;IAAA,wDAAoB;IAAA,4DAAK;IAC7B,oIAAmD;IACnD,oIAAkD;IAClD,0EAAW;;IACkG,wDAA+B;;IAAA,4DAAO;IAGnJ,0EAAW;;IACsG,wDAAmC;;IAAA,4DAAO;IAE7J,qEAAe;;;;IAjBP,0DAA4B;IAA5B,oGAA4B;IAElB,0DAAY;IAAZ,6EAAY;IACxB,0DAAiC;IAAjC,kGAAiC;IAEO,0DAAwB;IAAxB,yFAAwB;IAAQ,0DAAqB;IAArB,gGAAqB;IAC7F,0DAAwB;IAAxB,yFAAwB;IACxB,0DAAoB;IAApB,qFAAoB;IACnB,0DAAkB;IAAlB,uFAAkB;IAClB,0DAAiB;IAAjB,sFAAiB;IAEsC,0DAAgD;IAAhD,mLAAgD;IAAC,0DAA+B;IAA/B,4JAA+B;IAIhF,0DAAoD;IAApD,uLAAoD;IAAC,0DAAmC;IAAnC,gKAAmC;;;;;IAlBxJ,yEAA4L;IAAhE,2VAAS,iFAAqD,IAAC;IACzL,yIAmBe;IACjB,4DAAK;;;;IArBiE,6KAAqD;IAC1G,0DAAsB;IAAtB,6FAAsB;;AD7EzD,MAAM,QAAQ,GAAG,OAAO,CAAC;AAOlB,MAAM,kBAAkB;IA0C7B,YACU,YAA0B,EAC1B,WAAwB,EACxB,YAA0B,EAC1B,EAAe,EACf,MAAc;QAJd,iBAAY,GAAZ,YAAY,CAAc;QAC1B,gBAAW,GAAX,WAAW,CAAa;QACxB,iBAAY,GAAZ,YAAY,CAAc;QAC1B,OAAE,GAAF,EAAE,CAAa;QACf,WAAM,GAAN,MAAM,CAAQ;QA7CxB,cAAS,GAAG,IAAI,CAAC;QACR,cAAS,GAAG,aAAa,CAAC;QASnC,wBAAmB,GAAG;YACpB,WAAW,EAAE,OAAO;YACpB,SAAS,EAAE,WAAW;SACvB,CAAC;QAEF,mBAAc,GAAG,KAAK,CAAC;QACvB,qBAAgB,GAAG,EAAE,CAAC;QACtB,oBAAe,GAAG,EAAE,CAAC;QACrB,uBAAkB,GAAG,EAAE,CAAC;QACxB,uBAAkB,GAAG,EAAE,CAAC;QACxB,4BAAuB,GAAkB,EAAE,CAAC;QAC5C,wBAAmB,GAA+D,EAAE,CAAC;QAIrF,iBAAY,GAAG,KAAK,CAAC;QAKrB,kBAAa,GAAG;YACd,OAAO,EAAE;gBACP,KAAK,EAAE,kEAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,wBAAwB;aACrB;SACf,CAAC;QAEF,eAAU,GAAG,IAAI,8CAAY,EAAE,CAAC;QAS9B,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,IAAI,CAAC,wBAAwB,EAAE,CAAC;IAClC,CAAC;IAvBD,IAAI,YAAY;QACd,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC;IAC5B,CAAC;IAuBD,oBAAoB;QAClB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CACjC;YACE,iBAAiB,EAAE,CAAC,IAAI,CAAC;YACzB,eAAe,EAAE,CAAC,IAAI,CAAC;YACvB,aAAa,EAAE,CAAC,IAAI,CAAC;YACrB,MAAM,EAAE,CAAC,IAAI,CAAC;YACd,KAAK,EAAE,CAAC,IAAI,CAAC;YACb,YAAY,EAAE,CAAC,IAAI,CAAC;SACrB,CACF,CAAC;IACJ,CAAC;IAED,wBAAwB;QACtB,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;YAC5B,YAAY,EAAE,WAAW;YACzB,WAAW,EAAE,mCAAM,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC;SAClD,CAAC,CAAC;QACH,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;YAC5B,YAAY,EAAE,cAAc;YAC5B,WAAW,EAAE,mCAAM,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC;SAClD,CAAC,CAAC;QACH,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;YAC5B,YAAY,EAAE,YAAY;YAC1B,WAAW,EAAE,mCAAM,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC;SACnD,CAAC,CAAC;QACH,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;YAC5B,YAAY,EAAE,eAAe;YAC7B,WAAW,EAAE,mCAAM,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC;SACnD,CAAC,CAAC;QACH,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;YAC5B,YAAY,EAAE,WAAW;YACzB,WAAW,EAAE,mCAAM,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC;SAClD,CAAC,CAAC;IACL,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE;YACvC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;SACjC;QACD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,cAAc,CAAC;QACnE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC,IAAI,CACnE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACP,MAAM,gBAAgB,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;YACjD,MAAM,gBAAgB,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;YACjD,IAAI,WAAW,GAAG,CAAC,CAAC;YACpB,IAAK,gBAAgB,IAAI,CAAC,gBAAgB,EAAG;gBAC3C,WAAW,GAAG,CAAC,CAAC,CAAC;aAClB;iBAAM,IAAI,CAAC,gBAAgB,IAAI,gBAAgB,EAAE;gBAChD,WAAW,GAAG,CAAC,CAAC;aACjB;iBAAM;gBACL,WAAW,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;aAC3B;YACD,OAAO,WAAW,CAAC;QACrB,CAAC,CACF,CAAC;QACF,IAAI,CAAC,YAAY,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC,CAAC;QACxG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC;QACvC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;IACzB,CAAC;IAED,WAAW,KAAI,CAAC;IAEhB,kBAAkB,CAAC,wBAAgC,EAAE,gBAAwB,EAAE,KAAY;QACzF,OAAO,CAAC,GAAG,CAAC,qCAAqC,wBAAwB,eAAe,gBAAgB,cAAc,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;QAClI,IAAI,eAAgC,CAAC;QACrC,IAAI,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE;YAC/B,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;SACrH;aAAM;YACL,eAAe,GAAG,wCAAE,CAAC,IAAI,CAAC,CAAC;SAC5B;QACD,IAAI,CAAC,UAAU,CAAC,GAAG,CACjB,eAAe;aACd,IAAI,CACH,wDAAQ,CACN,GAAG,EAAE;YACH,IAAI,IAAI,CAAC,YAAY,EAAE;gBACrB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC;aACxD;iBAAM;gBACL,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC;aACxD;QACH,CAAC,CACF,CACF;aACA,SAAS,CACR,GAAG,EAAE;YACH,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC5C,CAAC,EACD,CAAC,GAAG,EAAE,EAAE,GAAE,CAAC,CACZ,CACF,CAAC;IACJ,CAAC;IAEO,0BAA0B,CAAC,OAAe;QAChD,MAAM,iBAAiB,GAAG,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,CAAC,SAAS,CAC/F,CAAC,CAAC,EAAE;YACF,OAAO,CAAC,CAAC,SAAS,CAAC,KAAK,OAAO,CAAC;QAClC,CAAC,CACF,CAAC;QACF,IAAI,iBAAiB,KAAK,CAAC,CAAC,EAAE;YAC5B,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;SAC5F;IACH,CAAC;IAED,QAAQ,CAAC,QAAgB;QACvB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IACnC,CAAC;IAED,gBAAgB,CAAC,SAAuB;QACtC,gFAAgF;QAChF,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QAC7E,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;QAE7B,mFAAmF;QACnF,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;QAChF,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;QAE5B,oFAAoF;QACpF,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;QACjF,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;QAE/B,oFAAoF;QACpF,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;QACjF,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;QAE/B,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC;QACjG,6DAA6D;QAC7D,4FAA4F;QAC5F,KAAK;QACL,IAAI,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAC;IACtC,CAAC;IAED,SAAS,CAAC,KAAY;QACpB,OAAO,CACL,CAAC,IAAI,CAAC,cAAc;YACpB,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,cAAc,CAAC;gBAC5G,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,UAAU,CAAC;gBAC1G,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,KAAK;oBAC7C,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,YAAY,CAAC;oBAC3F,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,YAAY,CAAC,CAC5F;gBACD,CACE,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,KAAK;oBACjD,CAAC,KAAK,CAAC,cAAc;oBACrB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC,cAAc,CACjF;gBACD,CACE,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,KAAK;oBACnD,CAAC,KAAK,CAAC,kBAAkB;oBACzB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC,kBAAkB,CACvF;gBACD,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,uBAAuB,CAAC,CACtI,CAAC;IACJ,CAAC;IAED,eAAe,CAAC,KAAY;QAC1B,OAAO,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC5H,CAAC;IAED,yBAAyB,CAAC,QAAgB;QACxC,OAAO,CAAC,GAAG,CAAC,+BAA+B,GAAG,QAAQ,CAAC,CAAC;QACxD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,iBAAiB,CAAC,OAAe;QAC/B,IAAI,CAAC,UAAU,CAAC,GAAG,CACjB,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CACxG,GAAG,EAAE;YACH,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC;QAC3C,CAAC,CACF,CACF,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,QAAoB;QAC1B,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE;YAC3B,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAM,CAAC,CAAC,EAAE;gBAChC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACnB;SACF;QACD,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IAED,aAAa;QACX,IAAI,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC;IAC7C,CAAC;IAED,SAAS,CAAC,KAAU,EAAE,IAAS;QAC7B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,WAAW;QACT,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;IAChC,CAAC;;oFAxPU,kBAAkB;gHAAlB,kBAAkB;QCxB/B,yEAAiB;QAIc,uDACrB;QACE,4EAAkK;QAA1B,0IAAS,mBAAe,IAAC;QAC7J,qEAAmC;QAAC,uDACxC;QAAA,4DAAS;QAGb,yEAAoG;QAG/B,sEAAU;QAAA,4DAAS;QAGpF,2EAA6B;QAGiD,qEAAS;QAAA,4DAAQ;QAE3F,2EAAsB;QAEO,0EAAc;QAAA,4DAAS;QAChD,uHAAoI;QACtI,4DAAS;QAIf,2EAA6B;QACsC,kEAAM;QAAA,4DAAQ;QAC/E,8EAAkG;QACvE,sEAAU;QAAA,4DAAS;QAC5C,uHAAwG;QAC1G,4DAAS;QAEX,2EAA6B;QACqC,iEAAK;QAAA,4DAAQ;QAC7E,8EAAgG;QACrE,sEAAU;QAAA,4DAAS;QAC5C,uHAAoG;QACtG,4DAAS;QAEX,iHAMM;QACN,iHAMM;QACN,2EAA6B;QAC0C,yEAAa;QAAA,4DAAQ;QAC1F,8EAAqI;QAC1G,oEAAQ;QAAA,4DAAS;QAC1C,uHAAgJ;QAClJ,4DAAS;QAEX,2EAA6B;QAC4C,0EAAc;QAAA,4DAAQ;QAC7F,8EAAmH;QACxF,oEAAQ;QAAA,4DAAS;QAC1C,uHAAsJ;QACxJ,4DAAS;QAMb,2EAA8B;QAIpB,qEAAiC;QACjC,0EAA4B;QAAA,8DAAE;QAAA,4DAAK;QACnC,0EAA6B;QAAA,qEAAS;QAAA,4DAAK;QAC3C,0EAA6B;QAAA,sEAAU;QAAA,4DAAK;QAC5C,0EAA6B;QAAA,iEAAK;QAAA,4DAAK;QACvC,0EAA6B;QAAA,kEAAM;QAAA,4DAAK;QACxC,+GAA8D;QAC9D,+GAA6D;QAC7D,0EAA6B;QAAA,mEAAO;QAAA,4DAAK;QACzC,0EAA6B;QAAA,yEAAa;QAAA,4DAAK;QAGnD,yEAAO;QACL,+GAqBK;QACP,4DAAQ;QAGZ,iFAA0I;QAChJ,4DAAM;;QAnHmB,0DACrB;QADqB,wFACrB;QAE0C,0DACxC;QADwC,6HACxC;QAGmE,0DAA4B;QAA5B,yFAA4B;QAa/E,2DAAgB;QAAhB,yEAAgB;QACgB,0DAA0B;QAA1B,gGAA0B;QAQ9D,0DAAgB;QAAhB,yEAAgB;QACS,0DAAmB;QAAnB,yFAAmB;QAM5C,0DAAgB;QAAhB,yEAAgB;QACQ,0DAAkB;QAAlB,wFAAkB;QAGhD,0DAAiB;QAAjB,kFAAiB;QAOjB,0DAAiB;QAAjB,kFAAiB;QAUX,0DAAgB;QAAhB,yEAAgB;QACa,0DAAsB;QAAtB,4FAAsB;QAMnD,0DAAgB;QAAhB,yEAAgB;QACe,0DAAsB;QAAtB,4FAAsB;QAiBpD,2DAAkB;QAAlB,mFAAkB;QAClB,0DAAiB;QAAjB,kFAAiB;QAMF,0DAAc;QAAd,kFAAc;QAyB1B,0DAAgC;QAAhC,2HAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACrHL;AAEwB;AAGd;AACT;AACI;AAEA;AACT;AACS;AACe;AAC3B;;;AAEhD,MAAM,MAAM,GAAW;IACrB,EAAC,IAAI,EAAE,6BAA6B,EAAE,SAAS,EAAE,uFAAwB,EAAE,WAAW,EAAE,CAAC,0DAAS,CAAC,EAAC;IACpG;QACE,IAAI,EAAE,yBAAyB;QAC/B,SAAS,EAAE,uFAAwB;QACnC,WAAW,EAAE,CAAC,0DAAS,EAAE,2EAAiB,CAAC;QAC3C,IAAI,EAAE,EAAC,WAAW,EAAE,yFAA6C,EAAC;KACnE;IACD;QACE,IAAI,EAAE,oBAAoB;QAC1B,SAAS,EAAE,qEAAkB;QAC7B,WAAW,EAAE,CAAC,0DAAS,EAAE,2EAAiB,CAAC;QAC3C,IAAI,EAAE,EAAC,WAAW,EAAE,mFAAuC,EAAC;KAC7D;IACD;QACE,IAAI,EAAE,4BAA4B;QAClC,SAAS,EAAE,oFAAyB;QACpC,WAAW,EAAE,CAAC,0DAAS,EAAE,2EAAiB,CAAC;QAC3C,IAAI,EAAE,EAAC,WAAW,EAAE,mFAAuC,EAAC;KAC7D;IACD,EAAC,IAAI,EAAE,uBAAuB,EAAE,SAAS,EAAE,qEAAkB,EAAE,WAAW,EAAE,CAAC,0DAAS,CAAC,EAAC;CACvF,CAAC;AAOG,MAAM,kBAAkB;;oFAAlB,kBAAkB;+GAAlB,kBAAkB;oHAFlB,CAAC,iEAAgB,EAAE,sEAAc,CAAC,YAFpC,CAAC,mEAAqB,CAAC,MAAM,CAAC,CAAC,EAC9B,0DAAY;mIAGX,kBAAkB,qFAHnB,0DAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACxCuB;AACmB;AAEL;AACA;AACD;AACR;AAEL;AAEqB;AACC;AACH;AACN;AACY;AAEpB;AACgC;AACD;AACvB;AACS;AACM;;AA0CpE,MAAM,WAAW;;sEAAX,WAAW;yGAAX,WAAW;8GAJX;QACT,wDAAY;KACb,YArCQ;YACP,0DAAY;YACZ,wDAAW;YACX,gEAAmB;YACnB,qEAAc;YACd,qEAAc;YACd,4DAAW;YACX,qEAAkB;SACnB;oIA+BU,WAAW,mBA7BpB,8DAAc;QACd,6EAAsB;QACtB,8EAAsB;QACtB,2EAAqB;QACrB,qEAAkB;QAClB,6FAA2B;QAC3B,iFAAwB;QACxB,6FAA6B;QAC7B,sEAAkB;QAClB,+EAAsB;QACtB,qFAAyB,aAnBzB,0DAAY;QACZ,wDAAW;QACX,gEAAmB;QACnB,qEAAc;QACd,qEAAc;QACd,4DAAW;QACX,qEAAkB,aAgBlB,8DAAc;QACd,6EAAsB;QACtB,8EAAsB;QACtB,2EAAqB;QACrB,qEAAkB;QAClB,6FAA2B;QAC3B,iFAAwB;QACxB,6FAA6B;QAC7B,sEAAkB;QAClB,+EAAsB;QACtB,qFAAyB;;;;;;;;;;;;;;;;;;;;;;;;;ACzDkC;AAEkB;AAChC;AAEY;AAE7B;;;AAsBhC,MAAM,YAAY,GAAG,yEAAkB,CAAC;AAGjC,MAAM,YAAY;IAavB,YAAoB,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;QAXpC,oBAAe,GAAG,EAAE,CAAC;QACrB,aAAQ,GAAG,EAAE,CAAC;QACd,aAAQ,GAAG,IAAI,yCAAK,EAAE,CAAC;QACvB,oBAAe,GAAG,EAAE,CAAC,CAAC,oDAAoD;QAC1E,oBAAe,GAAG,IAAI,8CAAY,EAAE,CAAC;QAErC,qBAAgB,GAAyB,IAAI,iDAAe,CAAM,EAAE,CAAC,CAAC;QACtE,wBAAmB,GAAyB,IAAI,iDAAe,CAAM,EAAE,CAAC,CAAC;IAIjC,CAAC;IAEzC,kBAAkB,CAAC,YAAoB;QACrC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE;YACvC,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,GAAG,IAAI,iDAAe,CAAoB,EAAE,CAAC,CAAC;YAChF,IAAI,CAAC,eAAe,CAAC,GAAG,CACtB,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAC,SAAS,CACjD,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAClD,CACF,CAAC;SACH;QACD,OAAO,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;IAC5C,CAAC;IAED,mBAAmB,CAAC,UAAkB,EAAE,IAAY;QAClD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,GAAG,YAAY,oBAAoB,UAAU,IAAI,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,EAAE,CAC7F,CAAC,IAAI,CACJ,mDAAG,CAAE,IAAI,CAAC,EAAE,GAAG,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAE,EAC/C,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACN,CAAC;IAED,mBAAmB,CAAC,UAAkB;QACpC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,GAAG,YAAY,oBAAoB,UAAU,EAAE,CAC9C,CAAC,IAAI,CACJ,mDAAG,CAAE,IAAI,CAAC,EAAE,GAAG,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAE,EAC/C,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACN,CAAC;IAED,kBAAkB,CAAC,UAAkB;QACnC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,GAAG,YAAY,oBAAoB,UAAU,YAAY,CAC1D,CAAC,IAAI,CACJ,mDAAG,CAAE,IAAI,CAAC,EAAE,GAAG,OAAO,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EACpC,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACJ,CAAC;IAED,QAAQ,CAAC,OAAe;QACtB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,GAAG,YAAY,UAAU,OAAO,EAAE,CACjC,CAAC,IAAI,CACJ,mDAAG,CAAE,IAAI,CAAC,EAAE;YACV,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAC7B,CAAC,CAAC,EACF,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACN,CAAC;IAED,eAAe,CAAC,OAAe,EAAE,aAAqB;QACpD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,GAAG,YAAY,UAAU,OAAO,sBAAsB,aAAa,EAAE,CACpE,CAAC,IAAI,CACJ,mDAAG,CAAE,IAAI,CAAC,EAAE,GAAE,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EACnD,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACN,CAAC;IAED,gBAAgB,CAAC,OAAe;QAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,GAAG,YAAY,WAAW,OAAO,WAAW,CAC3C,CAAC,IAAI,CACJ,mDAAG,CAAE,IAAI,CAAC,EAAE,GAAE,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EACpD,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACN,CAAC;IAED,YAAY,CAAC,OAAe;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,GAAG,YAAY,UAAU,OAAO,MAAM,CACrC,CAAC,IAAI,CACJ,mDAAG,CAAE,IAAI,CAAC,EAAE,GAAE,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAC3C,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACN,CAAC;IAED,WAAW,CAAC,OAAe,EAAE,KAAa;QACxC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,GAAG,YAAY,UAAU,OAAO,QAAQ,KAAK,EAAE,EAC/C,EAAC,YAAY,EAAE,MAAM,EAAC,CACvB,CAAC,IAAI,CACJ,mDAAG,CAAE,IAAI,CAAC,EAAE;YACV,OAAO,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAC,CAAE,CAAC;QAC9C,CAAC,CAAE,EACH,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACJ,CAAC;IAED,cAAc,CAAC,OAAe,EAAE,KAAa;QAC3C,OAAO,GAAG,YAAY,UAAU,OAAO,SAAS,KAAK,MAAM,CAAC;IAC9D,CAAC;IAED,eAAe,CAAC,OAAe;QAC7B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,GAAG,YAAY,WAAW,OAAO,UAAU,CAC1C,CAAC,IAAI,CACJ,mDAAG,CAAE,IAAI,CAAC,EAAE,GAAE,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EACnD,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACN,CAAC;IAED,sBAAsB,CAAC,UAAkB;QACvC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,GAAG,YAAY,4BAA4B,UAAU,EAAE,CACtD,CAAC,IAAI,CACJ,mDAAG,CAAE,IAAI,CAAC,EAAE,GAAG,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EACpD,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACN,CAAC;IAED,aAAa,CAAC,YAAoB;QAChC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,GAAG,YAAY,kBAAkB,YAAY,EAAE,CAC9C,CAAC,IAAI,CACJ,mDAAG,CAAE,IAAI,CAAC,EAAE,GAAG,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAClD,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACN,CAAC;IAED,uBAAuB,CAAC,QAAgB;QACtC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,GAAG,YAAY,uBAAuB,QAAQ,mBAAmB,CAChE,CAAC,IAAI,CACJ,mDAAG,CAAE,IAAI,CAAC,EAAE,GAAG,OAAO,IAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAClE,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACN,CAAC;IAED,uBAAuB,CAAC,OAAe,EAAE,QAAgB,EAAE,aAAqB;QAC9E,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,GAAG,YAAY,gBAAgB,OAAO,4BAA4B,QAAQ,kBAAkB,aAAa,QAAQ,EACjH,EAAE,CACH,CAAC,IAAI,CACJ,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD;IACH,CAAC;IAED,WAAW,CAAC,YAAkB;QAC5B,MAAM,aAAa,GAAG,IAAI,QAAQ,EAAE,CAAC;QACrC,IAAI,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE;YACtC,aAAa,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC;SACxE;QACD,aAAa,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC;QACvE,aAAa,CAAC,MAAM,CAAC,cAAc,EAAE,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC,CAAC;QAC3E,aAAa,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC;QACnE,aAAa,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC;QACjE,aAAa,CAAC,MAAM,CAAC,qBAAqB,EAAE,IAAI,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAC,CAAC;QACzF,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;YACpB,aAAa,CAAC,MAAM,CAAC,cAAc,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;SAC/E;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CACnB,GAAG,YAAY,gBAAgB,EAC/B,aAAa,CACZ,CAAC,IAAI,CACJ,mDAAG,CAAE,IAAI,CAAC,EAAE,GAAE,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAC5C,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACN,CAAC;IAED,YAAY,CAAC,eAAoB;QAC/B,MAAM,aAAa,GAAG,IAAI,QAAQ,EAAE,CAAC;QAErC,uFAAuF;QACvF,yGAAyG;QACzG,IAAI;QACJ,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,EAAE;YAC3E,aAAa,CAAC,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,kBAAkB,CAAC,CAAC,UAAU,CAAC,CAAC,kBAAkB,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;SACjI;QACD,aAAa,CAAC,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAChF,aAAa,CAAC,MAAM,CAAC,cAAc,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACnG,aAAa,CAAC,MAAM,CAAC,UAAU,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9E,aAAa,CAAC,MAAM,CAAC,SAAS,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACnG,aAAa,CAAC,MAAM,CAAC,qBAAqB,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;QACpG,IAAI,eAAe,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YACrE,aAAa,CAAC,MAAM,CAClB,cAAc,EACd,eAAe,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EACzD,eAAe,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAC/D,CAAC;SACH;QAED,yBAAyB;QACzB,qCAAqC;QACrC,mBAAmB;QACnB,YAAY;QACZ,oDAAoD;QACpD,sDAAsD;QACtD,OAAO;QAEL,MAAM,SAAS,GAAQ,EAAE;QAEzB,IAAI,eAAe,CAAC,QAAQ,CAAC,CAAC,kBAAkB,CAAC,CAAC,UAAU,CAAC,EAAG;YAC9D,SAAS,CAAC,YAAY,CAAC,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC,kBAAkB,CAAC,CAAC,UAAU,CAAC,CAAC,kBAAkB,CAAC,CAAC,YAAY,CAAC,CAAC;SACvH;aAAM;YACL,SAAS,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC;SAChC;QACD,SAAS,CAAC,YAAY,CAAC,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC;QACtE,SAAS,CAAC,cAAc,CAAC,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC;QACzF,SAAS,CAAC,UAAU,CAAC,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC;QACpE,SAAS,CAAC,SAAS,CAAC,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,CAAC;QACzF,SAAS,CAAC,qBAAqB,CAAC,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC,CAAC;QAE1F,MAAM,OAAO,GAAG,IAAI,6DAAW,EAAE,CAAC,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;QAC1E,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CACnB,GAAG,YAAY,gBAAgB,EAC/B,IAAI,CAAC,SAAS,CAAC,EAAC,KAAK,EAAE,SAAS,EAAC,CAAC,EAClC,EAAE,OAAO,EAAE,OAAO,EAAE,CACnB,CAAC,IAAI,CACJ,mDAAG,CAAE,IAAI,CAAC,EAAE,GAAE,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAC5C,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACR,CAAC;IAED,WAAW,CAAC,SAAc;QACxB,MAAM,OAAO,GAAG,IAAI,6DAAW,EAAE,CAAC,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;QAC1E,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,GAAG,YAAY,UAAU,SAAS,CAAC,KAAK,CAAC,EAAE,SAAS,EACpD,IAAI,CAAC,SAAS,CAAC,EAAC,SAAS,EAAE,SAAS,EAAC,CAAC,EACtC,EAAE,OAAO,EAAE,OAAO,EAAE,CACnB,CAAC,IAAI,CACJ,mDAAG,CAAE,IAAI,CAAC,EAAE,GAAE,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAC5C,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACN,CAAC;IAED,eAAe,CAAC,OAAe,EAAE,UAAkB;QACjD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,GAAG,YAAY,UAAU,OAAO,cAAc,CAC7C,CAAC,IAAI,CACJ,mDAAG,CAAC,CAAC,CAAC,EAAE;YACN,OAAO,CAAC,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC;QAC/C,CAAC,CAAC,EACF,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACN,CAAC;IAED,eAAe,CAAC,OAAe,EAAE,UAAkB;QACjD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,GAAG,YAAY,UAAU,OAAO,cAAc,CAC7C,CAAC,IAAI,CACJ,mDAAG,CAAC,CAAC,CAAC,EAAE;YACN,OAAO,CAAC,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC;QAC/C,CAAC,CAAC,EACF,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACN,CAAC;IAED,0BAA0B,CAAC,QAAgB,EAAE,mBAA+B;QAC1E,MAAM,OAAO,GAAG,IAAI,6DAAW,EAAE,CAAC,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;QAC1E,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CACnB,GAAG,YAAY,oBAAoB,QAAQ,kBAAkB,EAC7D,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,EACnC,EAAE,OAAO,EAAE,OAAO,EAAE,CACrB,CAAC,IAAI,CACJ,mDAAG,CAAE,CAAC,IAAwB,EAAE,EAAE,GAAG,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,EACpD,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACJ,CAAC;IAED,gBAAgB,CAAC,OAAe,EAAE,WAAmB,EAAE,KAAe,EAAE,mBAA4B,KAAK,EAAE,UAAgB,IAAI,EAAE,aAAkB,IAAI;QACrJ,MAAM,OAAO,GAAG;YACd,WAAW,EAAE;gBACX,OAAO,EAAE,OAAO;gBAChB,WAAW,EAAE,WAAW;gBACxB,KAAK,EAAE,KAAK;gBACZ,gBAAgB,EAAE,gBAAgB;gBAClC,OAAO,EAAE,OAAO;gBAChB,UAAU,EAAE,UAAU;aACvB;SACF;QACD,MAAM,OAAO,GAAG,IAAI,6DAAW,EAAE,CAAC,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;QAC1E,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CACnB,GAAG,YAAY,2BAA2B,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,EAAC,OAAO,EAAE,OAAO,EAAC,CACxF,CAAC,IAAI,CACJ,mDAAG,CAAE,IAAI,CAAC,EAAE,GAAG,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,EAC9B,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD;IACH,CAAC;IAED,IAAI,gBAAgB,CAAC,KAAU;QAC7B,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;IACjC,CAAC;IAED,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED,WAAW;QACT,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;IACrC,CAAC;;wEAlTU,YAAY;6GAAZ,YAAY,WAAZ,YAAY;;;;;;;;;;;;;;;;ACjClB,MAAM,KAAK;IA0Bd,OAAO;QACH,qFAAqF;QACrF,4FAA4F;QAC5F,iEAAiE;QACjE,OAAO,CAAE,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;IAC3G,CAAC;CACJ;;;;;;;;;;;;;;;;;;;;;AC7BuD;AACwB;;;;AAOzE,MAAM,cAAc;IAGzB,YAAoB,SAAoB,EAAU,gBAAkC;QAAhE,cAAS,GAAT,SAAS,CAAW;QAAU,qBAAgB,GAAhB,gBAAgB,CAAkB;QAFpF,kBAAa,GAAG,IAAI,8CAAY,EAAE,CAAC;IAEoD,CAAC;IAExF,WAAW,CACT,IAA4B,EAC5B,KAA0B;QAG1B,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAChE,MAAM,sBAAsB,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAE9E,OAAO,eAAe,CAAC,IAAI,CACzB,sDAAM,CAAC,sBAAsB,CAAC,CAC/B,CAAC;IACJ,CAAC;IAED,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;IACnC,CAAC;;4EApBU,cAAc;+GAAd,cAAc,WAAd,cAAc;;;;;;;;;;;;;;;;;;;;;;;ACTS;AAEyC;;;;;;;;ICcnE,qEAA6C;IACvC,uDAAsB;IAAA,4DAAK;IAC/B,qEAAI;IAAA,uDAAsB;IAAA,4DAAK;IAC/B,qEAAI;IAAA,uDAAwB;IAAA,2EAAyB;IAAA,uDAA2D;IAAA,4DAAO;IACvH,yEAAW;IAAA,wDAA0B;IAAA,4DAAK;IAC1C,0EAAW;IAAA,wDAAiC;IAAA,4DAAK;;;IAJ7C,0DAAsB;IAAtB,sFAAsB;IACtB,0DAAsB;IAAtB,sFAAsB;IACtB,0DAAwB;IAAxB,iGAAwB;IAAyB,0DAA2D;IAA3D,2HAA2D;IACrG,0DAA0B;IAA1B,0FAA0B;IAC1B,0DAAiC;IAAjC,iGAAiC;;;IAiCpD,yEAA4C;IAExC,uEAAW;IAAA,wEAAsB;IAAA,uDAAa;IAAA,4DAAI;;;IAApC,0DAAkB;IAAlB,+IAAkB;IAAC,0DAAa;IAAb,iFAAa;;ADzC/C,MAAM,wBAAwB;IA2BnC,YACU,YAA0B,EAC3B,WAAwB,EACvB,YAA0B,EAC1B,aAA4B;QAH5B,iBAAY,GAAZ,YAAY,CAAc;QAC3B,gBAAW,GAAX,WAAW,CAAa;QACvB,iBAAY,GAAZ,YAAY,CAAc;QAC1B,kBAAa,GAAb,aAAa,CAAe;QA3BtC,wBAAmB,GAAG,IAAI,CAAC;QAI3B,kBAAa,GAAG;YACd,YAAY,EAAE;gBACZ,KAAK,EAAE,kEAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,mCAAmC;aAChC;YACd,kBAAkB,EAAE;gBAClB,KAAK,EAAE,kEAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,2CAA2C;aACxC;SACf,CAAC;QAEF,YAAO,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;QAEnC,mBAAc,GAAG,IAAI,8CAAY,EAAE,CAAC;QACpC,wBAAmB,GAAG,IAAI,8CAAY,EAAE,CAAC;QACzC,mBAAc,GAAG,IAAI,8CAAY,EAAE,CAAC;IAOhC,CAAC;IAEL,QAAQ;QACN,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,SAAS,CAC7D,CAAC,CAAS,EAAE,EAAE;YACZ,IAAI,CAAC,CAAC,EAAE,EAAE;gBACR,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAC7E,CAAC,EAAc,EAAE,EAAE;oBACjB,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC,iBAAiB,CAAC,CAAC,cAAc,CAAC;oBAC5D,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC,iBAAiB,CAAC,CAAC,eAAe,CAAC;gBAClE,CAAC,EACD,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,GAAG,CAAC,CAC1E,CAAC;gBACF,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;aAClC;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IAED,WAAW;QACT,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;QAClC,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,CAAC;QACvC,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;IACpC,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,MAAM,SAAS,GAAe,EAAE,iBAAiB,EAAE;gBACjD,eAAe,EAAE,IAAI,CAAC,kBAAkB;gBACxC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE;gBAChC,cAAc,EAAE,IAAI,CAAC,eAAe;aACnC;SACF,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;QACvC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,0BAA0B,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,SAAS,CAC7G,CAAC,CAAqB,EAAE,EAAE;YACxB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACf,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAC,oBAAoB,CAAC,CAAC;YAClD,IAAI,CAAC,SAAS,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,cAAc,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACrF,CAAC,EACD,CAAC,CAAC,EAAE;YACF,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;YACvE,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;QACnC,CAAC,CACF,CAAC;IACJ,CAAC;;gGA7EU,wBAAwB;sHAAxB,wBAAwB;QChBrC,yEAAgC;QAEmB,uDAAW;QAAA,4DAAM;QAClE,yEAAuB;QACE,uDAAoD;QAAA,4DAAK;QAChF,yEAA8B;QAIN,gFAAoB;QAAA,4DAAK;QACzC,yEAAgB;QAAA,sEAAU;QAAA,4DAAK;QAC/B,yEAAgB;QAAA,iEAAK;QAAA,4DAAK;QAC1B,yEAAgB;QAAA,4EAAgB;QAAA,4DAAK;QACrC,yEAAgB;QAAA,uEAAW;QAAA,4DAAK;QAGpC,yEAAO;QACL,qHAMK;QACP,4DAAQ;QAId,0EAAyB;QAGG,8EAAkB;QAAA,4DAAO;QAAA,wDACjD;QAAA,4DAAM;QACN,2EAA2B;QAED,mFAAuB;QAAA,4DAAO;QAAA,wDAAsC;;QAAA,4DAAO;QAK3G,2EAAoC;QAET,6EAAiB;QAAA,4DAAK;QAC7C,0EAAiB;QAGX,yLACF;QAAA,4DAAI;QAEN,2EAA6B;QAEe,iJAAS,wBAAoB,IAAC;QAAkC,iEAAK;QAAA,4DAAS;QAI5H,uHAIM;QACR,4DAAM;;QA1D2C,0DAAW;QAAX,4EAAW;QAEnC,0DAAoD;QAApD,8HAAoD;QAa5C,2DAAkB;QAAlB,wFAAkB;QAcE,0DACjD;QADiD,0IACjD;QAGwD,0DAAsC;QAAtC,mKAAsC;QAgBnB,2DAAgC;QAAhC,6FAAgC;QAIvG,0DAAwB;QAAxB,wFAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;ACvDa;AACmB;AAEsB;AACnB;AACQ;AACf;AACI;AACJ;AACE;;AA4BzD,MAAM,cAAc;;4EAAd,cAAc;2GAAd,cAAc;gHAJd;QACT,wEAAc;KACf,YAvBQ;YACP,yDAAY;YACZ,uDAAW;YACX,+DAAmB;SACpB;mIAqBU,cAAc,mBAnBvB,iGAA+B;QAC/B,uEAAmB;QACnB,4EAAgB;QAChB,8EAAsB;QACtB,sFAA0B;QAC1B,yEAAoB,aAVpB,yDAAY;QACZ,uDAAW;QACX,+DAAmB,aAWnB,iGAA+B;QAC/B,uEAAmB;QACnB,4EAAgB;QAChB,8EAAsB;QACtB,sFAA0B;QAC1B,yEAAoB;;;;;;;;;;;;;;;;;;;;;;;;;AChCuD;AACC;AAElC;AACY;AAImB;;;;;;;ICQ/D,6EAAuE;IAAA,uDAAY;IAAA,4DAAS;;;;IAAjC,uEAAW;IAAC,0DAAY;IAAZ,4EAAY;;;;IAN3F,yEAAyH;IAEtC,uDAAwB;IAAA,4DAAQ;IAC/G,yEAAsB;IAC2C,mWAAU,2BAAiB,IAAC;IACzF,6EAAsC;IAAA,mEAAQ;IAAA,4DAAS;IACvD,wIAA4F;IAC9F,4DAAS;;;;IALJ,0DAAiB;IAAjB,+FAAiB;IAAuD,0DAAwB;IAAxB,+FAAwB;IAET,0DAAgB;IAAhB,8FAAgB;IAAjE,iFAAmB;IACpD,0DAAW;IAAX,oEAAW;IACK,0DAAsB;IAAtB,gGAAsB;;ADArD,MAAM,+BAA+B;IA8B1C,YAAoB,EAAe,EAAU,YAA0B,EAAU,YAA0B;QAAvF,OAAE,GAAF,EAAE,CAAa;QAAU,iBAAY,GAAZ,YAAY,CAAc;QAAU,iBAAY,GAAZ,YAAY,CAAc;QAzB3G,mBAAc,GAAG,EAAE,CAAC;QACpB,kBAAa,GAAG,EAAE,CAAC;QACnB,sBAAiB,GAAG,EAAE,CAAC;QAGvB,+BAA+B;QAC/B,yBAAoB,GAAG,CAAC,CAAC,CAAC;QAGhB,4BAAuB,GAAG,IAAI,uDAAY,EAAY,CAAC;QACjE,0EAA0E;QAE1E,kBAAa,GAAG;YACd,WAAW,EAAE;gBACX,KAAK,EAAE,kEAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,kCAAkC;aAC/B;YACd,kBAAkB,EAAE;gBAClB,KAAK,EAAE,kEAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,yCAAyC;aACtC;SACf,CAAC;QAGA,IAAI,CAAC,eAAe,GAAG,IAAI,qDAAS,CAAC,EAAE,CAAC,CAAC;QACzC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;YACrC,cAAc,EAAE,IAAI,CAAC,eAAe;SACnC,CAAC,CAAC;IACL,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;QAC1B,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC;aAC/B,IAAI,CACH,mDAAG,CAAE,CAAC,WAA4B,EAAE,EAAE;YACpC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,+BAA+B;YAC/B,kCAAkC;YAClC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,uDAAW,EAAE,CAAC,CAAC;YAC7C,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC7C,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC,CAAC,EACF,uDAAO,CAAE,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,EACxE,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD;aACA,SAAS,CACR,CAAC,gBAAgB,EAAE,EAAE;YACnB,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC;YAC1C,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC;QACnE,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;YACN,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QACpE,CAAC,CACF,CAAC;IACJ,CAAC;IAED,cAAc,CAAC,SAAiB;QAC9B,OAAO,CAAC,GAAG,CAAC,2BAA2B,GAAG,SAAS,CAAC,CAAC;QACrD,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,SAAS,GAAG,CAAC,EAAE;YAClD,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;YAC7C,IAAI,CAAC,oBAAoB,GAAG,CAAC,CAAC,CAAC;SAChC;QACD,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,SAAS,GAAG,CAAC,CAAC;QAC5C,MAAM,kBAAkB,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC;QAC1E,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;QAC5E,MAAM,mBAAmB,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACtD,8EAA8E;QAC9E,IAAI,CAAC,kBAAkB,GAAG,mBAAmB,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QACjC,qDAAqD;QACrD,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC1D,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,mBAAmB,CAAC;aACjD,SAAS,CACR,CAAC,GAAoB,EAAE,EAAE;YACvB,kDAAkD;YAClD,IAAI,CAAC,CAAC,YAAY,EAAE,oBAAoB,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,EAAE;gBAC3E,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBAClC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE;oBAAC,IAAI,CAAC,iBAAiB,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;iBAAE;gBAC1F,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;aACxC;QACH,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;YACN,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QACpE,CAAC,CACF,CAAC;QACF,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,mBAAmB,CAAC;aACvD,SAAS,CACR,CAAC,GAAoB,EAAE,EAAE;YACvB,IAAK,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE;gBACnB,IAAI,CAAC,cAAc,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;gBACzC,yEAAyE;gBACzE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,uDAAW,CAAC,CAAC;gBAC3C,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACzD,IAAI,CAAC,cAAc,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;gBACzC,IAAI,CAAC,iBAAiB,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC;gBAChE,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;oBACpB,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC;gBAC3C,CAAC,CAAC,CAAC;aACJ;iBAAM;gBACL,sGAAsG;aACvG;QACH,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;YACN,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;QAC3E,CAAC,CACF,CAAC;QACF,6DAA6D;IAC/D,CAAC;;8GAlHU,+BAA+B;6HAA/B,+BAA+B;QCb5C,0EAAiE;QAIzD,sEAAmD;QACnD,4EAA0B;QAAA,qEAAU;QAAA,4DAAS;QAE/C,2HAUM;QACR,4DAAM;;QAlBJ,0FAA6B;QAOJ,0DAA2D;QAA3D,+HAA2D;;;;;;;;;;;;;;;;;;;;;;;IETxF,yEAA8C;IAE1C,qEAAsF;IAAC,uDACzF;IAAA,4DAAM;;;IADE,0DAAwE;IAAxE,sMAAwE;IAAS,0DACzF;IADyF,iGACzF;;ADGG,MAAM,mBAAmB;IA+B9B;QA7BQ,gBAAW,GAAG,CAAC,CAAC;QAEhB,eAAU,GAAG,IAAI,CAAC;QAyB1B,mBAAc,GAAG,KAAK,CAAC;IAER,CAAC;IA1BhB,IACI,UAAU,CAAC,KAAK;QAClB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;IAC3B,CAAC;IAAA,CAAC;IACF,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,IACI,SAAS,CAAC,KAAK;QACjB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,EAAE;YACvB,IAAI,IAAI,CAAC,SAAS,EAAE;gBAClB,IAAI,CAAC,cAAc,GAAG,sBAAsB,CAAC;aAC9C;iBAAM;gBACL,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC;aAC/C;SACA;aAAM;YACL,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;SAC1B;IACH,CAAC;IAAA,CAAC;IACF,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAKD,WAAW,KAAI,CAAC;IAEhB,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;IAC/C,CAAC;;sFArCU,mBAAmB;iHAAnB,mBAAmB;QCPhC,yEAAiB;QACf,+GAIM;QACR,4DAAM;;QALoB,0DAAoB;QAApB,oFAAoB;;;;;;;;;;;;;;;;;;;;;ACA+E;AAKlE;;;AAGpD,MAAM,kBAAkB;IAC3B,YAAoB,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;IAAG,CAAC;IAEtD,SAAS,CAAC,GAAqB,EAAE,IAAiB;QAC9C,IAAI,GAAG,YAAY,6DAAW,EAAE;YAC5B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;SACpC;QAAA,CAAC;QAEF,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CACxB,wDAAQ,CACJ,GAAG,EAAE;YACD,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACxC,CAAC,CACJ,CACJ,CAAC;IACN,CAAC;;oFAfQ,kBAAkB;mHAAlB,kBAAkB,WAAlB,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;IEP3B,oEAAkE;;ADO/D,MAAM,gBAAgB;IAE3B,YAAoB,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;IAAI,CAAC;IAEvD,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC;IACzC,CAAC;IACD,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;IACnC,CAAC;IAED,QAAQ;IACR,CAAC;;gFAZU,gBAAgB;8GAAhB,gBAAgB;QCT7B,yEAA2B;QAEvB,4GAAkE;QACtE,4DAAM;;QADI,0DAAiB;QAAjB,iFAAiB;;;;;;;;;;;;;;;;;;;ACCpB,MAAM,cAAc;IAQzB;QAFA,0FAA0F;QAClF,YAAO,GAAkB,EAAE,CAAC;IACpB,CAAC;IANjB,IAAY,gBAAgB;QAC1B,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;IAC7B,CAAC;IAMD,GAAG,CAAC,GAAW;QACb,8BAA8B;QAC9B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,MAAM,CAAC,GAAG;QACR,8BAA8B;QAC9B,gEAAgE;QAChE,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAE,IAAI,CAAC,EAAE;YAC/C,OAAO,IAAI,KAAK,GAAG,CAAC;QACtB,CAAC,CAAC,CAAC;QACH,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE;YACpB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;SACnC;IACH,CAAC;IAED,KAAK;QACH,6BAA6B;QAC7B,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED,IAAI,WAAW;QACb,OAAO,CAAE,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACrD,CAAC;;4EAzCU,cAAc;+GAAd,cAAc,WAAd,cAAc;;;;;;;;;;;;;;;;;;;;;;;ACOpB,MAAM,sBAAsB;IA+BjC,YAAoB,iBAAoC;QAApC,sBAAiB,GAAjB,iBAAiB,CAAmB;IAAI,CAAC;IApB7D,4DAA4D;IAC5D,YAAY;IACZ,0CAA0C;IAC1C,0BAA0B;IAC1B,MAAM;IACN,KAAK;IAEL,QAAQ;QACR,4BAA4B;QAC1B,kCAAkC;QAClC,uDAAuD;QACvD,OAAO,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,iBAAiB;IAC7C,CAAC;IACD,QAAQ;QACR,4BAA4B;QAC1B,kDAAkD;QAClD,uDAAuD;QACvD,OAAO,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,iBAAiB;IAC/D,CAAC;IAID,QAAQ;QACN,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,CAC3D,EAAE,CAAC,EAAE;YACH,OAAO,CAAC,GAAG,CAAC,gBAAgB,GAAG,EAAE,CAAC,CAAC;YACnC,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACrB,CAAC,CACF,CAAC;QACA,4CAA4C;QAC9C,4DAA4D;IAC9D,CAAC;IAED,kBAAkB;IAClB,6CAA6C;IAC7C,6DAA6D;IAC7D,IAAI;IAEJ,WAAW;QACT,mCAAmC;QACnC,8BAA8B;QAC9B,IAAI;QAEJ,IAAI,IAAI,CAAC,iBAAiB,CAAC,eAAe,GAAG,CAAC,EAAE;YAC9C,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC;SAClC;QAED,uDAAuD;QAEvD,2CAA2C;QAC3C,4DAA4D;QAC5D,oEAAoE;IACtE,CAAC;IAED,WAAW;QACT,iDAAiD;QACjD,8BAA8B;QAC9B,IAAI;QAEJ,IAAI,IAAI,CAAC,iBAAiB,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,GAAG,CAAC,EAAE;YAC9D,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC;SAClC;QAED,uDAAuD;QAEvD,2DAA2D;QAC3D,4DAA4D;QAC5D,oEAAoE;IACtE,CAAC;;4FA/EU,sBAAsB;oHAAtB,sBAAsB;QCVnC,yEAAoF;QACpC,8IAAS,iBAAa,IAAC;QAA8B,qEAAuC;QAAA,4DAAS;QACnJ,4EAAmG;QAArD,8IAAS,iBAAa,IAAC;QAA8B,qEAAwC;QAAA,4DAAS;;QAD5I,0DAAqC;QAArC,2JAAqC;QACrC,0DAAqC;QAArC,2JAAqC;;;;;;;;;;;;;;;;;;;;;;ACFqE;AAC5D;AACY;AAChC;;;AAO7B,MAAM,0BAA0B;IAcrC;QAXS,eAAU,GAAG,KAAK,CAAC;QACnB,oBAAe,GAAG,gCAAgC;QACjD,qBAAgB,GAAG,IAAI,uDAAY,EAAU,CAAC;QAExD,gBAAW,GAAG,IAAI,qDAAS,CACzB;YACE,aAAa,EAAE,IAAI,uDAAW,CAAC,EAAE,CAAC;SACnC,CACF,CAAC;QACF,0BAAqB,GAAG,IAAI,8CAAY,EAAE,CAAC;IAE3B,CAAC;IAEjB,QAAQ;QACN,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAChE,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;SAC5B;QACD,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAC5B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,YAAY,CAAC,IAAI,CACrD,4DAAY,CAAC,GAAG,CAAC,EACjB,oEAAoB,EAAE,CACvB,CAAC,SAAS,CACT,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,CAC9E,CACF;IACH,CAAC;IAED,WAAW,CAAC,OAAsB;QAChC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAClE,CAAC;IAED,WAAW;QACT,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,CAAC;IAC3C,CAAC;IAED,YAAY;QACV,iDAAiD;QACjD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACrD,CAAC;;oGA1CU,0BAA0B;wHAA1B,0BAA0B;QCVvC,0EAA6C;QAErC,sEAAqJ;QACrJ,4EAAiF;QAAzB,kJAAS,kBAAc,IAAC;QAAC,gEAAK;QAAA,4DAAS;;QAHpF,sFAAyB;QAEuD,0DAAoC;QAApC,6FAAoC;;;;;;;;;;;;;;;;;;;ACFrD;AAChD;;AAQ3B,MAAM,oBAAoB;IAO/B;QALS,eAAU,GAAG,KAAK,CAAC;QAElB,SAAI,GAA0B,IAAI,uDAAY,EAAE,CAAC;QACjD,WAAM,GAA0B,IAAI,uDAAY,EAAE,CAAC;IAE7C,CAAC;IAEjB,WAAW;QACT,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,MAAM,YAAY,GAAG,IAAI,4CAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,0BAA0B,CAAC,CAAC,CAAC;YACpF,YAAY,CAAC,IAAI,EAAE,CAAC;SACrB;IACH,CAAC;IAED,WAAW;QACT,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC;IAED,aAAa;QACX,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;;wFAxBU,oBAAoB;kHAApB,oBAAoB;QCTjC,yEAAwL;QAIpH,mFAAwB;QAAA,4DAAK;QAEvF,yEAAwB;QACjB,kIAAuE;QAAA,4DAAI;QAElF,yEAA0B;QAE4D,6IAAS,mBAAe,IAAC;QAAC,mEAAO;QAAA,4DAAS;QAE5H,2EAAwF;QACP,6IAAS,iBAAa,IAAC;QAAC,gEAAI;QAAA,4DAAS;;;;;;;;;;;;;;;;;;;;;ACRtE;;;;AAGvD,MAAM,UAAU;IAErB,YAAoB,WAAwB,EAAU,MAAc;QAAhD,gBAAW,GAAX,WAAW,CAAa;QAAU,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;IAExE,WAAW,CACT,IAA4B,EAC5B,KAA0B;QACxB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE;YAClC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,wEAAc,CAAC,iFAAuB,CAAC,CAAC,CAAC,CAAC;YAC7E,OAAO,KAAK,CAAC;SACd;QACH,OAAO,IAAI,CAAC;IACd,CAAC;;oEAZU,UAAU;2GAAV,UAAU,WAAV,UAAU;;;;;;;;;;;;;;;;;;;;ACLmC;;;;AAOnD,MAAM,sBAAsB;IAEjC,YACU,MAAc,EACd,WAAwB;QADxB,WAAM,GAAN,MAAM,CAAQ;QACd,gBAAW,GAAX,WAAW,CAAa;IAC5B,CAAC;IAEP,QAAQ;QACN,IAAI,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE;YACpC,MAAM,SAAS,GAAG,cAAc,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;YACjE,IAAI,SAAS,EAAE;gBACb,4DAAM,CAAC,+BAA+B,SAAS,EAAE,EAAE,kEAAgB,CAAC,CAAC;gBACrE,cAAc,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAC;gBAClD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;aACtC;iBAAM;gBACL,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;aAChC;SACF;IACH,CAAC;;4FAlBU,sBAAsB;oHAAtB,sBAAsB;QCXnC,sEAAK;QACA,6EAAkB;QAAA,4DAAI;;;;;;;;;;;;;;;;;;;;;ACAsD;AAIrB;;;;;;;ICJ1D,yEAAyK;IAC/H,wVAAS,kCAAwB,IAAC;IAAuB,4DAAS;IAC1G,yEAAiB;IAGwC,uDAAkB;IAAA,4DAAO;IAGhF,yEAAuD;IACrD,uDACF;;IAAA,4DAAM;IAMN,0EAAuD;IAAA,wDAA8C;;IAAA,4DAAM;IAC3G,0EAAqD;IACO,yVAAS,kCAAwB,IAAC;IAAC,wDAA+B;IAAA,4DAAS;;;;;IAlB5F,qFAA4B;IAK7D,0DAA4C;IAA5C,4KAA4C;IAAC,0DAAkB;IAAlB,kFAAkB;IAIvE,0DACF;IADE,yKACF;IAMuD,0DAA8C;IAA9C,mLAA8C;IAEN,0DAA+B;IAA/B,+GAA+B;;ADM7H,MAAM,cAAc;IAEzB,YAAoB,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;IAAI,CAAC;IAEnD,QAAQ,KAAK,CAAC;IAEd,cAAc,CAAC,OAAe;QAC5B,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;IAClC,CAAC;IAED,iBAAiB,CAAC,UAAU;QAC1B,IAAI,qBAAqB,GAAG,EAAE,CAAC;QAC/B,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,EAAE;YACjD,qBAAqB,GAAG,KAAK,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,IAAI,CAAC;SAChF;QACD,OAAO,qBAAqB,CAAC;IAC/B,CAAC;IAED,kBAAkB,CAAC,UAAkB;QACnC,IAAI,eAAe,GAAG,EAAE,CAAC;QACzB,QAAQ,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE;YACjD,KAAK,6DAAiB;gBACpB,eAAe,GAAG,WAAW,CAAC;gBAC9B,MAAM;YACR,KAAK,+DAAmB;gBACtB,eAAe,GAAG,YAAY,CAAC;gBAC/B,MAAM;YACR,KAAK,4DAAgB;gBACnB,eAAe,GAAG,SAAS,CAAC;gBAC5B,MAAM;YACR,KAAK,+DAAmB;gBACtB,eAAe,GAAG,YAAY,CAAC;gBAC/B,MAAM;YACR;gBACE,eAAe,GAAG,cAAc,CAAC;SACpC;QACD,OAAO,eAAe,CAAC;IACzB,CAAC;;4EAzCU,cAAc;4GAAd,cAAc;QCzB3B,yEAAuB;QACrB,4GAqBM;QAER,4DAAM;;QAvBmB,0DAAW;QAAX,+EAAW;mcDUtB;YACV,4DAAO,CAAC,iBAAiB,EAAE;gBACzB,0DAAK,CAAC,OAAO,EAAE,0DAAK,CAAC,EAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAC,CAAC,CAAC;gBAClD,+DAAU,CAAC,WAAW,EAAE;oBACtB,0DAAK,CAAC,EAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAC,CAAC;oBAClC,4DAAO,CAAC,GAAG,EAAE,0DAAK,CAAC,EAAC,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAC,CAAC,CAAC;iBAC7C,CAAC;gBACF,+DAAU,CAAC,WAAW,EAAE;oBACtB,0DAAK,CAAC,EAAC,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAC,CAAC;oBAC9B,4DAAO,CAAC,GAAG,EAAE,0DAAK,CAAC,EAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,EAAC,CAAC,CAAC;iBAC/C,CAAC;aACH,CAAC;SACH;;;;;;;;;;;;;;;;;;;;;AEpB6B;AAEhC,yCAAyC;AACc;;AAEvD,IAAY,WAMX;AAND,WAAY,WAAW;IACrB,+CAAK;IACL,mDAAO;IACP,6CAAI;IACJ,mDAAO;IACP,+CAAK;AACP,CAAC,EANW,WAAW,KAAX,WAAW,QAMtB;AAAA,CAAC;AAQK,MAAM,WAAW,GAKlB;IACJ,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE;QACnB,IAAI,EAAE,OAAO;QACb,GAAG,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;QAC1D,kBAAkB,EAAE,IAAI;KACzB;IACD,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE;QACrB,IAAI,EAAE,SAAS;QACf,GAAG,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;QACzD,kBAAkB,EAAE,IAAI;KACzB;IACD,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE;QAClB,IAAI,EAAE,MAAM;QACZ,GAAG,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;QACzD,kBAAkB,EAAE,IAAI;KACzB;IACD,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE;QACrB,IAAI,EAAE,SAAS;QACf,GAAG,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;QACxD,kBAAkB,EAAE,EAAE;KACvB;IACD,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE;QACnB,IAAI,EAAE,OAAO;QACb,GAAG,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;QACxD,kBAAkB,EAAE,IAAI;KACzB;CACF,CAAC;AAGK,MAAM,YAAY;IAKvB;QAJA,YAAO,GAAuB,IAAI,GAAG,EAAE,CAAC;QACxC,gBAAW,GAAqB,IAAI,GAAG,EAAE,CAAC;QAC1C,gBAAW,GAAG,CAAC,CAAC;IAEA,CAAC;IAEjB,0GAA0G;IAE1G,IAAI,MAAM;QACR,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,WAAW;QACT,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE;YAClD,aAAa,CAAC,UAAU,CAAC,CAAC;SAC3B;IACH,CAAC;IAED,WAAW,CAAC,SAAiB,EAAE,OAAe,EAAE,IAAY,EAAE,QAA4B;QACxF,MAAM,KAAK,GAAG,IAAI,yCAAK,EAAE,CAAC;QAC1B,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAC9B,KAAK,CAAC,IAAI,GAAG,SAAS,CAAC;QACvB,QAAQ,SAAS,EAAE;YACjB,KAAK,WAAW,CAAC,OAAO;gBACtB,KAAK,CAAC,QAAQ,GAAG,SAAS,CAAC;gBAC3B,KAAK,CAAC,SAAS,GAAG,EAAC,eAAe,EAAE,IAAI,EAAC,CAAC;gBAC1C,MAAM;YACR,KAAK,WAAW,CAAC,IAAI;gBACnB,KAAK,CAAC,QAAQ,GAAG,aAAa,CAAC;gBAC/B,KAAK,CAAC,SAAS,GAAG,EAAC,YAAY,EAAE,IAAI,EAAC,CAAC;gBACvC,MAAM;YACR,KAAK,WAAW,CAAC,OAAO;gBACtB,KAAK,CAAC,QAAQ,GAAG,SAAS,CAAC;gBAC3B,KAAK,CAAC,SAAS,GAAG,EAAC,eAAe,EAAE,IAAI,EAAC,CAAC;gBAC1C,MAAM;YACR,KAAK,WAAW,CAAC,KAAK;gBACpB,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC;gBACzB,KAAK,CAAC,SAAS,GAAG,EAAC,cAAc,EAAE,IAAI,EAAC,CAAC;gBACzC,MAAM;YACR;gBACE,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC;gBACpB,KAAK,CAAC,SAAS,GAAG,EAAC,iBAAiB,EAAE,IAAI,EAAC,CAAC;SAC/C;QACD,IAAI,OAAO,IAAI,IAAI,EAAE;YACnB,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;YACxB,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;YAClB,IAAI,QAAQ,EAAE;gBACZ,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC,UAAU,YAAY,QAAQ,CAAC,MAAM,GAAG,CAAC;aACxF;SACF;aAAM,IAAI,QAAQ,EAAE;YACnB,KAAK,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;YAChD,KAAK,CAAC,OAAO,GAAG,QAAQ,CAAC,UAAU,IAAI,eAAe,CAAC;SACxD;QACD,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC,OAAO,EAAE;YACtC,KAAK,CAAC,qBAAqB,GAAG,EAAE,CAAC;SAClC;QACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAClC,IAAI,WAAW,CAAC,SAAS,CAAC,CAAC,kBAAkB,EAAE;YAC7C,KAAK,CAAC,qBAAqB,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC;YACxE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,WAAW,CACxC,GAAG,EAAE;gBACH,KAAK,CAAC,qBAAqB,EAAE,CAAC;gBAC9B,IAAI,KAAK,CAAC,qBAAqB,IAAI,CAAC,EAAE;oBACpC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC9C,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBAC9B,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;iBACnC;YACH,CAAC,EACC,IAAI,CAAC,CACR,CAAC;SACH;QACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,YAAY,CAAC,OAAe;QAC1B,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC7B,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAED,YAAY,CAAC,EAAa,EAAE,GAAuB;QACjD,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACvD,CAAC;IAED,GAAG,CAAC,KAAa,EAAE,OAAe;QAChC,IAAI,MAAM,CAAC,OAAO,EAAE;YAClB,WAAW,CAAC,KAAK,CAAC,CAAC,GAAG;YACpB,wGAAwG;YACxG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,WAAW,IAAI,yEAAmB,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE,CAC3G,CAAC;SACH;IACH,CAAC;;wEA7FU,YAAY;6GAAZ,YAAY,WAAZ,YAAY;;;;;;;;;;;;;;;;ACxDlB,MAAM,KAAK;CASjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACK4H;AACzD;AAE1B;AACK;AAEoB;AACN;;;;;;AAK7D,+FAA+F;AAE/F,uFAAuF;AACvF,oHAAoH;AAEpH,IAAY,eAKX;AALD,WAAY,eAAe;IACvB,8CAA2B;IAC3B,sDAAmC;IACnC,gDAA6B;IAC7B,wDAAqC;AACzC,CAAC,EALW,eAAe,KAAf,eAAe,QAK1B;AAEM,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAErC,MAAM,YAAY,GAAG,yEAAkB,CAAC;AAGjC,MAAM,WAAW;IAwBpB,yGAAyG;IAEzG,YACY,aAA4B,EAC5B,IAAgB,EAChB,SAAuB,EACvB,WAAwB,EACxB,oBAA0C;QAJ1C,kBAAa,GAAb,aAAa,CAAe;QAC5B,SAAI,GAAJ,IAAI,CAAY;QAChB,cAAS,GAAT,SAAS,CAAc;QACvB,gBAAW,GAAX,WAAW,CAAa;QACxB,yBAAoB,GAApB,oBAAoB,CAAsB;QA7BtD,+CAA+C;QAC/C,aAAQ,GAAG,KAAK,CAAC;QAEjB,6BAAwB,GAAG,IAAI,iDAAe,CAAU,KAAK,CAAC,CAAC;QAC/D,oBAAe,GAAG,IAAI,iDAAe,CAAU,KAAK,CAAC,CAAC;QACtD,oBAAe,GAAG,IAAI,iDAAe,CAAU,KAAK,CAAC,CAAC;QACtD,mBAAc,GAAG,IAAI,iDAAe,CAAS,IAAI,kDAAM,EAAE,CAAE,CAAC;QAC5D,oBAAe,GAAG,IAAI,yCAAO,EAAO,CAAC;QACrC,yBAAoB,GAAG,IAAI,yCAAO,EAAU,CAAC;QAE7C,oBAAe,GAAG,IAAI,8CAAY,EAAE,CAAC;QACrC,qBAAgB,GAAG,IAAI,iDAAe,CAAkB,EAAE,CAAC,CAAC;QAE5D,sBAAiB,GAAG,IAAI,+CAAa,CAAsB,CAAC,CAAC,CAAC;QAC9D,2BAAsB,GAAG,IAAI,+CAAa,CAAe,CAAC,CAAC,CAAC;QAC5D,2BAAsB,GAAG,IAAI,+CAAa,CAAM,CAAC,CAAC,CAAC;QACnD,4BAAuB,GAAG,IAAI,+CAAa,CAAU,CAAC,CAAC,CAAC;QAEhD,sBAAiB,GAAG,IAAI,wDAAY,EAAE,CAAC;QACvC,4BAAuB,GAA8C,EAAE,CAAC;QACxE,uBAAkB,GAAwB,EAAE,CAAC;QAWjD,IAAI,CAAC,eAAe,CAAC,GAAG,CACpB,IAAI,CAAC,eAAe,CAAC,IAAI,CACrB,yDAAS,CAAE,CAAC,GAAG,EAAE,EAAE,CAAC,8CAAQ,CAAC,IAAI,CAAC,CAAC,CACtC;aACA,SAAS,CACN,CAAC,cAAc,EAAE,EAAE;YACf,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACnD,CAAC,CACJ,CACJ,CAAC;QAEF,oEAAoE;QACpE,sCAAsC;QACtC,mEAAmE;QACnE,4CAA4C;QAC5C,6BAA6B;QAC7B,IAAI;IACR,CAAC;IAED,WAAW;QACP,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QACtC,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;IACvC,CAAC;IAED,cAAc;;QACV,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,0EAA0E;QAC1E,yEAAyE;QACzE,OAAO;QACP,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,YAAY,GAAG,CAAC,WAAI,CAAC,QAAQ,0CAAE,aAAa,CAAC,OAAO,CAAC,KAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEpF,mEAAmE;QACnE,yEAAyE;QACzE,KAAK;QACL,2BAA2B;QAC3B,gFAAgF;IACpF,CAAC;IAED,WAAW;QACP,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC7B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;IAC9B,CAAC;IAED,eAAe;QACX,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC7B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;IAC9B,CAAC;IAED,KAAK;QACD,wBAAwB;QACxB,oCAAoC;QACpC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;IAClC,CAAC;IAED,MAAM;QACF,iFAAiF;QACjF,yBAAyB;QACzB,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;IAC9B,CAAC;IAED,aAAa;QACT,8FAA8F;QAC9F,yBAAyB;QACzB,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;IAC9B,CAAC;IAED,kBAAkB;QACd,4EAA4E;QAC5E,8DAA8D;QAC9D,uCAAuC;QACvC,uDAAM,CAAC,oDAAoD,EAAE,6DAAgB,CAAC,CAAC;QAC/E,mCAAmC;QACnC,wCAAwC;QACxC,4EAA4E;QAC5E,KAAK;QAEL,MAAM,sBAAsB,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC,CAAC;QAE/H,IAAI,sBAAsB,EAAE;YACxB,IAAI,CAAC,cAAc,EAAE,CAAC;SACzB;aAAM;YACH,IAAI,CAAC,WAAW,EAAE,CAAC;SACtB;QACD,OAAO,sBAAsB,CAAC;IAClC,CAAC;IAED,qBAAqB,CAAC,MAAc;QAChC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC;IACjE,CAAC;IAED,cAAc,CAAC,KAAW;QACtB,IAAI,QAAQ,GAAG,EAAE,CAAC;QAClB,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE;YAC7D,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;YAC7C,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,8BAA8B,CAAC,QAAQ,CAAC,CAAC,CAAC;SACrF;IACL,CAAC;IAED,qBAAqB,CAAC,YAA0B;QAC5C,IAAI,CAAC,iBAAiB,GAAG,YAAY,CAAC;IAC1C,CAAC;IAED,gBAAgB;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAChB,GAAG,YAAY,iBAAiB,CACnC,CAAC,IAAI,CACF,oDAAG,CAAE,IAAI,CAAE,EAAE;YACT,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YAC9B,oGAAoG;YACpG,OAAO,EAAE,CAAC;QACd,CAAC,CAAC,EACF,2DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,iDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAClD;IACL,CAAC;IAED,qBAAqB;QACjB,IAAI,CAAC,eAAe,CAAC,GAAG,CACpB,IAAI,CAAC,gBAAgB,EAAE,CAAC,SAAS,CAC7B,EAAE,CAAC,EAAE;YACD,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC;YAC7B,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAChC,IAAI,CAAC,uBAAuB,GAAG,EAAE,CAAC,MAAM,CAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,GAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACjG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QACnE,CAAC,EACD,GAAG,CAAC,EAAE,GAAE,CAAC,CACZ,CACJ;IACL,CAAC;IAED,IAAI,iBAAiB;QACjB,OAAO,IAAI,CAAC,kBAAkB;IAClC,CAAC;IACD,IAAI,sBAAsB;QACtB,OAAO,IAAI,CAAC,uBAAuB;IACvC,CAAC;IAED,IAAI,EAAE;QACF,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;IAC1C,CAAC;IAED,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC;IAC5C,CAAC;IAED,qCAAqC;IACrC,gEAAgE;IAChE,IAAI;IAEJ,IAAW,QAAQ;QACf,uDAAuD;QACvD,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,IAAW,eAAe;QACtB,OAAO,IAAI,CAAC,wBAAwB,CAAC,QAAQ,EAAE,CAAC;IACpD,CAAC;IACD,IAAW,eAAe,CAAC,KAAc;QACrC,4DAA4D;QAC5D,iDAAiD;QACjD,IAAI;QACJ,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9C,CAAC;IAED,IAAW,WAAW;QAClB,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC;IAC3C,CAAC;IACD,IAAW,WAAW,CAAC,KAAc;QACjC,IAAI,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,KAAK,KAAK,EAAE;YAC3C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACpC;IACL,CAAC;IAED,IAAW,YAAY;QACnB,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC;IAC3C,CAAC;IACD,IAAW,YAAY,CAAC,KAAc;QAClC,IAAI,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,KAAK,KAAK,EAAE;YAC3C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACpC;IACL,CAAC;IAED,IAAW,QAAQ;;QACf,+CAA+C;QAC/C,OAAO,UAAI,CAAC,QAAQ,0CAAE,cAAc,CAAC;IACzC,CAAC;IAED,IAAW,OAAO;;QACd,+CAA+C;QAC/C,OAAO,UAAI,CAAC,QAAQ,0CAAE,QAAQ,CAAC;IACnC,CAAC;IAED,IAAW,gBAAgB;QACvB,OAAO,IAAI,CAAC,iBAAiB;IACjC,CAAC;IAED,sBAAsB,CAAC,GAAW;QAC9B,mDAAmD;QACnD,OAAO,EAAE,CAAC;IACd,CAAC;IAEM,YAAY;QACf,MAAM,KAAK,GAAG,IAAI,CAAC,CAAG,qCAAqC;QAE3D,IAAI,YAAoB,CAAC;QACzB,OAAO,mDAAY,CAAC,oBAAoB,EAAE,UAAU,KAAa;YAC7D,IAAI,CAAC,KAAK,IAAI,YAAY,EAAE;gBACxB,iDAAU,CAAC,YAAY,CAAC,CAAC;aAC5B;YACD,OAAO,KAAK,CAAC;QACjB,CAAC,CAAC,EAAE,CAAC;QAEL,SAAS,oBAAoB,CAAC,EAAO;YACjC,IAAI,CAAC,GAAG,EAAE,CAAC;YAEX,6GAA6G;YAC7G,mBAAmB;YACnB,oEAAoE;YACpE,gCAAgC;YAChC,4BAA4B;YAC5B,eAAe;YACf,wBAAwB;YACxB,wBAAwB;YACxB,QAAQ;YACR,MAAM;YACN,OAAO,CAAC,CAAC;QACb,CAAC;IACL,CAAC;;sEAvQQ,WAAW;6GAAX,WAAW,WAAX,WAAW;;;;;;;;;;;;;;;;;;AChCjB,MAAM,kBAAkB;IAC7B,aAAa,CAAC,SAAiC;QAC7C,OAAO,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACpE,CAAC;;oFAHU,kBAAkB;mHAAlB,kBAAkB,WAAlB,kBAAkB,mBAFjB,MAAM;;;;;;;;;;;;;;;;;;;;ACTkC;AAGO;;AAE7D,IAAY,QAKX;AALD,WAAY,QAAQ;IAChB,yCAAK;IACL,6CAAO;IACP,uCAAI;IACJ,6CAAO;AACX,CAAC,EALW,QAAQ,KAAR,QAAQ,QAKnB;AAEM,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG;IAC3B,MAAM,aAAa,GAAkB,IAAI,aAAa,EAAE,CAAC;IACzD,0EAA0E;IAC1E,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AAC3C,CAAC;AAAA,CAAC;AACF,oCAAoC;AAG7B,MAAM,aAAa;IA6DtB;QA5DQ,mBAAc,GAAG,EAAE,CAAC;QACrB,YAAO,GAAG;YACb,KAAK,EAAE,+EAAwB;YAC/B,QAAQ,EAAE;gBACN,OAAO,EAAE;oBACL,KAAK,EAAE,CAAC;oBACR,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;iBACnC;gBACD,SAAS,EAAE;oBACP,KAAK,EAAE,CAAC;oBACR,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;iBAClC;gBACD,MAAM,EAAE;oBACJ,KAAK,EAAE,CAAC;oBACR,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,qBAAqB;iBACxD;gBACD,SAAS,EAAE;oBACP,KAAK,EAAE,CAAC;oBACR,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;iBACjC;aACJ;YACD,EAAE,EAAE,iBAAiB;YACrB,MAAM,EAAE,CAAE,GAAW,EAAE,QAAyB,EAAE,EAAE;gBAChD,IAAI,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC;gBACvC,IAAI,OAAM,CAAC,QAAQ,CAAC,KAAK,QAAQ,EAAE;oBAC/B,eAAe,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC;iBAC9D;qBAAM,IAAI,OAAM,CAAC,QAAQ,CAAC,KAAK,QAAQ,EAAE;oBACtC,eAAe,GAAG,QAAQ,CAAC;iBAC9B;gBACD,MAAM,gBAAgB,GAAG,IAAI,IAAI,CAAC,cAAc,IAAI,mBAAmB,IAAI,CAAC;gBAC5E,IAAI,CAAC,OAAO,CAAC,GAAG;gBACZ,wIAAwI;gBACxI,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,UAAU,IAAI,QAAQ,CAAC,eAAe,CAAC,IAAI,QAAQ,CAAC,eAAe,CAAC,KAAG,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,EACpJ,eAAe,CAClB,CAAC;YACN,CAAC;YACD,GAAG,EAAE,CAAC,GAAW,EAAE,QAAiB,EAAE,EAAE;gBACpC,IAAI,MAAM,CAAC,OAAO,EAAE;oBAChB,IAAI,YAAY,GAAG,MAAM,CAAC;oBAC1B,IAAI,QAAQ,EAAE;wBACV,YAAY,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;qBACrC;yBAAM;wBACH,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;qBAC5D;oBACD,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;wBACjE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;qBAChD;iBACJ;YACL,CAAC;SACJ,CAAC;QAEK,UAAK,GAAG,OAAO,CAAC;QAEvB,kDAAkD;QAClD,oDAAoD;QACpD,iDAAiD;QAC1C,uCAAkC,GAAG,GAAG,CAAC;QACzC,yCAAoC,GAAG,GAAG,CAAC;QAC3C,sCAAiC,GAAG,IAAI,CAAC;IAEjC,CAAC;IAEhB,IAAW,UAAU;QACjB,OAAO,WAAW,GAAG,GAAG,GAAG,0EAAmB,CAAC;IACnD,CAAC;IAAA,CAAC;IAEF,IAAW,UAAU;QACjB,OAAO;YACH,MAAM,EAAE,2EAAoB;YAC5B,QAAQ,EAAE,2EAAoB;YAC9B,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,aAAa;YACnD,yBAAyB,EAAE,KAAK;YAChC,SAAS,EAAE;gBACP,EAAE,CAAE,4EAAqB,CAAE,EAAE,2EAAoB,EAAE;aACtD;YACD,qBAAqB,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,aAAa;YAC7D,mBAAmB,EAAE,GAAG;SAC3B,CAAC;IACN,CAAC;IAED,IAAW,cAAc;QACrB,OAAO,2EAAoB,CAAC;IAChC,CAAC;IAED,IAAW,YAAY;QACnB,OAAO,yEAAkB,CAAC;IAC9B,CAAC;IAED,IAAW,OAAO;QACd,OAAO,wDAAS,EAAE,CAAC;IACvB,CAAC;IAED,IAAW,aAAa,CAAC,KAAa;QAClC,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;IAChC,CAAC;IAED,IAAW,6BAA6B;QACpC,OAAO,gGAA4C,IAAI,KAAK;IAChE,CAAC;IAED,IAAW,SAAS;QAChB,OAAO,4EAAwB,IAAI,KAAK;IAC5C,CAAC;IAED,IAAW,mBAAmB;QAC1B,OAAO,sFAA+B,CAAC;IAC3C,CAAC;IAED,IAAW,eAAe;QACtB,OAAO,kFAA2B,CAAC;IACvC,CAAC;IAED,IAAW,aAAa;QACpB,OAAO,gFAAyB,IAAI,SAAS,CAAC;IAClD,CAAC;IAED,IAAW,eAAe;QACtB,OAAO,kFAA2B,IAAI,EAAE,CAAC;IAC7C,CAAC;;0EAvHQ,aAAa;8GAAb,aAAa,WAAb,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;ACnB6B;AAEvD,mDAAmD;AAEQ;AACV;AACW;AACT;AAEuB;AACnB;AAGO;AACS;;;AAEvE,MAAM,MAAM,GAAW;IACrB,iGAAiG;IAChG,EAAC,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,sEAAqB,EAAC;IACtD,EAAC,IAAI,EAAE,iBAAiB,EAAE,SAAS,EAAE,oEAAkB,EAAC;IACxD,EAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,0DAAa,EAAE,WAAW,EAAE,CAAC,0DAAS,CAAC,EAAC;IAClE,EAAC,IAAI,EAAE,eAAe,EAAE,SAAS,EAAE,kFAAsB,EAAC;IAC1D,EAAC,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,4DAAc,EAAC;IAC1C,EAAC,IAAI,EAAE,oBAAoB,EAAE,SAAS,EAAE,qEAAkB,EAAC;IAC3D,EAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,+DAAa,EAAC;CACtC,CAAC;AAOC,MAAM,iBAAiB;;kFAAjB,iBAAiB;8GAAjB,iBAAiB;mHAFjB,CAAC,uEAAoB,CAAC,YAFxB,CAAC,kEAAqB,CAAC,MAAM,CAAC,CAAC,EAC9B,yDAAY;mIAGX,iBAAiB,oFAHlB,yDAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC7BuB;AACF;AAEO;AACS;AACG;AACJ;AACL;AACH;AACM;AAEP;AACQ;AACV;AACW;AACT;AACW;AACE;AACf;AACmB;AAEhB;AACE;AACE;AACC;AACN;AAED;AACW;;AA8CtD,MAAM,UAAU;;oEAAV,UAAU;wGAAV,UAAU;6GATV;QACT,6DAAU;QACV,+DAAW;QACX,iEAAY;QACZ,mEAAa;QACb,mEAAiB;QACjB,6DAAc;KACf,YAzCQ;YACP,0DAAY;YACZ,4DAAW;YACX,qEAAc;YACd,wEAAe;YACf,wDAAW;YACX,wEAAa;YACb,oEAAa;YACb,+DAAY;YACZ,4DAAW;YACX,mEAAiB;SAClB;oIAgCU,UAAU,mBA9BnB,0EAAsB;QACtB,0DAAa;QACb,4DAAc;QACd,oEAAkB;QAClB,2DAAa;QACb,8EAAsB;QACtB,6DAAc;QACd,sEAAkB;QAClB,wEAAmB,aApBnB,0DAAY;QACZ,4DAAW;QACX,qEAAc;QACd,wEAAe;QACf,wDAAW;QACX,wEAAa;QACb,oEAAa;QACb,+DAAY;QACZ,4DAAW;QACX,mEAAiB,aAcjB,0EAAsB;QACtB,0DAAa;QACb,4DAAc;QACd,oEAAkB;QAClB,2DAAa;QACb,8EAAsB;QACtB,6DAAc;QACd,sEAAkB;QAClB,wEAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IEpDb,6EAAsJ;IAA/B,oSAAS,aAAM,IAAC;IAAe,sEAAiC;IAAC,gEAAI;IAAA,4DAAS;;;;IACrM,6EAAyJ;IAAjC,oSAAS,eAAQ,IAAC;IAAe,iEAAM;IAAA,4DAAS;;ADPlL,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,2DAAQ;IACR,2DAAQ;AACV,CAAC,EAHW,cAAc,KAAd,cAAc,QAGzB;AAAA,CAAC;AAEF,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IAC1B,2DAAM;IACN,uDAAI;AACN,CAAC,EAHW,gBAAgB,KAAhB,gBAAgB,QAG3B;AAQM,MAAM,kBAAkB;IAuB7B,YACU,MAAc,EACd,WAAwB,EACxB,KAAqB,EACrB,cAA8B;QAH9B,WAAM,GAAN,MAAM,CAAQ;QACd,gBAAW,GAAX,WAAW,CAAa;QACxB,UAAK,GAAL,KAAK,CAAgB;QACrB,mBAAc,GAAd,cAAc,CAAgB;QAzBxC,qBAAgB,GAAG,gBAAgB,CAAC;QAKpC,oBAAe,GAAG;YAChB,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE;gBACzB,KAAK,EAAE,gBAAgB;gBACvB,WAAW,EAAE,gEAAgE;gBAC7E,OAAO,EAAE,CAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;aACrE;YACD,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE;gBACzB,KAAK,EAAE,kBAAkB;gBACzB,WAAW,EAAE;;;OAGZ;gBACD,OAAO,EAAE,CAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC;aACzC;SACF,CAAC;IAOE,CAAC;IAEL,QAAQ;QACN,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,qEAAqE;QAClG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;YACvB,IAAI,CAAC,aAAa,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;SAC7F;IACH,CAAC;IAED,IAAI;QACF,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACjC,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;IAC5B,CAAC;;oFA3CU,kBAAkB;gHAAlB,kBAAkB;QCtB/B,yEAA2C;QAIlB,qEAAiD;QAAC,sFAA0B;QAAA,4DAAO;QAEtG,yEAAuB;QACE,uDAAwC;QAAA,4DAAK;QACpE,wEAAqB;QAAA,wDAA8C;QAAA,4DAAI;QAEzE,0EAAyB;QAErB,uHAAqM;QACrM,uHAAwK;QAC1K,4DAAM;;QAPiB,0DAAwC;QAAxC,6GAAwC;QAC1C,0DAA8C;QAA9C,mHAA8C;QAIxD,0DAA4E;QAA5E,oJAA4E;QAC5E,0DAA8E;QAA9E,sJAA8E;;;;;;;;;;;;;;;;;;;ACR1F,MAAM,2BAA2B;IAGtC,YAAoB,QAAmB,EAAU,EAAc;QAA3C,aAAQ,GAAR,QAAQ,CAAW;QAAU,OAAE,GAAF,EAAE,CAAY;QADtD,uBAAkB,GAAG,KAAK,CAAC;IAC+B,CAAC;IAEpE,WAAW;QACT,gFAAgF;QAChF,IAAI,CAAC,IAAI,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE;YAC9E,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;SAC9D;aAAM;YACL,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;SACjE;IACH,CAAC;;sGAZU,2BAA2B;yHAA3B,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACFqC;AAMnC;;;;;;;;;;;;;;ICT1C,uEAAwB;IAGZ,2FAA6D;IACjE,6DAAM;IACN,0EAAkC;IAC9B,qFAA8D;IAClE,6DAAM;IACN,0EAA2C;IAEvC,kFAA2D;IAC/D,6DAAM;IAGV,0EAAiB;IAKoB,mFAAsB;IAAA,6DAAO;IAElD,wEAAK;IACD,gFACe;IACnB,6DAAM;IASlB,2EAAkC;IAC9B,wFAA2D;IAC/D,6DAAM;;;IA7BmB,2DAAkB;IAAlB,mFAAkB;IAIrB,2DAAqB;IAArB,sFAAqB;IAYb,2DAA8B;IAA9B,+FAA8B;IAYlC,2DAAa;IAAb,8EAAa;;ADlBxC,MAAM,aAAa;IAcxB,YACS,WAAwB,EACvB,YAA0B,EAC1B,aAA4B,EAC5B,aAA4B,EAC5B,cAA8B;QAJ/B,gBAAW,GAAX,WAAW,CAAa;QACvB,iBAAY,GAAZ,YAAY,CAAc;QAC1B,kBAAa,GAAb,aAAa,CAAe;QAC5B,kBAAa,GAAb,aAAa,CAAe;QAC5B,mBAAc,GAAd,cAAc,CAAgB;QAlBxC,WAAM,GAAG,IAAI,kDAAM,EAAE,CAAC;QACtB,mBAAc,GAAG,CAAC,CAAC;QAEnB,uBAAkB,GAAG,KAAK,CAAC;QAE3B,kBAAa,GAAG;YACd,aAAa,EAAE;gBACb,KAAK,EAAE,kEAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,sCAAsC;aACnC;SACf,CAAC;QASA,IAAI,CAAC,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC;QACrC,qGAAqG;QACrG,IAAI,CAAC,WAAW,CAAC,wBAAwB,CAAC,SAAS,CACjD,MAAM,CAAC,EAAE;YACP,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,qCAAqC,GAAG,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;QAC1F,CAAC,CACF,CAAC;IACH,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC;IAC1C,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC;IACnC,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;IAClC,CAAC;IAED,IAAI,EAAE;QACJ,OAAO,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;IAC7B,CAAC;IAEF,QAAQ;IACR,CAAC;;0EA/CU,aAAa;4GAAb,aAAa;QChB1B,2GAsCM;;QAtCA,iFAAgB;;;;;;;;;;;;;;;;;;;;;;;ACUf,MAAM,kBAAkB;IAG7B,YAAoB,WAAwB,EAAU,KAAqB;QAAvD,gBAAW,GAAX,WAAW,CAAa;QAAU,UAAK,GAAL,KAAK,CAAgB;QAD3E,kBAAa,GAAG,0BAA0B,CAAC;IACoC,CAAC;IAEhF,QAAQ;QACN,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;QACjF,IAAI,eAAe,KAAK,SAAS,EAAE;YACjC,IAAI,CAAC,aAAa,IAAI,oBAAoB,CAAC;SAC5C;IACH,CAAC;IAED,KAAK;QACH,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;;oFAdU,kBAAkB;gHAAlB,kBAAkB;QCV/B,yEAAiD;QAItB,qEAAU;QAAA,4DAAO;QAEpC,yEAAuB;QAGnB,uDACF;QAAA,4DAAI;QAEN,yEAAyB;QAC6B,2IAAS,WAAO,IAAC;QAAe,kEAAM;QAAA,4DAAS;;QAJjG,0DACF;QADE,wOACF;;;;;;;;;;;;;;;;;;;;;;;;;;;ACCH,MAAM,cAAc;IAEzB,YAAoB,WAAwB,EAAU,aAA4B,EAAU,MAAc;QAAtF,gBAAW,GAAX,WAAW,CAAa;QAAU,kBAAa,GAAb,aAAa,CAAe;QAAU,WAAM,GAAN,MAAM,CAAQ;IAAI,CAAC;IAE/G,QAAQ;QACN,0CAA0C;QAC1C,qDAAqD;QACrD,sCAAsC;QACtC,IAAI;IACN,CAAC;IAED,KAAK;QACH,oCAAoC;QACpC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;IAChC,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC;IAC1C,CAAC;;4EAlBU,cAAc;4GAAd,cAAc;QCX3B,yEAAiD;QAIxB,wEAAa;QAAA,4DAAO;QAEvC,yEAAuB;QAGjB,oOACJ;QAAA,4DAAI;QACJ,uEAA2B;QAAG,yIAA6E;QAAA,4DAAI;QAEjH,0EAAyB;QAC6B,uIAAS,WAAO,IAAC;QAAe,kEAAM;QAAA,4DAAS;;QAXjE,0DAAwB;QAAxB,qFAAwB;;;;;;;;;;;;;;;;;;;ACHF;;AAIzD,MAAM,sBAAuB,SAAQ,iEAAoB;IAC5D,KAAK,CAAC,GAAU;QACZ,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;IAC1C,CAAC;;iTAHQ,sBAAsB,SAAtB,sBAAsB;uHAAtB,sBAAsB,WAAtB,sBAAsB;;;;;;;;;;;;;;;;;;;;ACAE;;;;AAK9B,MAAM,mBAAmB;IAE9B,YAAqB,WAAwB,EAAU,MAAc;QAAhD,gBAAW,GAAX,WAAW,CAAa;QAAU,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;IAEzE,WAAW,CACT,IAA4B,EAC5B,KAA0B;QAE1B,OAAO,IAAI,CAAC,WAAW,CAAC,uBAAuB,CAAC,IAAI,CAClD,mDAAG,CACD,CAAC,CAAC,EAAE;YACF,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC;QAC/D,CAAC,CACF,CACF;IACH,CAAC;;sFAfU,mBAAmB;oHAAnB,mBAAmB,WAAnB,mBAAmB,mBAFlB,MAAM;;;;;;;;;;;;;;;;;;ACP6B;AAI1C,MAAM,UAAU,GAAoB;IACvC;QACE,QAAQ,EAAE,MAAM;QAChB,aAAa,EAAE,aAAa;QAC5B,SAAS,EAAE,OAAO;QAClB,aAAa,EAAE,IAAI;QACnB,eAAe,EAAE,+DAAoB;QACrC,eAAe,EAAE,MAAM;QACvB,OAAO,EAAE,IAAI;KACd;IACD;QACE,QAAQ,EAAE,SAAS;QACnB,eAAe,EAAE,+DAAoB;QACrC,eAAe,EAAE,SAAS;QAC1B,OAAO,EAAE;YACP;gBACE,QAAQ,EAAE,kBAAkB;gBAC5B,SAAS,EAAE,0BAA0B;gBACrC,eAAe,EAAE,+DAAoB;gBACrC,eAAe,EAAE,0BAA0B;aAC5C;YACD;gBACE,YAAY,EAAE,IAAI;gBAClB,QAAQ,EAAE,cAAc;gBACxB,SAAS,EAAE,2BAA2B;gBACtC,eAAe,EAAE,+DAAoB;gBACrC,eAAe,EAAE,sBAAsB;aACxC;YACD;gBACE,sBAAsB;gBACtB,QAAQ,EAAE,YAAY;gBACtB,SAAS,EAAE,qBAAqB;gBAChC,eAAe,EAAE,+DAAoB;gBACrC,eAAe,EAAE,oBAAoB;aACtC;YACD;gBACE,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,oBAAoB;gBAC9B,SAAS,EAAE,6BAA6B;gBACxC,eAAe,EAAE,+DAAoB;gBACrC,eAAe,EAAE,oBAAoB;aACtC;YACD;gBACE,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,YAAY;gBACtB,SAAS,EAAE,+BAA+B;gBAC1C,eAAe,EAAE,+DAAoB;gBACrC,eAAe,EAAE,iBAAiB;aACnC;SACF;KACF;IACD;QACE,QAAQ,EAAE,UAAU;QACpB,eAAe,EAAE,+DAAoB;QACrC,eAAe,EAAE,UAAU;QAC3B,OAAO,EAAE;YACP;gBACE,QAAQ,EAAE,WAAW;gBACrB,SAAS,EAAE,YAAY;gBACvB,eAAe,EAAE,+DAAoB;gBACrC,eAAe,EAAE,oBAAoB;aACtC;YACD;gBACE,QAAQ,EAAE,WAAW;gBACrB,SAAS,EAAE,oBAAoB;gBAC/B,eAAe,EAAE,gEAAqB;gBACtC,eAAe,EAAE,oBAAoB;aACtC;YACD;gBACE,QAAQ,EAAE,qCAAqC;gBAC/C,SAAS,EAAE,+BAA+B;gBAC1C,eAAe,EAAE,gEAAqB;gBACtC,eAAe,EAAE,uBAAuB;aACzC;YACD;gBACE,QAAQ,EAAE,6BAA6B;gBACvC,SAAS,EAAE,0BAA0B;gBACrC,eAAe,EAAE,+DAAoB;gBACrC,eAAe,EAAE,uBAAuB;aACzC;YACD;gBACE,QAAQ,EAAE,aAAa;gBACvB,SAAS,EAAE,kBAAkB;gBAC7B,eAAe,EAAE,+DAAoB;gBACrC,eAAe,EAAE,uBAAuB;aACzC;YACD;gBACE,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,iBAAiB;gBAC3B,SAAS,EAAE,kBAAkB;gBAC7B,eAAe,EAAE,gEAAqB;gBACtC,eAAe,EAAE,0BAA0B;gBAC3C,YAAY,EAAE,IAAI;aACnB;YACD;gBACE,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,qBAAqB;gBAC/B,SAAS,EAAE,mBAAmB;gBAC9B,eAAe,EAAE,gEAAqB;gBACtC,eAAe,EAAE,oBAAoB;aACtC;YACD;gBACE,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,wBAAwB;gBAClC,SAAS,EAAE,yBAAyB;gBACpC,eAAe,EAAE,gEAAqB;gBACtC,eAAe,EAAE,oBAAoB;aACtC;SACF;KACF;IACD;QACE,QAAQ,EAAE,OAAO;QACjB,eAAe,EAAE,gEAAqB;QACtC,eAAe,EAAE,OAAO;QACxB,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,IAAI;gBAClB,QAAQ,EAAE,cAAc;gBACxB,SAAS,EAAE,oBAAoB;gBAC/B,eAAe,EAAE,gEAAqB;gBACtC,eAAe,EAAE,mBAAmB;aACrC;YACD;gBACE,YAAY,EAAE,IAAI;gBAClB,QAAQ,EAAE,qBAAqB;gBAC/B,SAAS,EAAE,sBAAsB;gBACjC,eAAe,EAAE,gEAAqB;gBACtC,eAAe,EAAE,2BAA2B;aAC7C;YACD;gBACE,QAAQ,EAAE,KAAK;gBACf,QAAQ,EAAE,yBAAyB;gBACnC,SAAS,EAAE,0BAA0B;gBACrC,eAAe,EAAE,gEAAqB;gBACtC,eAAe,EAAE,oBAAoB;aACtC;YACD;gBACE,QAAQ,EAAE,iBAAiB;gBAC3B,SAAS,EAAE,kBAAkB;gBAC7B,eAAe,EAAE,gEAAqB;gBACtC,eAAe,EAAE,uBAAuB;aACzC;YACD;gBACE,YAAY,EAAE,IAAI;gBAClB,QAAQ,EAAE,gBAAgB;gBAC1B,SAAS,EAAE,iBAAiB;gBAC5B,eAAe,EAAE,gEAAqB;gBACtC,eAAe,EAAE,sBAAsB;aACxC;YACD;gBACE,QAAQ,EAAE,YAAY;gBACtB,SAAS,EAAE,aAAa;gBACxB,eAAe,EAAE,gEAAqB;gBACtC,eAAe,EAAE,kBAAkB;aACpC;YACD;gBACE,QAAQ,EAAE,cAAc;gBACxB,SAAS,EAAE,eAAe;gBAC1B,eAAe,EAAE,gEAAqB;gBACtC,eAAe,EAAE,oBAAoB;aACtC;YACD;gBACE,QAAQ,EAAE,WAAW;gBACrB,SAAS,EAAE,YAAY;gBACvB,eAAe,EAAE,gEAAqB;gBACtC,eAAe,EAAE,iBAAiB;aACnC;SACF;KACF;IACD;QACE,QAAQ,EAAE,WAAW;QACrB,eAAe,EAAE,oEAAyB;QAC1C,eAAe,EAAE,WAAW;QAC5B,OAAO,EAAE;YACP;gBACE,QAAQ,EAAE,gBAAgB;gBAC1B,SAAS,EAAE,2BAA2B;gBACtC,eAAe,EAAE,oEAAyB;gBAC1C,eAAe,EAAE,0BAA0B;aAC5C;SACF;KACF;CACF;AAEI,MAAM,iBAAiB,GAAwC,UAAU,CAAC,MAAM,CAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;IAChG,IAAI,CAAC,CAAC,eAAe,EAAE;QACrB,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC;KAC1C;IACD,IAAI,CAAC,CAAC,OAAO,EAAE;QACb,CAAC,CAAC,OAAO,CAAC,MAAM,CACd,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;YACT,IAAI,EAAE,CAAC,eAAe,EAAE;gBACtB,EAAE,CAAC,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC;aAC7C;YACD,OAAO,EAAE,CAAC;QACZ,CAAC,EAAE,CAAC,CACL;KACF;IACD,OAAO,CAAC,CAAC;AACX,CAAC,EAAE,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;ACxMyC;AACI;AACoB;AAEf;;;;;;;ICPxD,qEAA2E;;;IA6BnE,qEAA0E;;;IAF5E,qEAAkE;IACG,uDAA6B;IAAA,4DAAI;IACpG,+HAA0E;IAC5E,4DAAK;;;IAFA,0DAAyC;IAAzC,qGAAyC;IAAuB,0DAA6B;IAA7B,6FAA6B;IAC1F,0DAAmC;IAAnC,kGAAmC;;;;IAR/C,wEAAwH;IAGlH,qEAAmD;IAAA,uDACvD;IAAA,4DAAI;IACJ,wEAAwG;IACtG,uHAGK;IACP,4DAAK;;;;;IAVyC,gHAA6C;IACxF,0DAA6C;IAA7C,gHAA6C;IAA4C,qGAA6C;IAE/H,0DAAqC;IAArC,iGAAqC;IAAQ,0DACvD;IADuD,kGACvD;IAC6C,0DAA0D;IAA1D,kHAA0D;IACpE,0DAA+B;IAA/B,2GAA+B;;;IAzBtE,wEAAiD;IAmB/C,mHAqBK;IACP,4DAAK;;;IAtByB,0DAAkB;IAAlB,2FAAkB;;ADNzC,MAAM,mBAAmB;IAuB9B,YAAoB,YAA0B,EAAU,WAAwB;QAA5D,iBAAY,GAAZ,YAAY,CAAc;QAAU,gBAAW,GAAX,WAAW,CAAa;QArBvE,eAAU,GAAG,KAAK,CAAC;QACnB,gBAAW,GAAG,KAAK,CAAC;QACpB,iBAAY,GAAG,KAAK,CAAC;QAE9B,qBAAgB,GAAiB,IAAI,wDAAY,EAAE,CAAC;QACpD,gCAA2B,GAAG,KAAK,CAAC;QAG5B,mBAAc,GAAG,IAAI,8CAAY,EAAE,CAAC;QAC5C,gBAAW,GAAG,KAAK,CAAC;QAEpB,kBAAa,GAAG;YACd,gBAAgB,EAAE;gBAChB,KAAK,EAAE,6DAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,mCAAmC;aAChC;SACf;QAED,aAAQ,GAAG,8CAAU,CAAC;IAE6D,CAAC;IAEpF,QAAQ;QACN,kCAAkC;QAClC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,cAAc,CAAC,GAAG,CACrB,mDAAa,CACX,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,IAAI,CAAC,WAAW,CAAC,uBAAuB,CAC3H;aACA,SAAS,CACR,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE;YAClB,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;YACtB,IAAI,CAAC,gBAAgB,GAAG,GAAG,CAAC;YAC5B,IAAI,CAAC,2BAA2B,GAAG,GAAG,CAAC;YACvC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QAC3B,CAAC,EACD,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,EAAE,GAAG,CAAC,CACjF,CACF,CAAC;IACJ,CAAC;IAED,WAAW;QACT,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;IACpC,CAAC;IAED,mDAAmD;IACnD,kGAAkG;IAClG,IAAI;IAEJ,YAAY,CAAC,QAAkB;QAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ,IAAI,CAC3B,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,aAAa,IAAI,IAAI,CAAC,gBAAgB,CAAC,aAAa;YAC9F,CAAC,QAAQ,CAAC,6BAA6B,IAAI,IAAI,CAAC,2BAA2B,CAAC,CAC3E,CAAC;IACN,CAAC;IAED,IAAI,SAAS;QACX,OAAO,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,WAAW,CAAC;IAClE,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,WAAW,CAAC;IACjE,CAAC;IAED,eAAe,CAAC,WAAqB;QACnC,IAAI,WAAW,CAAC,OAAO,EAAE;YACvB,OAAO,WAAW,CAAC,OAAO,CAAC,MAAM,CAAE,EAAE,CAAC,EAAE,GAAE,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,GAAC,CAAC,CAAC;SAC1E;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED,oBAAoB,CAAC,QAAkB;QACrC,IAAI,UAAU,GAAG,IAAI,KAAK,EAAU,CAAC;QACrC,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,QAAQ,CAAC,aAAa,EAAE;YAC1B,UAAU,GAAI,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;SAC5C;QACD,sDAAsD;QACtD,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI,EAAE;YAC7B,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC;SAC3C;QACD,2BAA2B;QAC3B,2BAA2B;QAC3B,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,oBAAoB,CAAC,QAAkB;QACrC,IAAI,UAAU,GAAG,IAAI,KAAK,EAAU,CAAC;QACrC,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,QAAQ,CAAC,aAAa,EAAE;YAC1B,UAAU,GAAI,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;SAC5C;QACD,sDAAsD;QACtD,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI,EAAE;YAC7B,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,iBAAiB,CAAC;SAClD;QACD,2BAA2B;QAC3B,2BAA2B;QAC3B,OAAO,UAAU,CAAC;IACpB,CAAC;;sFA1GU,mBAAmB;iHAAnB,mBAAmB;QCfhC,iHAA2E;QAE3E,6GAyCK;;QA3CE,iFAAiB;QAEnB,0DAAe;QAAf,+EAAe;;;;;;;;;;;;;;;;;;;ACAmB;;AAGhC,MAAM,iBAAiB;IAM5B;QAJQ,mBAAc,GAAG,IAAI,iDAAe,CAAS,CAAC,CAAC,CAAC;QAExD,aAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;IAE9B,CAAC;IAEjB,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;IACxC,CAAC;IAED,QAAQ,CAAC,QAAgB;QACvB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,OAAO;QACL,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC;IACrD,CAAC;IAED,OAAO;QACL,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC;IACrD,CAAC;;kFAtBU,iBAAiB;kHAAjB,iBAAiB,WAAjB,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;ACGvB,MAAM,oBAAoB;IAC/B,YAAoB,MAAc,EAAU,WAAwB,EAAU,aAA4B;QAAtF,WAAM,GAAN,MAAM,CAAQ;QAAU,gBAAW,GAAX,WAAW,CAAa;QAAU,kBAAa,GAAb,aAAa,CAAe;IAAG,CAAC;IAE9G,WAAW,CACT,IAA4B,EAC5B,KAA0B;QAE1B,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;QAC5D,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAEnB,IAAI,IAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE,EAAE;YACzC,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;YAChD,IAAI,CAAC,SAAS,EAAE;gBACd,oEAAoE;gBACpE,mBAAmB;gBACnB,0EAA0E;gBAC1E,uDAAuD;gBACvD,uCAAuC;gBACvC,WAAW;gBACX,oCAAoC;gBACpC,IAAI;gBACJ,kCAAkC;aACnC;iBAAM;gBACL,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,EAAE,EAAC,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;aACrE;YACD,OAAO,IAAI,CAAC;SACb;aAAM;YACL,OAAO,CAAC,GAAG,CAAC,4CAA4C,EAAE,gCAAgC,CAAC,CAAC;YAC5F,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YAChC,OAAO,KAAK,CAAC;SACd;IACH,CAAC;;wFAjCU,oBAAoB;qHAApB,oBAAoB,WAApB,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;IEgC7B,sEAAyC;IAGZ,8EAAmB;IAAA,4DAAK;IAC/C,uEAAM;IAEyG,mWAAmC;IAA5I,4DAA6I;IAC7I,2EAA6D;IAC3D,uDACF;IAAA,4DAAQ;IAEV,0EAAwB;IAC6E,iWAAgC;IAAnI,4DAAoI;IACpI,6EAA0D;IACxD,0XAGF;IAAA,4DAAQ;IAEV,8EAAyE;IAAA,iFAAqB;IAAA,4DAAS;;;IAbI,0DAAmC;IAAnC,iGAAmC;IAE1I,0DACF;IADE,6OACF;IAGmG,0DAAgC;IAAhC,8FAAgC;IAOhG,0DAAmC;IAAnC,mGAAmC;;ADjD/E,MAAM,sBAAsB;IAKjC,YAAmB,WAAwB,EAAS,aAA4B;QAA7D,gBAAW,GAAX,WAAW,CAAa;QAAS,kBAAa,GAAb,aAAa,CAAe;IAAI,CAAC;IAErF,QAAQ;IACR,CAAC;;4FARU,sBAAsB;oHAAtB,sBAAsB;QCVnC,yEAAiB;QAET,yEAAc;QAAA,4DAAK;QACvB,oEAAG;QAAA,qHAA0D;QAAA,4DAAI;QACjE,oEAAG;QAAA,uDACW;QAAA,4DAAI;QAClB,qEAAI;QACE,+HAAmE;QAAA,4DAAK;QAC5E,sEAAI;QAAA,qMACoD;QAAA,4DAAK;QAE/D,qEAAG;QAAA,wDAEsB;QAAA,4DAAI;QAC7B,qEAAG;QAAA,kKACU;QAAA,4DAAI;QACjB,qEAAG;QAAA,wDACqE;QAAA,4DAAI;QAC5E,qEAAG;QAAA,6TAE6E;QAAA,4DAAI;QACpF,qEAAG;QAAA,wDAA8E;QAAA,4DAAI;QACrF,qEAAG;QAAA,wDACkG;QAAA,4DAAI;QACzG,qEAAG;QAAA,wDAC2C;QAAA,4DAAI;QAClD,wEAAuB;QAAA,wVAGL;QAAA,4DAAI;QACtB,qEAAG;QAAA,wLACgC;QAAA,4DAAI;QACvC,sEAAI;QAAA,6EAAiB;QAAA,4DAAK;QAC1B,sEAAI;QACE,kEAAM;QAAA,4DAAK;QACf,sEAAI;QAAA,wEAAY;QAAA,4DAAK;QACrB,sEAAI;QAAA,kEAAM;QAAA,4DAAK;QACf,sEAAI;QAAA,wEAAY;QAAA,4DAAK;QAEvB,6JACA;QAAA,qHAuBM;QACR,4DAAM;;QA5DD,0DACW;QADX,+LACW;QAMX,0DAEsB;QAFtB,+RAEsB;QAGtB,0DACqE;QADrE,oPACqE;QAIrE,0DAA8E;QAA9E,wJAA8E;QAC9E,0DACkG;QADlG,+QACkG;QAClG,0DAC2C;QAD3C,uOAC2C;QAexC,2DAAiC;QAAjC,iGAAiC;;;;;;;;;;;;;;;;;;;;;;;ACrCU;AAChB;;;;AAO9B,MAAM,iBAAiB;IAE5B,YAAqB,WAAwB,EAAU,MAAc;QAAhD,gBAAW,GAAX,WAAW,CAAa;QAAU,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;IAEzE,WAAW,CACT,IAA4B,EAC5B,KAA0B;QAC1B,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE;YAC5B,OAAO,mDAAa,CAClB,IAAI,CAAC,WAAW,CAAC,sBAAsB,EACvC,IAAI,CAAC,WAAW,CAAC,sBAAsB,CACxC,CAAC,IAAI,CACJ,mDAAG,CACD,CAAC,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,EAAE,EAAE;gBAC3C,MAAM,oBAAoB,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;gBAC1E,MAAM,WAAW,GAAG,oBAAoB,IAAI,CAAC,kBAAkB,CAAC,aAAa,IAAI,oBAAoB,CAAC,aAAa,CAAC,CAAC;gBACrH,IAAI,CAAC,WAAW,EAAE;oBAChB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,qBAAqB,CAAC,CAAC;iBAC9C;gBAAA,CAAC;gBACF,OAAO,WAAW,CAAC;YACrB,CAAC,CACF,CACF;SACF;aAAM;YACL,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;YACrE,OAAO,wCAAE,CAAC,KAAK,CAAC,CAAC;SAClB;IACH,CAAC;;kFA3BU,iBAAiB;kHAAjB,iBAAiB,WAAjB,iBAAiB,mBAFhB,MAAM;;;;;;;;;;;;;;;;ACTb,MAAM,YAAY;CAQxB;;;;;;;;;;;;;;;;;;;;;ACHsC;;;;;AAOhC,MAAM,aAAa;IAKxB;QAHA,qBAAgB,GAAG,IAAI,+CAAK,EAAE,CAAC;QAC/B,WAAM,GAAG,EAAE,CAAC;IAGZ,CAAC;IAED,QAAQ;IACR,CAAC;IAED,OAAO,CAAC,QAAQ;QACd,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACxB,CAAC;;0EAbU,aAAa;2GAAb,aAAa;QCZ1B,yEAAiB;QAEW,wMAAuB;QAAC,4DAAyB;QACzE,gEAAM;QACN,uDACF;;QAAA,4DAAM;QACN,yEAAsB;QACqC,2NAAuC;QAAC,4DAAsB;;QAL/F,0DAAuB;QAAvB,kFAAuB;QAE/C,0DACF;QADE,iKACF;QAEuB,0DAAiB;QAAjB,0EAAiB;;;;;;;;;;;;;;;;;;;;;ACInC,MAAM,kBAAkB;IAE7B,YAAoB,WAAwB;QAAxB,gBAAW,GAAX,WAAW,CAAa;IAAG,CAAC;IAEhD,SAAS,CAAC,OAA6B,EAAE,IAAiB;QACxD,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;;oFAPU,kBAAkB;mHAAlB,kBAAkB,WAAlB,kBAAkB;;;;;;;;;;;;;;;;;;ACRiB;;AAKzC,MAAM,cAAc;IAEzB,gBAAgB,CAAC;IAEV,WAAW,CAAC,cAAsB;QACvC,gEAAyB,CAAC,cAAc,CAAC,CAAC,MAAM,EAAE,CAAC;IACrD,CAAC;IAEM,kBAAkB,CAAC,iBAAyB;QACjD,mEAA4B,CAAC,iBAAiB,CAAC,CAAC,MAAM,EAAE,CAAC;IAC3D,CAAC;IAEM,qBAAqB,CAAC,aAAqB;QAChD,MAAM,cAAc,GAAG,QAAQ,CAAC,sBAAsB,CAAC,aAAa,CAAC,CAAC;QACtE,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,OAAO,CAAE,EAAE,CAAC,EAAE;YACvC,IAAI;gBACF,MAAM,UAAU,GAAG,mEAA4B,CAAC,EAAE,CAAC,CAAC;gBACpD,UAAU,CAAC,MAAM,EAAE,CAAC;aACrB;YAAC,WAAM;gBACN,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;aACtB;QACH,CAAC,CAAC;IACJ,CAAC;IAEM,OAAO,CAAC,YAAoB;QACjC,MAAM,KAAK,GAAG,sDAAe,CAAC,YAAY,CAAC,CAAC;QAC5C,IAAI,KAAK,EAAE;YACT,KAAK,CAAC,IAAI,EAAE,CAAC;SACd;QACD,gDAAgD;IAClD,CAAC;;4EA9BU,cAAc;+GAAd,cAAc,WAAd,cAAc,mBAFb,MAAM;;;;;;;;;;;;;;;;;;;;;;;ACJW;AACY;;;;;;;;ICIjC,0EAAoM;IAAhC,yVAAS,+BAAqB,IAAC;IACjM,yEAAuB;IACE,uDAAoB;IAAA,4DAAK;IAChD,wEAAiC;IAAA,sEAA4C;IAAA,4DAAI;IACjF,wEAAqB;IAAA,uDAA2B;IAAA,4DAAI;;;;;IAJ2B,2GAA2C;IAAC,gGAAoC;IAExI,0DAAoB;IAApB,oFAAoB;IAEtB,0DAA2B;IAA3B,2FAA2B;;;IAc1D,sEAA6C;IAMjC,sEAAkD;IACpD,4DAAM;IACN,wEAAqB;IAAA,wEAAa;IAAA,4DAAI;;;IAgBtC,6EAA+D;IAAA,uDAAgB;IAAA,4DAAS;;;IAAhD,mFAAsB;IAAC,0DAAgB;IAAhB,iFAAgB;;;IAM/E,6EAA6D;IAAA,uDAAe;IAAA,4DAAS;;;IAA9C,kFAAqB;IAAC,0DAAe;IAAf,gFAAe;;;;IAKpF,sEAA2D;IAIlC,uDAAmB;IAAA,4EAA0B;IAAC,uDAA0C;IAAA,4DAAQ;IACjH,0EAAsC;IAEwD,ibAA8B;IAAtH,4DAA+I;IAC/I,6EAAoE;IAAA,2EAAe;IAAA,4DAAQ;IAInG,2EAAsC;IACpC,6FAC8I;IAChJ,4DAAM;;;;;IAXa,0DAAmB;IAAnB,oFAAmB;IAA2B,0DAA0C;IAA1C,iIAA0C;IAGX,0DAA8B;IAA9B,iGAA8B;IAAtE,gGAAuC;IACvD,0DAAmC;IAAnC,gGAAmC;IAItE,0DAAgC;IAAhC,6FAAgC;IACP,0DAAgB;IAAhB,6EAAgB;;;;IAjCpD,0EAA4E;IAGtE,uEAA+C;IAC/C,6EAA0B;IAAA,qEAAU;IAAA,4DAAS;IAE/C,0EAA6B;IACsC,mEAAQ;IAAA,4DAAQ;IACjF,6EAAkF;IAChF,8IAAwF;IAC1F,4DAAS;IAEX,2EAA6B;IACqC,iEAAK;IAAA,4DAAQ;IAC7E,8EAAiF;IAC/E,8IAAqF;IACvF,4DAAS;IAIf,0IAkBM;;;IAtC4B,yGAAyC;IASlC,2DAAK;IAAL,0IAAK;IAMN,0DAAK;IAAL,0IAAK;IAKlB,0DAAmB;IAAnB,0FAAmB;;AD7C7C,MAAM,0BAA0B;IA0DrC,YAAoB,gBAAkC;QAAlC,qBAAgB,GAAhB,gBAAgB,CAAkB;QAxDtD,mBAAc,GAAe,EAAE,CAAC;QAChC,cAAS,GAAe,EAAE,CAAC;QAM3B,iBAAY,GAAG,KAAK,CAAC;QAErB,kBAAa,GAAmB,EAAE,CAAC;QAEnC,uBAAkB,GAAG;YACnB;gBACE,IAAI,EAAE,sBAAsB;gBAC5B,EAAE,EAAE,oBAAoB;gBACxB,WAAW,EAAE,+EAA+E;gBAC5F,aAAa,EAAE,YAAY;gBAC3B,YAAY,EAAE,uBAAuB;gBACrC,OAAO,EAAE,GAAG,EAAE,GAAG,OAAO,IAAI,CAAC,gBAAgB,CAAC,0BAA0B,EAAE,CAAC,CAAC,CAAC;aAC9E;YACD;gBACE,IAAI,EAAE,iBAAiB;gBACvB,EAAE,EAAE,eAAe;gBACnB,WAAW,EAAE,0EAA0E;gBACvF,aAAa,EAAE,OAAO;gBACtB,YAAY,EAAE,uBAAuB;gBACrC,OAAO,EAAE,GAAG,EAAE,GAAG,OAAO,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC;aACzE;YACD;gBACE,IAAI,EAAE,oBAAoB;gBAC1B,EAAE,EAAE,iBAAiB;gBACrB,WAAW,EAAE,sFAAsF;gBACnG,aAAa,EAAE,mBAAmB;gBAClC,YAAY,EAAE,uBAAuB;gBACrC,OAAO,EAAE,GAAG,EAAE,GAAG,OAAO,IAAI,CAAC,gBAAgB,CAAC,uBAAuB,EAAE,CAAC,CAAC,CAAC;aAC3E;YACD;gBACE,IAAI,EAAE,qBAAqB;gBAC3B,EAAE,EAAE,mBAAmB;gBACvB,WAAW,EAAE,kGAAkG;gBAC/G,aAAa,EAAE,YAAY;gBAC3B,YAAY,EAAE,oBAAoB;gBAClC,OAAO,EAAE,GAAG,EAAE,GAAG,OAAO,IAAI,CAAC,gBAAgB,CAAC,yBAAyB,EAAE,CAAC,CAAC,CAAC;aAC7E;YACD;gBACE,IAAI,EAAE,mBAAmB;gBACzB,EAAE,EAAE,gBAAgB;gBACpB,WAAW,EAAE,yGAAyG;gBACtH,aAAa,EAAE,mBAAmB;gBAClC,YAAY,EAAE,oBAAoB;gBAClC,OAAO,EAAE,GAAG,EAAE,GAAG,OAAO,IAAI,CAAC,gBAAgB,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC;aAC1E;SACF,CAAC;QAEM,kBAAa,GAAqB,IAAI,yCAAO,EAAE,CAAC;IAEE,CAAC;IAE3D,QAAQ;IACR,CAAC;IAED,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;IAChC,CAAC;IAED,kBAAkB,CAAC,SAAiB;QAClC,IAAI,IAAI,CAAC,YAAY,EAAE;YAAE,OAAO;SAAE;QAClC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACrE,IAAI,CAAC,sBAAsB,GAAG,SAAS,CAAC;QACxC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE;aAC3C,IAAI,CACH,yDAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAC9B;aACA,SAAS,CACR,CAAC,CAAC,EAAE;YACF,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;YACzB,IAAI,CAAC,aAAa,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrD,KAAK,MAAM,YAAY,IAAI,CAAC,EAAE;gBAC5B,MAAM,SAAS,GAAG,EAAE,CAAC;gBACrB,IAAI,SAAS,GAAG,EAAE,CAAC;gBACnB,KAAK,MAAM,OAAO,IAAI,YAAY,CAAC,YAAY,EAAE;oBAC/C,MAAM,QAAQ,GAAG,EAAE,CAAC;oBACpB,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;wBAC1B,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAE,CAAC;qBACxD;oBACD,QAAQ,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;oBAC5C,KAAK,MAAM,SAAS,IAAI,OAAO,CAAC,WAAW,EAAE;wBAC3C,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC;qBAChD;oBACD,QAAQ,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,CAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;oBACxF,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;iBAC1B;gBACD,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;gBAC9D,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC;gBACnF,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;gBACvC,IAAI,CAAC,cAAc,CAAC,IAAI,CACtB;oBACE,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,YAAY,CAAC,SAAS;iBAC9B,CACF,CAAC;aACH;YACD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC,CACF,CAAC;IACJ,CAAC;;oGA9GU,0BAA0B;wHAA1B,0BAA0B;QCfvC,yEAAiB;QAIc,6EAAkB;QAAA,4DAAK;QAC9C,yEAAwB;QAEtB,sHAMM;QACR,4DAAM;QAGV,yEAAkF;QAChF,qEAAwC;QAAC,uFAC3C;QAAA,4DAAM;QAIV,0EAAiB;QAEb,yHAaM;QACN,sNAwCc;QAChB,4DAAM;;;QAzEiD,0DAAuB;QAAvB,2FAAuB;QAUjC,0DAAsC;QAAtC,mGAAsC;QAQ3E,0DAAoB;QAApB,kFAAoB;;;;;;;;;;;;;;;;;;;;;ACxBL;;;;AAUlB,MAAM,sBAAsB;IAUjC,YAAmB,gBAAkC;QAAlC,qBAAgB,GAAhB,gBAAgB,CAAkB;IAAI,CAAC;IAE1D,WAAW;QAET,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YAAE,OAAO;SAAE;QAEhC,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAE,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAEjE,MAAM,SAAS,GAAG,EAAE,CAAC;QACrB,MAAM,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;QACjD,MAAM,KAAK,GAAG,GAAG,CAAC;QAClB,MAAM,MAAM,GAAG,EAAE,CAAC;QAElB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;QAE1B,MAAM,CAAC,GAAG,2CAAc,EAAE;aACvB,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;QACrB,MAAM,KAAK,GAAG,sCAAS,CAAC,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC;aACxC,IAAI,CAAC,OAAO,EAAE,KAAK,GAAG,GAAG,CAAC;aAC1B,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAE3B,MAAM,MAAM,GAAG,yCAAY,EAAE;aAC1B,MAAM,CAAC,UAAU,CAAC;aAClB,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QACtB,MAAM,MAAM,GAAG,2CAAc,EAAE;aAC5B,MAAM,CAAC,CAAC,CAAC,EAAE,mCAAM,CAAC,IAAI,CAAC,SAAS,EAAE,UAAS,CAAC,IAAI,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACpE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;QAErB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,mCAAM,CAAC,IAAI,CAAC,SAAS,EAAE,UAAS,CAAC,IAAI,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEvE,qFAAqF;QACrF,6FAA6F;QAC7F,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,KAAK,IAAI,MAAM,GAAG,GAAG,EAAE,CAAC,CAAC;QAExD,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAE7B,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC;aAC7B,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;aACpB,KAAK,EAAE;aACP,MAAM,CAAC,GAAG,CAAC;aACX,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC;aACpB,IAAI,CAAC,WAAW,EAAE,UAAS,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAClF,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC;aACf,IAAI,CAAC,OAAO,EAAE,UAAS,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;aACjD,IAAI,CAAC,QAAQ,EAAE,SAAS,GAAG,CAAC,CAAE,CAAC;QAClC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC;aACf,IAAI,CAAC,GAAG,EAAE,UAAS,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;aACjD,IAAI,CAAC,GAAG,EAAE,SAAS,GAAG,CAAC,CAAC;aACxB,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC;aACnB,IAAI,CAAC,UAAS,CAAC,IAAI,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAEzC,MAAM,KAAK,GAAG,0CAAa,CAAC,MAAM,CAAC;aAChC,aAAa,CAAC,CAAC,CAAC;aAChB,aAAa,CAAC,CAAC,mCAAM,CAAC,IAAI,CAAC,SAAS,EAAE,UAAS,CAAC,IAAI,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5E,MAAM,KAAK,GAAG,wCAAW,CAAC,MAAM,CAAC,CAAC;QAClC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;aACd,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC;aACvB,IAAI,CAAC,WAAW,EAAE,gBAAgB,MAAM,GAAG,CAAC;aAC5C,IAAI,CAAC,KAAK,CAAC,CAAC;QACf,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;aACd,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC;aACvB,IAAI,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC;;4FAxEU,sBAAsB;oHAAtB,sBAAsB;QCXnC,8DAAmG;QAAnG,oEAAyG;;QAAxD,kHAAiD;QAArE,4EAAmB;;;;;;;;;;;;;;;;;;;;;ACGT;AACd;;;AAQlB,MAAM,0BAA0B;IA6BrC,YAAmB,gBAAkC;QAAlC,qBAAgB,GAAhB,gBAAgB,CAAkB;QAFrD,kBAAa,GAA6B,IAAI,iDAAe,CAAU,KAAK,CAAC,CAAC;IAErB,CAAC;IAE1D,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,eAAe;QACf,uDAAuD;QACvD,yBAAyB;QACzB,4EAA4E;QAC5E,QAAQ;QACR,OAAO;QACL,IAAI,CAAC,aAAa,CAAC,SAAS,CAC1B,MAAM,CAAC,EAAE;YACP,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;gBAAE,OAAO;aAAE;YACpD,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;gBAAE,OAAO;aAAE;YACpD,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC9B,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,CAAC,CACF;IACH,CAAC;IAED,yBAAyB;IAEzB,2FAA2F;IAC3F,4CAA4C;IAC5C,2DAA2D;IAE3D,yDAAyD;IACzD,yDAAyD;IACzD,qEAAqE;IACrE,qEAAqE;IAErE,sBAAsB;IACtB,IAAI;IAGI,SAAS;QACf,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5C,sCAAS,CAAC,GAAG,GAAG,IAAI,CAAC,uBAAuB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;QAErE,MAAM,eAAe,GAAG,sCAAS,CAAC,GAAG,GAAG,IAAI,CAAC,uBAAuB,CAAC,CAAC,IAAI,EAAiB,CAAC;QAE5F,+GAA+G;QAC/G,OAAO,CAAC,GAAG,CAAC,SAAS,GAAG,eAAe,CAAC,qBAAqB,EAAE,CAAC,KAAK,CAAC,CAAC;QAEvE,IAAI,cAAc,GAAG,eAAe,CAAC,qBAAqB,EAAE,CAAC,KAAK;YAChE,QAAQ,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,gBAAgB,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC;YAC7H,QAAQ,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,gBAAgB,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC,CAAC;QAE/H,2HAA2H;QAC7H,oIAAoI;QACpI,qIAAqI;QAErI,IAAI,cAAc,GAAG,IAAI,EAAE;YACzB,cAAc,GAAG,IAAI,CAAC;SACvB;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;QACzD,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;QACzD,IAAI,OAAO,CAAC,OAAO,EAAE;YAAE,cAAc,GAAG,IAAI;SAAC;QAC7C,IAAI,OAAO,CAAC,OAAO,EAAE;YAAE,cAAc,GAAG,IAAI;SAAC;QAE7C,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,cAAc,CAAC,CAAC;QAElD,+GAA+G;QAE/G,MAAM,WAAW,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;QACnE,MAAM,aAAa,GAAG,mCAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAEtF,WAAW,CAAC,IAAI,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAEtF,cAAc,GAAG,CAAC,aAAa,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC;QAEtH,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,eAAe,CAAC,qBAAqB,EAAE,CAAC,KAAK,CAAC,CAAC;QAChF,+GAA+G;QAE/G,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,EAAE,CAAC;QAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,EAAE,CAAC;QAC9C,MAAM,UAAU,GAAG,cAAc,GAAG,WAAW,CAAC,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC;QACzE,MAAM,KAAK,GAAG,cAAc,GAAG,WAAW,CAAC,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC;QACpE,MAAM,WAAW,GAAG,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;QACpE,MAAM,MAAM,GAAG,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;QAG/D,MAAM,KAAK,GAAG,sCAAS,CAAC,GAAG,GAAG,IAAI,CAAC,uBAAuB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aACtE,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC;YAC9B,wBAAwB;aACvB,IAAI,CAAC,QAAQ,EAAE,WAAW,GAAG,WAAW,CAAC,GAAG,GAAG,WAAW,CAAC,MAAM,CAAC;YACnE,gDAAgD;aAC/C,KAAK,CAAC,YAAY,EAAE,WAAW,CAAC,GAAG,CAAC;aACpC,KAAK,CAAC,eAAe,EAAE,WAAW,CAAC,MAAM,CAAC;aAC1C,KAAK,CAAC,aAAa,EAAE,WAAW,CAAC,IAAI,CAAC;aACtC,KAAK,CAAC,cAAc,EAAE,WAAW,CAAC,KAAK,CAAC;aACxC,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;QACvC,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,WAAW,CAAC,IAAI,KAAK,WAAW,CAAC,GAAG,GAAG,CAAC,CAAC;QAEpG,MAAM,EAAE,GAAG,yCAAY,EAAE;aACtB,UAAU,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;aACvB,YAAY,CAAC,GAAG,CAAC,CAAC;QACrB,MAAM,EAAE,GAAG,yCAAY,EAAE;aACtB,OAAO,CAAC,IAAI,CAAC,CAAC;QACjB,MAAM,CAAC,GAAG,2CAAc,EAAE;aACvB,UAAU,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;QAC1B,MAAM,CAAC,GAAG,4CAAe,CAAC,gDAAmB,CAAC,CAAC;QAE/C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAE5B,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QAChD,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,mCAAM,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,OAAO,mCAAM,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAE7G,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACV,SAAS,CAAC,GAAG,CAAC;aACd,IAAI,CAAC,IAAI,CAAC;aACV,KAAK,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC;aACnB,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,IAAI,OAAO,gBAAgB,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aAC7E,SAAS,CAAC,MAAM,CAAC;aACjB,IAAI,CAAC,UAAU,CAAC,IAAI,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,IAAI,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAC/F,KAAK,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;aACtB,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;aACrC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;aAC7C,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,SAAS,EAAE,CAAC;aAC9B,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;aAClD,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEnD,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACV,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC;aACrB,IAAI,CAAC,WAAW,EAAE,cAAc,GAAG,MAAM,GAAG,GAAG,CAAC;aAChD,IAAI,CAAC,0CAAa,CAAC,CAAC,CAAC;aACnB,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;aACpC,MAAM,CAAC,MAAM,CAAC;aACd,IAAI,CAAC,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC;aACpB,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;aACb,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC;aACpB,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC;aAC3B,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC;aAC7B,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAE5B,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACV,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC;aACrB,IAAI,CAAC,wCAAW,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;aACtC,MAAM,CAAC,MAAM,CAAC;YACf,yBAAyB;aACtB,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC;YAC9C,+EAA+E;aAC9E,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,WAAW,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,mCAAmC;aACxE,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC;aACpB,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC;aACpB,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC;aAC3B,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC;aAC7B,IAAI,CAAC,OAAO,CAAC;aACb,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;QAEtC,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACzB,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC;aACjC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;aACrB,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC;aAC1B,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC;YAC7B,oDAAoD;YACpD,yCAAyC;aACxC,SAAS,CAAC,GAAG,CAAC;aACd,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,cAAc;aACjC,KAAK,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC;aACnB,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE,CAAC,IAAI,OAAO,gBAAgB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAE5E,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;aAClB,IAAI,CAAC,GAAG,EAAE,KAAK,GAAG,EAAE,CAAC;aACrB,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;aACjB,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;aAClB,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAEnB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;aAClB,IAAI,CAAC,GAAG,EAAE,KAAK,GAAG,EAAE,CAAC;aACrB,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC;aACd,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC;aACpB,IAAI,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,CAAC;;oGA/MU,0BAA0B;wHAA1B,0BAA0B;QCZvC,oEAAuD;;QAAlD,4EAAmB;;;;;;;;;;;;;;;;;;;;;ACCC;;;;;ICKzB,yEAAmE;IAC6D,uDAAwC;IAAA,4DAAM;;;IADlI,sFAAsB;IACA,0DAA6D;IAA7D,wHAA6D;IAApF,sFAAsB;IAA+D,0DAAwC;IAAxC,mHAAwC;;;IAGxK,wEAA+D;IAAA,uDAAwC;IAAA,4DAAK;;;IAA7C,0DAAwC;IAAxC,mHAAwC;;ADChG,MAAM,mBAAmB;IAe9B,YAAoB,gBAAkC;QAAlC,qBAAgB,GAAhB,gBAAgB,CAAkB;QANtD,qBAAgB,GAAG,EAAE,CAAC;QAGtB,eAAU,GAAG,EAAE,CAAC;IAG0C,CAAC;IAC3D,iDAAiD;IACjD,kCAAkC;IAClC,4CAA4C;IAC5C,IAAI;IAEJ,WAAW;QACT,mCAAmC;QAEnC,kDAAkD;QAClD,iCAAiC;QAEjC,IAAI;YACF,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;YAC/B,MAAM,WAAW,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;YACjE,MAAM,KAAK,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,WAAW,CAAC,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC;YAClE,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,WAAW,CAAC,GAAG,GAAG,WAAW,CAAC,MAAM,CAAC;YACnE,4BAA4B;YAE5B,MAAM,MAAM,GAAG,4CAAe,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;iBAC7C,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAE,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAEzD,MAAM,KAAK,GAAG,sCAAS,CAAC,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;iBACxD,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC;iBACpB,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC;iBACtB,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;iBAC5C,MAAM,CAAC,GAAG,CAAC;iBACT,IAAI,CAAC,WAAW,EAAE,aAAa,WAAW,CAAC,IAAI,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;YAE/F,MAAM,IAAI,GAAQ,mCAAM,EAAE;iBACvB,WAAW,CAAC,MAAM,CAAC;iBACnB,WAAW,CAAC,MAAM,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,gBAAgB,GAAG,GAAG,CAAC,CAAC,CAAC;YAEhE,yBAAyB;YACzB,8BAA8B;YAC9B,+BAA+B;YAE/B,MAAM,GAAG,GAAG,mCAAM,EAAE;iBACjB,KAAK,CAAE,CAAC,CAAM,EAAE,EAAE,GAAG,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;iBACvC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEd,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;iBAChC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;iBACzB,KAAK,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC;iBACjB,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAE1B,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC;iBACf,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC;iBACf,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAE,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,2DAA2D;YAEnI,qBAAqB;YACrB,kFAAkF;YAClF,8EAA8E;YAE9E,MAAM,oBAAoB,GACxB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS;YAClI,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;iBACjB,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC;iBAC7B,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;iBACrB,KAAK,CAAC,WAAW,EAAE,OAAO,CAAC;iBAC3B,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC;iBACnB,IAAI,CAAC,oBAAoB,CAAC;YAE7B,mCAAmC;YACnC,kCAAkC;YAClC,iEAAiE;YAEjE,mCAAmC;YACnC,yDAAyD;YACzD,yBAAyB;YACzB,uFAAuF;YAEvF,oBAAoB;YACpB,mBAAmB;YACnB,sCAAsC;YACtC,uCAAuC;YACvC,gDAAgD;YAEhD,oBAAoB;YACpB,yCAAyC;YACzC,yCAAyC;YACzC,0BAA0B;YAC1B,sBAAsB;SAErB;QACH,WACA;YACE,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC;SACrC;gBACO,GAAE;IACZ,CAAC;IAGC,aAAa,CAAC,eAAuB;QACnC,OAAO,EAAE,OAAO,EAAE,GAAG,eAAe,GAAG,GAAG,GAAG,EAAE;IACjD,CAAC;IAED,aAAa,CAAC,UAAkB;QAC9B,6BAA6B;QAC7B,6BAA6B;QAC7B,8FAA8F;QAC9F,IAAI;QACJ,oBAAoB;QACpB,OAAO,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;IAChE,CAAC;IAED,IAAI,UAAU;QACZ,MAAM,KAAK,GAAQ,EAAE,CAAC;QAC5B;;;;;;;;;;;;;;;;;;;;;;;;;UAyBE;QACI,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACzC,KAAK,CAAC,SAAS,GAAG,+BAA+B,CAAC;QAClD,yBAAyB;QACzB,0BAA0B;QAC1B,kCAAkC;QAClC,0BAA0B;QAC1B,mCAAmC;QACnC,KAAK,CAAC,UAAU,GAAG,gIAAgI,KAAK,mCAAmC,KAAK,yBAAyB,KAAK,4BAA4B,CAAC;QAC3P,wBAAwB;QACxB,KAAK,CAAC,0BAA0B,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAC/D,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,EAAE,CAAC;IACZ,CAAC;;sFApKQ,mBAAmB;iHAAnB,mBAAmB;QCLhC,+GAEM;QAEN,6GAA4G;;QAJtG,oGAAoC;QAIrC,0DAAoC;QAApC,oGAAoC;;;;;;;;;;;;;;;;;;;;ACThB;;;;ICDzB,oEAAqF;;;IAAlD,+EAAmB;;ADS/C,MAAM,iBAAiB;IAW5B;QAFA,qBAAgB,GAAG,EAAE,CAAC;IAEN,CAAC;IAEjB,eAAe;QACb,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YAAE,OAAO;SAAE;QAChC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAE9B,MAAM,KAAK,GAAG,GAAG,CAAC;QAClB,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QACjE,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,WAAW,CAAC,GAAG,GAAG,WAAW,CAAC,MAAM,CAAC;QACnE,MAAM,aAAa,GAAG,EAAE,CAAC;QAEzB,MAAM,MAAM,GAAG,4CAAe,CAAC,gDAAmB,CAAC;aAChD,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAE,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEzD,MAAM,KAAK,GAAG,sCAAS,CAAC,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aACxD,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC;aACpB,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC;aACtB,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;YAC7C,2EAA2E;YAC3E,yHAAyH;aACxH,MAAM,CAAC,GAAG,CAAC;aACT,IAAI,CAAC,WAAW,EAAE,aAAa,WAAW,CAAC,IAAI,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAE/F,MAAM,IAAI,GAAQ,mCAAM,EAAE;aACvB,WAAW,CAAC,MAAM,CAAC;aACnB,WAAW,CAAC,MAAM,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,gBAAgB,GAAG,GAAG,CAAC,CAAC,CAAC;QAEhE,MAAM,KAAK,GAAG,mCAAM,EAAE;aACnB,WAAW,CAAC,MAAM,GAAG,EAAE,CAAC;aACxB,WAAW,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;QAE5B,MAAM,GAAG,GAAG,mCAAM,EAAE;aACjB,KAAK,CAAE,CAAC,CAAM,EAAE,EAAE,GAAG,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAE3C,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;aAChC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aACzB,KAAK,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC;aACjB,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAE1B,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC;aACf,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC;aACf,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAE,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,2DAA2D;QAEnI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC;aACf,IAAI,CAAC,WAAW,EAAE,CAAC,CAAM,EAAE,EAAE,GAAG,OAAO,aAAa,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aAC5E,IAAI,CAAE,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAExD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;aAC7B,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC;aAC5B,IAAI,CAAC,WAAW,EAAE,cAAc,MAAM,KAAK,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QAE9D,MAAM,EAAE,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC;aAC7B,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAE,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;aACnD,KAAK,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC;aACjB,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,OAAO,gBAAgB,CAAC,GAAG,aAAa,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAEpF,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;aACd,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;aACb,IAAI,CAAC,OAAO,EAAE,aAAa,GAAG,CAAC,CAAC;aAChC,IAAI,CAAC,QAAQ,EAAE,aAAa,GAAG,CAAC,CAAC;aACjC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,GAAE,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE7C,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;aACd,IAAI,CAAC,GAAG,EAAE,CAAC,aAAa,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;aACnC,IAAI,CAAC,GAAG,EAAE,CAAC,aAAa,GAAG,CAAC,CAAC,GAAG,CAAC,CAAE;aACnC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC;aACpB,IAAI,CAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IACrB,CAAC;;kFA/EU,iBAAiB;+GAAjB,iBAAiB;QCT9B,6GAAqF;;QAA/E,2HAA2B;;;;;;;;;;;;;;;;;;;;;ACCR;;;;;ICoBX,wEAAqD;IAAA,uDAAc;IAAA,4DAAK;;;IAAnB,0DAAc;IAAd,8EAAc;;;IAMnE,wEAAqD;IAAA,uDAAwB;IAAA,4DAAK;;;;IAA7B,0DAAwB;IAAxB,2FAAwB;;;IAF/E,qEAAuC;IACrB,uDAAqB;IAAA,4DAAK;IAC1C,6HAAkF;IACpF,4DAAK;;;;IAFa,0DAAqB;IAArB,qFAAqB;IACV,0DAAY;IAAZ,qFAAY;;ADhB9C,MAAM,6BAA6B;IA8BxC,YAAmB,gBAAkC;QAAlC,qBAAgB,GAAhB,gBAAgB,CAAkB;QANrD,kBAAa,GAAG,KAAK,CAAC;IAMmC,CAAC;IAE1D,eAAe;QACf,uDAAuD;QACvD,yBAAyB;QACzB,4EAA4E;QAC5E,QAAQ;QACR,OAAO;QACP,IAAI;QAEJ,4BAA4B;QAC1B,iDAAiD;QAEjD,IAAK,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,EAAG;YAAE,OAAO;SAAE;QACtD,IAAK,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,EAAG;YAAE,OAAO;SAAE;QACtD,gEAAgE;QAChE,gEAAgE;QAEhE,IAAI,CAAC,uBAAuB,GAAG,gBAAgB,GAAG,IAAI,CAAC,UAAU,CAAC;QAClE,mDAAmD;QAEnD,0CAA0C;QAC1C,uDAAuD;QACvD,sCAAS,CAAC,GAAG,GAAG,IAAI,CAAC,uBAAuB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;QAErE,IAAI,cAAc,GAAG,CAClB,sCAAS,CAAC,GAAG,GAAG,IAAI,CAAC,uBAAuB,CAAC,CAAC,IAAI,EAAkB,CAAC,qBAAqB,EAAE,CAAC,KAAK;YACnG,QAAQ,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,gBAAgB,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC;YAC7H,QAAQ,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,gBAAgB,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC,CAC/H,CAAC;QACF,0BAA0B;QAE1B,IAAI,cAAc,GAAG,IAAI,EAAE;YAAE,cAAc,GAAG,IAAI,CAAC;SAAE;QAErD,MAAM,WAAW,GAAG,EAAC,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAC,CAAC;QAEjE,MAAM,aAAa,GAAG,mCAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAE,CAAC;QACjE,cAAc,GAAG,CAAC,aAAa,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAE,GAAG,WAAW,CAAC,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC;QAEvH,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,EAAE,CAAC;QAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,EAAE,CAAC;QAC9C,MAAM,UAAU,GAAG,cAAc,GAAG,WAAW,CAAC,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC;QACzE,MAAM,WAAW,GAAG,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;QAEpE,MAAM,KAAK,GAAG,sCAAS,CAAC,GAAG,GAAG,IAAI,CAAC,uBAAuB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;YACvE,4BAA4B;aAC3B,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC;aAC7B,IAAI,CAAC,QAAQ,EAAE,WAAW,GAAG,WAAW,CAAC,GAAG,GAAG,WAAW,CAAC,MAAM,CAAC;YACnE,gDAAgD;aAC/C,KAAK,CAAC,YAAY,EAAE,WAAW,CAAC,GAAG,CAAC;aACpC,KAAK,CAAC,eAAe,EAAE,WAAW,CAAC,MAAM,CAAC;aAC1C,KAAK,CAAC,aAAa,EAAE,WAAW,CAAC,IAAI,CAAC;aACtC,KAAK,CAAC,cAAc,EAAE,WAAW,CAAC,KAAK,CAAC;YACzC,kGAAkG;aACjG,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;QAEvC,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,WAAW,CAAC,IAAI,KAAK,WAAW,CAAC,GAAG,GAAG,CAAC,CAAC;QAEpG,MAAM,CAAC,GAAG,2CAAc,EAAE;aACvB,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;QAE/B,MAAM,CAAC,GAAG,yCAAY,EAAE;aACrB,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;aAC3B,YAAY,CAAC,IAAI,CAAC;aAClB,KAAK,CAAC,GAAG,CAAC,CAAC;QAEd,kDAAkD;QAClD,MAAM,CAAC,GAAG,4CAAe,CAAC,0CAAa,CAAC,CAAC;QAEzC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,mCAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACjE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAClD,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAEzB,MAAM,KAAK,GAAG,qCAAQ,EAAE;aACrB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;aACpB,KAAK,CAAC,8CAAiB,CAAC;aACxB,MAAM,CAAC,+CAAkB,CAAC,CAAC;QAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAEzC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACV,SAAS,CAAC,GAAG,CAAC;aACd,IAAI,CAAC,UAAU,CAAC;aAChB,KAAK,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC;aACjB,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE;YAClB,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAClB,CAAC,CAAC;aACH,SAAS,CAAC,MAAM,CAAC;aACjB,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YACV,OAAO,CAAC,CAAC;QACX,CAAC,CAAC;aACD,KAAK,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;aACpB,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE;YACf,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC,CAAC;aACD,IAAI,CAAC,GAAG,EAAE,CAAC,CAAM,EAAE,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;aACrD,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACnD,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;QAEnC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACV,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC;aACrB,IAAI,CAAC,WAAW,EAAE,cAAc,GAAG,UAAU,GAAG,GAAG,CAAC;YACrD,oDAAoD;aACnD,IAAI,CAAC,0CAAa,CAAC,CAAC,CAAC,CAAC;aAClB,MAAM,CAAC,MAAM,CAAC;aACd,IAAI,CAAC,GAAG,EAAE,UAAU,GAAG,CAAC,CAAC;aACzB,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC,qCAAqC;aACxE,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC;aACpB,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC;aACpB,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC;aAC3B,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC;aAC7B,IAAI,CAAC,OAAO,CAAC,CAAC;QAErB,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACV,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC;aACrB,IAAI,CAAC,wCAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;aACnC,MAAM,CAAC,MAAM,CAAC;aACZ,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;aAChC,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,WAAW,CAAC,IAAI,GAAG,EAAE,CAAE,CAAC,qCAAqC;aAC3E,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC;aACpB,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC;aAC3B,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC;aAC7B,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC;aACvB,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;QAEtC,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACzB,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC;aACjC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;aACrB,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC;aAC5B,IAAI,CAAC,WAAW,EAAE,aAAa,UAAU,MAAM,CAAC;aAChD,SAAS,CAAC,GAAG,CAAC;aACd,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;aAC5B,KAAK,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC;aACjB,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,OAAO,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAEzE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;aAClB,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;aACb,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;aACjB,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;aAClB,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAEnB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;aAClB,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;aACb,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC;aACd,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC;aACpB,IAAI,CAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC;;0GA/KU,6BAA6B;2HAA7B,6BAA6B;QCX1C,sEAAK;QAIC,oEACM;QAWN,yEAAwD;QAIhC,uDAAgB;QAAA,4DAAK;QACrC,uHAAwE;QAC1E,4DAAK;QAEP,wEAAO;QACL,yHAGK;QACP,4DAAQ;;QAzBP,0DAAyC;QAAzC,kGAAyC;QAYzC,0DAAyB;QAAzB,sFAAyB;QAIN,0DAAgB;QAAhB,iFAAgB;QACL,0DAAY;QAAZ,kFAAY;QAIhB,0DAAY;QAAZ,kFAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACxBM;AAEgC;AACZ;AAEL;AACL;AACd;AACO;AACqB;AACV;AAEL;AACP;AACT;AAC0B;;;AAE1E,MAAM,MAAM,GAAW;IACrB,EAAC,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,+FAA0B,EAAE,WAAW,EAAE,CAAC,2DAAS,CAAC,EAAE;IACrF,EAAC,IAAI,EAAE,8BAA8B,EAAE,SAAS,EAAE,wFAA2B,EAAE,WAAW,EAAE,CAAC,2DAAS,EAAE,+EAAmB,CAAC,EAAC;IAC7H,EAAC,IAAI,EAAE,yBAAyB,EAAE,SAAS,EAAE,mFAAoB,EAAE,WAAW,EAAE,CAAC,2DAAS,CAAC,EAAC;IAC5F,EAAC,IAAI,EAAE,6BAA6B,EAAE,SAAS,EAAE,oFAAmB,EAAE,WAAW,EAAE,CAAC,2DAAS,CAAC,EAAE,IAAI,EAAE,EAAC,gBAAgB,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAC,EAAC;IACnK,EAAC,IAAI,EAAE,2BAA2B,EAAE,SAAS,EAAE,oFAAmB,EAAE,WAAW,EAAE,CAAC,2DAAS,CAAC,EAAE,IAAI,EAAE,EAAC,gBAAgB,EAAE,oBAAoB,EAAE,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,kBAAkB,EAAC,EAAC;IACvM,EAAC,IAAI,EAAE,2BAA2B,EAAE,SAAS,EAAE,oFAAmB,EAAE,WAAW,EAAE,CAAC,2DAAS,CAAC,EAAE,IAAI,EAAE,EAAC,gBAAgB,EAAE,SAAS,EAAE,KAAK,EAAE,oBAAoB,EAAE,SAAS,EAAE,oBAAoB,EAAC,EAAC;IAChM;QACE,IAAI,EAAE,iBAAiB;QACvB,SAAS,EAAE,mFAAoB;QAC/B,WAAW,EAAE,CAAC,2DAAS,CAAC;QACxB,IAAI,EAAE,EAAC,UAAU,EAAE,2EAAgC,EAAC;KACrD;IACD,mFAAmF;IACnF;QACE,IAAI,EAAE,iBAAiB;QACvB,SAAS,EAAE,+EAAuB;QAClC,WAAW,EAAE,CAAC,2DAAS,EAAE,2EAAiB,CAAC;QAC3C,IAAI,EAAE,EAAC,WAAW,EAAE,yFAA6C,EAAC;KACnE;IACD,EAAC,IAAI,EAAE,kBAAkB,EAAE,SAAS,EAAE,yEAAoB,EAAE,WAAW,EAAE,CAAC,2DAAS,EAAE,+EAAmB,CAAC,EAAC;IAC1G,EAAC,IAAI,EAAE,wBAAwB,EAAE,SAAS,EAAE,mEAAiB,EAAE,WAAW,EAAE,CAAC,2DAAS,CAAC,EAAC;CACzF,CAAC;AAMK,MAAM,sBAAsB;;4FAAtB,sBAAsB;oHAAtB,sBAAsB;wHAHxB,CAAC,mEAAqB,CAAC,MAAM,CAAC,CAAC,EAC9B,0DAAY;oIAEX,sBAAsB,qFAFvB,0DAAY;;;;;;;;;;;;;;;;;;;;;;;AC1CY;AAEyC;;;;;;;;;;ICH3E,yEAAkI;IAChI,+EAAwK;IAC1K,4DAAM;;;IADY,0DAA4D;IAA5D,kQAA4D;;;IAY1E,yEAAyF;IAG5D,uDAA6C;IAAA,4DAAK;IACzE,0EAAyB;IACvB,8EAAgG;IAClG,4DAAM;IACN,wEAAyD;IAAA,kEAAO;IAAA,sEAAyC;IAAA,4DAAI;;;;IAJtF,0DAA6C;IAA7C,sHAA6C;IAEpD,0DAAkC;IAAlC,8FAAkC;;;IALxD,6HAUM;;;IAVwB,6FAAsB;;ADDnD,MAAM,kBAAkB;IAmC7B,YAAoB,YAA0B,EAAU,gBAAkC;QAAtE,iBAAY,GAAZ,YAAY,CAAc;QAAU,qBAAgB,GAAhB,gBAAgB,CAAkB;QA1B1F,kBAAa,GAAG,IAAI,CAAC;QAErB,mBAAc,GAAe,EAAE,CAAC;QAChC,sBAAiB,GAAe,EAAE,CAAC;QACnC,sBAAiB,GAAG,IAAI,8CAAY,EAAE,CAAC;QAEvC,sBAAiB,GAAG,CAAC,CAAC;QACtB,sBAAiB,GAAG,CAAC,CAAC;QAEtB,qBAAgB,GAAW,IAAI,CAAC,iBAAiB,CAAC;QAElD,iBAAY,GAAG,IAAI,CAAC;QAEpB,kBAAa,GAAG;YACd,eAAe,EAAE;gBACf,KAAK,EAAE,kEAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,0CAA0C;aACvC;YACd,eAAe,EAAE;gBACf,KAAK,EAAE,kEAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,0CAA0C;aACvC;SACf,CAAC;IAE4F,CAAC;IAE/F,WAAW;QACT,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YACzB,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,CAAC,CAAC,gBAAgB;YACtD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,2BAA2B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,SAAS,CACjG,CAAC,CAAC,EAAE;gBACF,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,GAAG,CAC/C,CAAC,CAAC,EAAE;oBACF,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAC3D,CAAC,CAAC,EAAE,GAAG,OAAO,EAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAC,CAAC,CAAC,CAAC,CACrD,EAAC,CAAC;gBACL,CAAC,CACF,CAAC;gBAEF,MAAM,kBAAkB,GAAG,EAAE,CAAC;gBAC9B,KAAK,MAAM,YAAY,IAAI,CAAC,EAAE;oBAC5B,MAAM,SAAS,GAAG,EAAE,CAAC;oBACrB,IAAI,SAAS,GAAG,EAAE,CAAC;oBACnB,KAAK,MAAM,OAAO,IAAI,YAAY,CAAC,YAAY,EAAE;wBAC/C,MAAM,QAAQ,GAAG,EAAE,CAAC;wBACpB,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;4BAC1B,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAE,CAAC;yBACxD;wBACD,QAAQ,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;wBAC5C,KAAK,MAAM,SAAS,IAAI,OAAO,CAAC,WAAW,EAAE;4BAC3C,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC;yBAChD;wBACD,QAAQ,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,CAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;wBACxF,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;qBAC1B;oBACD,kBAAkB,CAAC,IAAI,CACrB;wBACE,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,YAAY,CAAC,SAAS;qBAC9B,CACF,CAAC;iBACH;gBACD,IAAI,CAAC,cAAc,GAAG,kBAAkB,CAAC;gBACzC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAC5B,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;gBACN,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;gBAC1B,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;YACxE,CAAC,CACF,CAAC;SACH;IACH,CAAC;IAED,WAAW;QACT,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,CAAC;IACvC,CAAC;IAED,QAAQ,KAAI,CAAC;;oFA1FF,kBAAkB;gHAAlB,kBAAkB;QCb/B,yEAAiB;QACf,8GAEM;QACN,0MAqBc;QAChB,4DAAM;;;QAzBE,0DAAwE;QAAxE,kRAAwE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAjC;AACmB;AAEU;AACR;AACT;AACO;AACR;AACW;AACe;AACvB;AACG;AACM;AACZ;AACA;AACqB;AACjB;AACK;AACL;AACE;AACG;AACQ;AACD;;;;;AA8CnE,MAAM,eAAe;;8EAAf,eAAe;6GAAf,eAAe;kHAFf,CAAC,0EAAgB,CAAC,YAzCpB;YACP,0DAAY;YACZ,qEAAc;YACd,6EAAsB;YACtB,wDAAW;YACX,gEAAmB;SACpB;oIAqCU,eAAe,mBAnCxB,oEAAkB;QAClB,mEAAiB;QACjB,8EAAsB;QACtB,6FAA6B;QAC7B,qFAA0B;QAC1B,yEAAoB;QACpB,+EAAuB;QACvB,oEAAiB;QACjB,oEAAiB;QACjB,yFAA2B;QAC3B,wEAAmB;QACnB,6EAAqB;QACrB,wEAAmB;QACnB,0EAAoB;QACpB,6EAAqB;QACrB,qFAAyB;QACzB,oFAAmB,aAvBnB,0DAAY;QACZ,qEAAc;QACd,6EAAsB;QACtB,wDAAW;QACX,gEAAmB,aAsBnB,oEAAkB;QAClB,mEAAiB;QACjB,8EAAsB;QACtB,6FAA6B;QAC7B,qFAA0B;QAC1B,yEAAoB;QACpB,+EAAuB;QACvB,oEAAiB;QACjB,oEAAiB;QACjB,yFAA2B;QAC3B,wEAAmB;QACnB,6EAAqB;QACrB,0EAAoB;mEAtBpB,yFAA2B,0TAE3B,6EAAqB;IANrB,yEAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;ACtCsC;AAEO;AACd;AAEA;AAImO;AAMzP;;;AAM1B,MAAe,mBAAmB;CAExC;AA0HD,MAAM,YAAY,GAAG,wEAAkB,CAAC;AAIjC,MAAM,gBAAgB;IAmC3B,+GAA+G;IAC/G,YAAoB,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;QAlCpC,sBAAiB,GAAiD,IAAI,iDAAe,CAA8B,EAAE,CAAC,CAAC;QAEvH,kBAAa,GAAiC;YAC5C,EAAC,IAAI,EAAE,oBAAoB,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAC;YAC3D,EAAC,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAC;YACpD,EAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAC;YAClD,EAAC,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAC;YACrD,EAAC,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAC;YACnD,wDAAwD;YACxD,kDAAkD;YAClD,EAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAC;YAC/C,EAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAC;YAChD,EAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAC;YAChD,EAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAC;YAChD,EAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAC;YAChD,EAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAC;YAC9C,EAAC,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAC;YACtD,EAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAC;YAClD,EAAC,IAAI,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAC;YACxD,EAAC,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAC;YACtD,EAAC,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAC;YACpD,EAAC,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAC;YACvD,EAAC,IAAI,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAC;YACxD,EAAC,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAC;SACxD;QAED,0BAAqB,GAA+B;YAClD,EAAC,SAAS,EAAE,iBAAiB,EAAE,WAAW,EAAE,EAAE,EAAE,gBAAgB,EAAE,sCAAsC,EAAE,KAAK,EAAE,EAAE,EAAC;YACpH,EAAC,SAAS,EAAE,iBAAiB,EAAE,WAAW,EAAE,EAAE,EAAE,gBAAgB,EAAE,sCAAsC,EAAE,KAAK,EAAE,EAAE,EAAC;YACpH,EAAC,SAAS,EAAE,iBAAiB,EAAE,WAAW,EAAE,EAAE,EAAE,gBAAgB,EAAE,sCAAsC,EAAE,KAAK,EAAE,EAAE,EAAC;YACpH,EAAC,SAAS,EAAE,iBAAiB,EAAE,WAAW,EAAE,EAAE,EAAE,gBAAgB,EAAE,sCAAsC,EAAE,KAAK,EAAE,EAAE,EAAC;SACrH,CAAC;IAGsC,CAAC;IAEzC,wBAAwB,CAAC,SAAiB;QACxC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,WAAW,SAAS,0BAA0B,CAAC;aAClF,IAAI,CACH,mDAAG,CAAE,IAAI,CAAC,EAAE,GAAG,OAAO,IAAI,CAAC,6BAA6B,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EACnE,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACJ,CAAC;IAED,wBAAwB,CAAC,SAAiB;QACxC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,WAAW,SAAS,0BAA0B,CAAC;aAClF,IAAI,CACH,mDAAG,CAAE,IAAI,CAAC,EAAE,GAAG,OAAO,IAAI,CAAC,6BAA6B,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EACnE,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACJ,CAAC;IAED,2BAA2B,CAAC,QAAgB;QAC1C,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,WAAW,QAAQ,yBAAyB,CAAC;aAChF,IAAI,CACH,mDAAG,CAAE,IAAI,CAAC,EAAE;YACV,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC,CAAC;YAC7D,OAAO,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC;QACzC,CAAC,CAAC,EACF,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACJ,CAAC;IAED,0BAA0B;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,uCAAuC,CAAC;aAC3E,IAAI,CACH,mDAAG,CAAC,IAAI,CAAC,EAAE,GAAG,OAAO,IAAI,CAAC,yBAAyB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAC9D,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACJ,CAAC;IAED,qBAAqB;QACnB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,kCAAkC,CAAC;aACtE,IAAI,CACH,mDAAG,CAAC,IAAI,CAAC,EAAE,GAAG,OAAO,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EACzD,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACJ,CAAC;IAED,uBAAuB;QACrB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,qCAAqC,CAAC;aACzE,IAAI,CACH,mDAAG,CAAC,IAAI,CAAC,EAAE,GAAG,OAAO,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAC3D,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACJ,CAAC;IAED,yBAAyB;QACvB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,sCAAsC,CAAC;aAC1E,IAAI,CACH,mDAAG,CAAC,IAAI,CAAC,EAAE,GAAG,OAAO,IAAI,CAAC,wBAAwB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAC7D,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACJ,CAAC;IAED,sBAAsB;QACpB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,oCAAoC,CAAC;aACxE,IAAI,CACH,mDAAG,CAAC,IAAI,CAAC,EAAE,GAAG,OAAO,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAC1D,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;IACJ,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,oCAAoC,CAAC;aACxE,IAAI,CACH,mDAAG,CAAE,IAAI,CAAC,EAAE,GAAG,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,GAAC,CAAC,EAC7C,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,GAAC,CAAC,CAC9C;IACH,CAAC;IAED,cAAc,CAAC,EAAU,EAAE,WAA0B;QACnD,IAAI,WAAW,GAAG,EAAE;QACpB,WAAW,CAAC,OAAO,CACjB,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE;YACR,WAAW,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;YACnC,WAAW,IAAI,SAAS,EAAE,EAAE,CAAC;QAC/B,CAAC,CACF;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,2BAA2B,EAAE,GAAG,WAAW,EAAE,CAAC;aACjF,IAAI,CACH,mDAAG,CAAE,IAAI,CAAC,EAAE,GAAG,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,GAAC,CAAC;QAClD,sCAAsC;QACtC,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,GAAC,CAAC,CAC9C,CAAC;IACJ,CAAC;IAED,eAAe,CAAC,EAAU,EAAE,QAAgB,EAAE,OAAe,EAAE,WAA0B,EAAE,MAAe;QACxG,IAAI,MAAM,GAAe,IAAI,4DAAU,EAAE,CAAC;QAC1C,IAAI,MAAM,EAAE;YACV,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAAC;SACnD;aAAM;YACL,IAAI,QAAQ,EAAE;gBACZ,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC;aACnD;YACD,IAAI,OAAO,EAAE;gBACX,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;aAC5C;SACF;QAED,WAAW,CAAC,OAAO,CACjB,CAAC,EAAE,EAAE,EAAE;YACL,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;QAC9C,CAAC,CACF;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,0BAA0B,EAAE,EAAC,MAAM,EAAE,MAAM,EAAC,CAAC;aAChF,IAAI,CACH,mDAAG,CAAE,IAAI,CAAC,EAAE,GAAG,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,GAAC,CAAC,EAClD,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,GAAC,CAAC,CAC9C,CAAC;IACJ,CAAC;IAED,mBAAmB,CAAC,EAAU,EAAE,QAAgB,EAAE,OAAe,EAAE,WAA0B;QAC3F,IAAI,MAAM,GAAe,IAAI,4DAAU,EAAE,CAAC;QAC1C,IAAI,QAAQ,EAAE;YACZ,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC;SACnD;QACD,IAAI,OAAO,EAAE;YACX,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;SAC5C;QAED,WAAW,CAAC,OAAO,CACjB,CAAC,EAAE,EAAE,EAAE;YACL,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;QAC9C,CAAC,CACF;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,0BAA0B,EAAE,EAAC,MAAM,EAAE,MAAM,EAAC,CAAC;aAChF,IAAI,CACH,mDAAG,CAAE,IAAI,CAAC,EAAE;YACV,MAAM,MAAM,GAAiB,IAAI,CAAC,cAAc,CAAC,CAAC;YAElD,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAE,CAAC,CAAC,EAAE;gBACrC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;oBAC9B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,EAAE;wBAClF,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;qBAC5C;gBACH,CAAC,CAAC;YACJ,CAAC,CAAC;YAEF,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE;gBACnC,8BAA8B;gBAC9B,yCAAyC;gBACzC,IAAI;gBACJ,MAAM,OAAO,GAAG,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC;gBAC/B,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,EAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAC;gBACzF,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE;oBAC3C,MAAM,OAAO,GAAG,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC;oBAC/B,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG;wBAC5C,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,EAAE,CAAC,WAAW,EAAE,gBAAgB,EAAE,EAAE,CAAC,gBAAgB,EAAE,KAAK,EAAE,EAAE;qBACvG,CAAC;oBAEF,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;wBAC3C,IAAI,EAAE,GAAW,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;wBAClD,IAAI,EAAQ,CAAC;wBACb,IAAI,GAAS,CAAC;wBAEd,IAAI,EAAE,CAAC,QAAQ,KAAK,IAAI,IAAI,EAAE,KAAK,GAAG,EAAE;4BACtC,EAAE,GAAG,mCAAM,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;4BAE/D,MAAM,EAAE,GAAG,mCAAM,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAC;4BAC7D,IAAI,EAAE,CAAC,IAAI,CAAC,mCAAM,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE;gCAC3C,EAAE,GAAG,GAAG,CAAC;6BACV;4BACD,IAAI,EAAE,CAAC,IAAI,CAAC,mCAAM,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE;gCAC1C,EAAE,GAAG,GAAG,CAAC;6BACV;4BACD,IAAI,EAAE,CAAC,IAAI,CAAC,mCAAM,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE;gCACzC,EAAE,GAAG,GAAG,CAAC;6BACV;4BACD,IAAI,EAAE,CAAC,IAAI,CAAC,mCAAM,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE;gCACzC,EAAE,GAAG,GAAG;6BACT;4BAED,GAAG,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC;yBACnB;wBAGD,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG;4BACvD,QAAQ,EAAE,EAAE;4BACZ,OAAO,EAAE,IAAI;4BACb,OAAO,EAAE,EAAE,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;4BACzC,UAAU,EAAE,EAAE,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI;yBAC9C;oBACH,CAAC,CAAC;gBAEJ,CAAC,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,EACF,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,GAAC,CAAC,CAC9C,CAAC;IACJ,CAAC;IAED,gBAAgB,CAAC,EAAU,EAAE,QAAgB,EAAE,OAAe,EAAE,WAA0B;QACxF,IAAI,MAAM,GAAe,IAAI,4DAAU,EAAE,CAAC;QAC1C,IAAI,QAAQ,EAAE;YACZ,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC;SACnD;QACD,IAAI,OAAO,EAAE;YACX,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;SAC5C;QAED,WAAW,CAAC,OAAO,CACjB,CAAC,EAAE,EAAE,EAAE;YACL,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;QAC9C,CAAC,CACF;QACD,oFAAoF;QACpF,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,wBAAwB,EAAE,EAAC,MAAM,EAAE,MAAM,EAAC,CAAC;aAC9E,IAAI,CACH,mDAAG,CAAE,IAAI,CAAC,EAAE,GAAG,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,GAAC,CAAC,EAClD,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,GAAC,CAAC,CAC9C,CAAC;IACJ,CAAC;IAED,sBAAsB,CAAC,mBAA4C;QACjE,iCAAiC;QACjC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,YAAY,+BAA+B,EAAE,mBAAmB,CAAC;aACzF,IAAI,CACH,mDAAG,CAAE,CAAC,IAA8B,EAAE,EAAE,GAAG,OAAO,IAAI,CAAC,sBAAsB,CAAC,GAAC,CAAC,EAChF,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,GAAC,CAAC,CAC9C,CAAC;IACJ,CAAC;IAED,4BAA4B,CAAC,yBAAwD;QACnF,iCAAiC;QACjC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,YAAY,qCAAqC,EAAE,yBAAyB,CAAC;aACrG,IAAI,CACH,mDAAG,CAAE,CAAC,IAAoC,EAAE,EAAE,GAAG,OAAO,IAAI,CAAC,yBAAyB,CAAC,EAAC,CAAC,CAAC,EAC1F,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,GAAC,CAAC,CAC9C,CAAC;IACJ,CAAC;IAED,wGAAwG;IACxG,iBAAiB,CAAC,cAAwC;QACxD,iCAAiC;QACjC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,YAAY,mCAAmC,EAAE,cAAc,CAAC;aACxF,IAAI,CACH,mDAAG,CAAE,CAAC,IAA+B,EAAE,EAAE,GAAG,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAC,CAAC,EAC5E,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,GAAC,CAAC,CAC9C,CAAC;IACJ,CAAC;IAED,mBAAmB,CAAC,QAAgB;QAClC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,iCAAiC,QAAQ,EAAE,CAAC;aAC/E,IAAI,CACH,mDAAG,CAAE,IAAI,CAAC,EAAE,GAAG,OAAO,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,GAAC,CAAC,EACzD,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,GAAC,CAAC,CAC9C,CAAC;IACJ,CAAC;IAED,sBAAsB;QACpB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,8BAA8B,CAAC;aAClE,IAAI,CACH,mDAAG,CAAE,CAAC,IAAyB,EAAE,EAAE,GAAE,OAAO,IAAI,GAAC,CAAC,EAClD,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,GAAC,CAAC,CAC9C;IACH,CAAC;IAED,4BAA4B;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,wCAAwC,CAAC;aAC5E,IAAI,CACH,mDAAG,CAAE,IAAI,CAAC,EAAE,GAAG,OAAO,IAAI,CAAC,2BAA2B,CAAC,IAAI,EAAE,GAAC,CAAC,EAC/D,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,EAAC,CAAC,CAAC,CAC/C;IACH,CAAC;IAED,WAAW,CAAC,IAAY,EAAE,SAAiB,EAAE,QAAgB;QAC3D,IAAI,MAAM,GAAe,IAAI,4DAAU,EAAE,CAAC;QAC1C,IAAI,IAAI,EAAE;YAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC;SAAC;QAChD,IAAI,SAAS,EAAE;YAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC;SAAC;QAC/D,IAAI,QAAQ,EAAE;YAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC;SAAC;QAE5D,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,iCAAiC,EAAE,EAAC,MAAM,EAAE,MAAM,EAAC,CAAC;aACvF,IAAI,CACH,mDAAG,CAAE,CAAC,IAAqB,EAAE,EAAE,GAAE,OAAO,IAAI,GAAC,CAAC,EAC9C,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,GAAC,CAAC,CAC9C;IACH,CAAC;IAED,WAAW,CAAC,OAAe,EAAE,aAA8B,EAAE,QAAiB;QAC5E,IAAI,MAAM,GAAe,IAAI,4DAAU,EAAE,CAAC;QAC1C,IAAI,OAAO,EAAE;YAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;SAAC;QACtD,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE;YACrC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC;SAC9D;aAAM;YACL,IAAI,aAAa,EAAE;gBAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,aAAa,CAAC,QAAQ,EAAE,CAAC;aAAC;YAClF,IAAI,QAAQ,EAAE;gBAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC;aAAC;SAC7D;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,6BAA6B,EAAE,EAAC,MAAM,EAAE,MAAM,EAAC,CAAC;aACnF,IAAI,CACH,mDAAG,CAAE,CAAC,IAAqB,EAAE,EAAE,GAAE,OAAO,IAAI,GAAC,CAAC,EAC9C,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,GAAC,CAAC,CAC9C;IACH,CAAC;IAED,cAAc,CAAC,IAAY,EAAE,QAAgB;QAC3C,IAAI,MAAM,GAAe,IAAI,4DAAU,EAAE,CAAC;QAC1C,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;QACxD,IAAI,IAAI,EAAE;YAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;SAAE;QAElD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,6BAA6B,EAAE,EAAC,MAAM,EAAE,MAAM,EAAC,CAAC;aACnF,IAAI,CACH,mDAAG,CAAE,CAAC,IAAqB,EAAE,EAAE,GAAE,OAAO,IAAI,GAAC,CAAC,EAC9C,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,GAAC,CAAC,CAC9C;IAEH,CAAC;IAID,YAAY,CAAC,EAAmB,EAAE,EAAW;QAC3C,IAAI,MAAM,GAAe,IAAI,4DAAU,EAAE,CAAC;QAC1C,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE;YAC1B,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC,QAAQ,EAAE,CAAC;SAClD;aAAM;YACL,IAAI,EAAE,EAAE;gBAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,QAAQ,EAAE,CAAC;aAAC;YAC5D,IAAI,EAAE,EAAE;gBAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC;aAAC;SACjD;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,yBAAyB,EAAE,EAAC,MAAM,EAAE,MAAM,EAAC,CAAC;aAC/E,IAAI,CACH,mDAAG,CAAE,CAAC,IAAqB,EAAE,EAAE,GAAE,OAAO,IAAI,GAAC,CAAC,EAC9C,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,GAAC,CAAC,CAC9C;IACH,CAAC;IAED,kBAAkB,CAAC,QAAgB,EAAE,QAAgB;QACnD,IAAI,MAAM,GAAe,IAAI,4DAAU,EAAE,CAAC;QAC1C,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;QACxD,IAAI,QAAQ,EAAE;YAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;SAAE;QAE1D,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,gCAAgC,EAAE,EAAC,MAAM,EAAE,MAAM,EAAC,CAAC;aACtF,IAAI,CACH,mDAAG,CAAE,CAAC,IAAqB,EAAE,EAAE,GAAE,OAAO,IAAI,GAAC,CAAC,EAC9C,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,GAAC,CAAC,CAC9C;IAEH,CAAC;IAED,gBAAgB,CAAC,QAAgB,EAAE,QAAgB;QACjD,IAAI,MAAM,GAAe,IAAI,4DAAU,EAAE,CAAC;QAC1C,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;QACxD,IAAI,QAAQ,EAAE;YAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;SAAE;QAE1D,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,iCAAiC,EAAE,EAAC,MAAM,EAAE,MAAM,EAAC,CAAC;aACvF,IAAI,CACH,mDAAG,CAAE,CAAC,IAAqB,EAAE,EAAE,GAAE,OAAO,IAAI,GAAC,CAAC,EAC9C,0DAAU,CAAE,GAAG,CAAC,EAAE,GAAG,OAAO,gDAAU,CAAC,GAAG,CAAC,GAAC,CAAC,CAC9C;IAEH,CAAC;IAED,eAAe;QACb,OAAO;YACL,EAAE,EAAE,8DAAiB;YACrB,IAAI,EAAE;gBACJ,mEAAsB;gBACtB,mEAAsB;gBACtB,uEAA0B;gBAC1B,wEAA2B;gBAC3B,yEAA4B;gBAC5B,4EAA+B;gBAC/B,4EAA+B;gBAC/B,uEAA0B;aAC3B;SACkB;IACvB,CAAC;IAED,oBAAoB,CAAC,eAAuB;QAC1C,IAAI,SAAS,GAAG,SAAS,CAAC;QAC1B,IAAI,eAAe,KAAK,IAAI,EAAE;YAC5B,SAAS,GAAG,eAAe,CAAC,cAAc,CAAC,IAAI,EAAE,EAAC,KAAK,EAAE,SAAS,EAAE,qBAAqB,EAAE,CAAC,EAAC,CAAC;SAC/F;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,CAAC,gBAAwB;QAC9B;;;WAGG;QACH,IAAI,UAAU,GAAG,EAAE,CAAC;QACpB,IAAI,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;YAC7F,UAAU,GAAG,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC;SAC7C;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;;gFA/aU,gBAAgB;iHAAhB,gBAAgB,WAAhB,gBAAgB;;;;;;;;;;;;;;;;;;;;;ACtJkD;;;;;;;;;;ICKnE,yEAA2E;IACmC,mYAAS,8CAAiC,IAAC;IACrJ,yEAAuB;IAES,uDAAqB;IAAA,4DAAK;IACtD,gFAA+I;IAEjJ,4DAAI;;;;;IANiC,0DAAkE;IAAlE,iLAAkE;IAEpG,0DAAiB;IAAjB,6IAAiB;IACU,0DAAqB;IAArB,qFAAqB;IACjC,0DAAkD;IAAlD,qHAAkD;;;ADH/E,MAAM,qBAAqB;IAWhC;QATS,cAAS,GAAG,EAAE,CAAC;QACf,iBAAY,GAAG,EAAE,CAAC;QAClB,mBAAc,GAAe,EAAE,CAAC;QAChC,0BAAqB,GAAG,CAAC,CAAC,CAAC;QAC3B,gBAAW,GAAG,EAAE,CAAC;QACjB,eAAU,GAAG,KAAK,CAAC;QACnB,gBAAW,GAAG,IAAI,CAAC;QAClB,eAAU,GAAG,IAAI,uDAAY,EAA2C,CAAC;IAEnE,CAAC;IAEjB,QAAQ;QACN,mCAAmC;IACrC,CAAC;IAED,WAAW,CAAC,SAAiB,EAAE,UAAkB;QAC/C,IAAI,CAAC,qBAAqB,GAAG,UAAU,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,+BAA+B,SAAS,gBAAgB,UAAU,EAAE,CAAC,CAAC;QAClF,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAC,CAAC;IACtE,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC5C,CAAC;;0FAzBU,qBAAqB;mHAArB,qBAAqB;QCPlC,yEAAoD;QAErB,uDAAc;QAAA,2EAA0B;QAAA,uDAAgB;QAAA,4DAAQ;QACvF,+EAAoJ;QACpJ,yEAA+C;QAC3C,iHAUM;QACR,4DAAM;;QAhBE,0JAAiC;QAEpB,0DAAc;QAAd,wFAAc;QAA0B,0DAAgB;QAAhB,iFAAgB;QAC/D,0DAAyB;QAAzB,sFAAyB;QAEP,0DAAmB;QAAnB,uFAAmB;;;;;;;;;;;;;;;;;;;;ACLkB;;;;;AAQxE,MAAM,yBAAyB;IAiCpC;QA/BA,oBAAe,GAAG,IAAI,GAAG,CACvB;YACE,CAAC,GAAG,EAAE,sBAAsB,CAAC;YAC7B,CAAC,GAAG,EAAE,sBAAsB,CAAC;YAC7B,CAAC,GAAG,EAAE,sBAAsB,CAAC;YAC7B,CAAC,GAAG,EAAE,sBAAsB,CAAC;YAC7B,CAAC,GAAG,EAAE,uBAAuB,CAAC;YAC9B,CAAC,GAAG,EAAE,uBAAuB,CAAC;YAC9B,CAAC,GAAG,EAAE,sBAAsB,CAAC;YAC7B,CAAC,GAAG,EAAE,oBAAoB,CAAC;YAC3B,CAAC,GAAG,EAAE,sBAAsB,CAAC;SAC9B,CACF,CAAC;QACF,oBAAe,GAAG,IAAI,GAAG,CACvB;YACE,CAAC,GAAG,EAAE,qBAAqB,CAAC;YAC5B,CAAC,GAAG,EAAE,qBAAqB,CAAC;YAC5B,CAAC,GAAG,EAAE,qBAAqB,CAAC;YAC5B,CAAC,GAAG,EAAE,qBAAqB,CAAC;YAC5B,CAAC,GAAG,EAAE,qBAAqB,CAAC;YAC5B,CAAC,GAAG,EAAE,qBAAqB,CAAC;YAC5B,CAAC,GAAG,EAAE,mBAAmB,CAAC;YAC1B,CAAC,GAAG,EAAE,wBAAwB,CAAC;YAC/B,CAAC,GAAG,EAAE,2BAA2B,CAAC;SACnC,CACF,CAAC;QAIQ,sBAAiB,GAA0B,IAAI,uDAAY,CAAC,KAAK,CAAC,CAAC;IAE7D,CAAC;IAEjB,QAAQ,KAAU,CAAC;IAEnB,IAAI,iBAAiB;;QACnB,uCAAuC;QACvC,mEAAmE;QACnE,IAAI;QACJ,IAAI,IAAI,CAAC,iBAAiB,EAAE;YAC1B,IAAI,WAAI,CAAC,eAAe,0CAAE,QAAQ,MAAK,GAAG,IAAI,IAAI,IAAI,CAAC,UAAI,CAAC,eAAe,0CAAE,OAAO,CAAC,GAAG,IAAI,IAAI,EAAE,EAAE;gBAClG,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC;aACrC;YACD,IAAI,WAAI,CAAC,eAAe,0CAAE,QAAQ,MAAK,GAAG,EAAE;gBAC1C,MAAM,gBAAgB,GAAG,IAAI,IAAI,CAAC,UAAI,CAAC,eAAe,0CAAE,UAAU,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,UAAI,CAAC,eAAe,0CAAE,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC;gBAClI,MAAM,YAAY,GAAG,IAAI,IAAI,CAAC,UAAI,CAAC,eAAe,0CAAE,UAAU,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;gBACjG,IAAI,YAAY,GAAG,CAAC,EAAE;oBAAE,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC;iBAAC;gBAC7D,IAAI,YAAY,GAAG,gBAAgB,GAAG,GAAG,EAAE;oBAAE,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC;iBAAC;gBAClF,IAAI,YAAY,GAAG,gBAAgB,GAAG,IAAI,EAAE;oBAAE,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC;iBAAC;aACpF;SACF;QAED,OAAO,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAC7B,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAI,CAAC,eAAe,0CAAE,QAAQ,CAAC,IAAI,yBAAyB,CAAC,CAAC,CAAC;YACzF,aAAa;IACjB,CAAC;IAED,IAAI,iBAAiB;;QACnB,IAAI,IAAI,CAAC,iBAAiB,IAAI,WAAI,CAAC,eAAe,0CAAE,QAAQ,MAAK,GAAG,IAAI,IAAI,IAAI,CAAC,UAAI,CAAC,eAAe,0CAAE,OAAO,CAAC,GAAG,IAAI,IAAI,EAAE,EAAE;YAC5H,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC;SACrC;QAED,IAAI,IAAI,CAAC,iBAAiB,EAAE;YAC1B,IAAI,WAAI,CAAC,eAAe,0CAAE,QAAQ,MAAK,GAAG,IAAI,IAAI,IAAI,CAAC,UAAI,CAAC,eAAe,0CAAE,OAAO,CAAC,GAAG,IAAI,IAAI,EAAE,EAAE;gBAClG,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC;aACrC;YACD,IAAI,WAAI,CAAC,eAAe,0CAAE,QAAQ,MAAK,GAAG,EAAE;gBAC1C,MAAM,gBAAgB,GAAG,IAAI,IAAI,CAAC,UAAI,CAAC,eAAe,0CAAE,UAAU,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,UAAI,CAAC,eAAe,0CAAE,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC;gBAClI,MAAM,YAAY,GAAG,IAAI,IAAI,CAAC,UAAI,CAAC,eAAe,0CAAE,UAAU,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;gBACjG,IAAI,YAAY,GAAG,CAAC,EAAE;oBAAE,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC;iBAAC;gBAC7D,IAAI,YAAY,GAAG,gBAAgB,GAAG,GAAG,EAAE;oBAAE,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC;iBAAC;gBAClF,IAAI,YAAY,GAAG,gBAAgB,GAAG,IAAI,EAAE;oBAAE,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC;iBAAC;aACpF;SACF;QAED,OAAO,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAC7B,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAI,CAAC,eAAe,0CAAE,QAAQ,CAAC,IAAI,wBAAwB,CAAC,CAAC;YACtF,6BAA6B;IACjC,CAAC;IAED,iBAAiB;QACf,IAAI,IAAI,CAAC,iBAAiB,EAAE;YAC1B,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACnC;IACH,CAAC;;kGAtFU,yBAAyB;uHAAzB,yBAAyB;QCRtC,uEAAwK;QAA9B,4IAAS,uBAAmB,IAAC;QACnK,qEAAyD;QAC7D,4DAAI;;QAFD,4KAA4C;QACvB,0DAA6B;QAA7B,0FAA6B;;;;;;;;;;;;;;;;;;;;;;;;IEGzC,uEAAsH;IAAA,uDAAa;IAAA,0EAAyD;IAAA,uDAAwB;IAAA,4DAAO;;;;;IAA9H,sFAAwB;IAAC,0DAAa;IAAb,sFAAa;IAAM,0DAAkD;IAAlD,qHAAkD;IAAC,0DAAwB;IAAxB,wFAAwB;;ADIzN,MAAM,qBAAqB;IAIhC;QAFS,kBAAa,GAA2B,EAAE,CAAC;IAEpC,CAAC;IAEjB,QAAQ;IACR,CAAC;IAED,UAAU,CAAC,SAAiB;QAC1B,IAAI,OAAO,GAAG,EAAE,CAAC;QACjB,QAAQ,SAAS,EAAE;YACjB,KAAK,CAAC;gBACJ,OAAO,GAAG,sBAAsB,CAAC;gBACjC,MAAM;YACR,KAAK,CAAC;gBACJ,OAAO,GAAG,eAAe,CAAC;gBAC1B,MAAM;YACR,KAAK,CAAC;gBACJ,OAAO,GAAG,sBAAsB,CAAC;gBACjC,MAAM;YACR,KAAK,CAAC;gBACJ,OAAO,GAAG,2BAA2B;gBACrC,MAAK;SACR;QACD,OAAO,OAAO;IAChB,CAAC;IAED,SAAS,CAAC,SAAiB;QACzB,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;;0FA9BU,qBAAqB;mHAArB,qBAAqB;QCRlC,yEAAkB;QAIN,6GAA+N;QACjO,4DAAK;QASX,yEAAuB;QAEI,8EAAmB;QAAA,4DAAK;;QAZxB,0DAAkB;QAAlB,sFAAkB;;;;;;;;;;;;;;;;;;;;;;;;ACJD;AAEhD,IAAY,WAKX;AALD,WAAY,WAAW;IACnB,yDAAU;IACV,qDAAQ;IACR,+CAAK;IACL,mDAAO;AACX,CAAC,EALW,WAAW,KAAX,WAAW,QAKtB;AAED,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IACxB,6DAAO;IACP,yDAAK;AACT,CAAC,EAHW,gBAAgB,KAAhB,gBAAgB,QAG3B;AAEM,MAAM,uBAAuB;IAMhC,kFAAkF;IAClF,oDAAoD;IACpD,oBAAoB;IACpB,QAAQ;IACR,IAAI;IAEJ,YAAY,IAAuC;QAC/C,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED,aAAa,CAAC,WAAmB;QAC7B,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,EAAE;YACzB,OAAO,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC;SACrC;QACD,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,EAAE;YACvB,OAAO,WAAW,IAAI,IAAI,CAAC,SAAS,CAAC;SACxC;QACD,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,IAAI,WAAW,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;IACzE,CAAC;CAEJ;AAEM,MAAM,cAAc;IAQvB,YAAY,IAA8B;QAL1C,mBAAc,GAAmC,EAAE,CAAC;QACpD,gBAAW,GAAgB,WAAW,CAAC,UAAU,CAAC;QAClD,eAAU,GAAG,KAAK,CAAC;QACnB,gBAAW,GAAG,KAAK,CAAC;QAGhB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC9B,CAAC;IAID,IAAI,YAAY;QACZ,IAAI,IAAI,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC,GAAG,CAAC;QACtD,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,CAAC,QAAQ,EAAE;YAC3C,4GAA4G;YAC5G,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC;SACzF;aAAM,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,CAAC,KAAK,EAAE;YAC/C,IAAI,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;SAC1C;aAAM,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,CAAC,OAAO,EAAE;YACjD,IAAI,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;SAC3C;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAAA,CAAC;IAEF,IAAI,QAAQ;QACR,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QACpF,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChC,CAAC;IAED,IAAI,SAAS;QACT,IAAI,IAAI,CAAC,UAAU,EAAE;YACjB,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,CAAC,UAAU,EAAE;gBAC7C,OAAO,gBAAgB,CAAC,OAAO;aAClC;iBAAM;gBACH,OAAO,gBAAgB,CAAC,KAAK;aAChC;SACJ;aAAM;YACH,OAAO,IAAI;SACd;IACL,CAAC;CAGJ;AAEM,MAAM,eAAe;IAYxB,YAAmB,IAA+B;QAHlD,aAAQ,GAAiB,IAAI,yDAAY,EAAE,CAAC;QAC5C,YAAO,GAA0B,IAAI,KAAK,EAAkB,CAAC;QAGzD,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAE,CAAC;IAC1G,CAAC;IAED,IAAI,gBAAgB;QAChB,uFAAuF;QACvF,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;QACzF,OAAO,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1E,qFAAqF;IACzF,CAAC;IAED,IAAI,gBAAgB;QAChB,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,uBAAuB;QACvB,0DAA0D;QAC1D,IAAI;YACF,IAAI,IAAI,CAAC,gBAAgB,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE;gBACzF,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,KAAK,CAAC,IAAI,IAAI,CAAC,gBAAgB,GAAG,CAAC,EAAE;oBACnE,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,GAAG,CAAC,CAAC;iBACzC;qBAAM;oBACL,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC;iBACrC;aACF;SACF;QAAC,WAAM;YACN,aAAa;YACb,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC;SACrC;QAED,6EAA6E;QAC7E,wCAAwC;QACxC,IAAI;QAEJ,OAAO,IAAI,CAAC,gBAAgB,CAAC;QAC7B,uCAAuC;IACzC,CAAC;IAED,IAAI,cAAc;QAEhB,wCAAwC;QACxC,mBAAmB;QACnB,kCAAkC;QAClC,kDAAkD;QAClD,uCAAuC;QACvC,sBAAsB;QACtB,mCAAmC;QACnC,UAAU;QACV,6BAA6B;QAC7B,sDAAsD;QACtD,yBAAyB;QACzB,0EAA0E;QAC1E,qCAAqC;QACrC,UAAU;QACV,SAAS;QACT,mCAAmC;QACnC,UAAU;QACV,6BAA6B;QAC7B,2BAA2B;QAC3B,qDAAqD;QACrD,oDAAoD;QACpD,mEAAmE;QACnE,8BAA8B;QAC9B,UAAU;QACV,SAAS;QACT,mCAAmC;QACnC,UAAU;QACV,4BAA4B;QAC5B,2BAA2B;QAC3B,uDAAuD;QACvD,mDAAmD;QACnD,mFAAmF;QACnF,8CAA8C;QAC9C,UAAU;QACV,SAAS;QACT,mCAAmC;QACnC,UAAU;QACV,2BAA2B;QAC3B,qDAAqD;QACrD,+EAA+E;QAC/E,0CAA0C;QAC1C,UAAU;QACV,SAAS;QACT,MAAM;QACN,IAAI;QAEJ,MAAM,EAAE,GAAmB,IAAI,cAAc,EAAE,CAAC;QAE9C,EAAE,CAAC,IAAI,GAAG,OAAO,CAAC;QAClB,EAAE,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC;QACjC,EAAE,CAAC,YAAY,GAAG,GAAG,EAAE,GAAE,OAAO,IAAI,CAAC,UAAU,GAAC,CAAC;QACjD,EAAE,CAAC,WAAW,GAAG,WAAW,CAAC,QAAQ,CAAC;QAEtC,EAAE,CAAC,cAAc,CAAC,IAAI,CACpB,IAAI,uBAAuB,CACzB;YACE,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI;YAC1C,OAAO,EAAE,IAAI;YACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,aAAa,EAAC,CAAC;YAC9D,WAAW,EAAE,aAAa;SAC3B,CACF,CAAC,CAAC;QACH,EAAE,CAAC,cAAc,CAAC,IAAI,CACtB,IAAI,uBAAuB,CACzB;YACE,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,GAAG,GAAG;YACzC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI;YACxC,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,MAAM,EAAC,CAAC;YACvD,WAAW,EAAE,MAAM;SACpB,CACF,CAAC,CAAC;QACH,EAAE,CAAC,cAAc,CAAC,IAAI,CACtB,IAAI,uBAAuB,CACzB;YACE,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,GAAG,KAAK;YAC3C,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,GAAG,GAAG;YACvC,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,sBAAsB,EAAC,CAAC;YACvE,WAAW,EAAE,sBAAsB;SACpC,CACF,CAAC,CAAC;QACH,EAAE,CAAC,cAAc,CAAC,IAAI,CACtB,IAAI,uBAAuB,CACzB;YACE,SAAS,EAAE,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,GAAG,KAAK;YACzC,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,kBAAkB,EAAC,CAAC;YACnE,WAAW,EAAE,kBAAkB;SAChC,CACF,CAAC,CAAC;QAGP,OAAO,EAAE,CAAC;IACd,CAAC;IAED,IAAI,gBAAgB;QAChB,IAAI;YACF,OAAO,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,YAAY,EAAE,CAAC;SACxF;QAAC,WAAM;YACN,OAAO,EAAE,CAAC;SACX;IACH,CAAC;CAEN;AAEM,MAAM,gBAAgB;IAA7B;QAEI,SAAI,GAA2B,EAAE;IACrC,CAAC;CAAA;AAEM,SAAS,YAAY,CAAC,GAAW;IACpC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG;AACzD,CAAC;;;;;;;;;;;;;;;;;AChQM,MAAM,WAAW;IAIpB,YAAY,IAA2B;QACnC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC9B,CAAC;CACJ;AAEM,MAAM,YAAY;IAGrB,YAAY,IAA4B;QAFxC,eAAU,GAAuB,EAAE,CAAC;QAGhC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED,aAAa,CAAC,MAAc;QACxB,OAAO,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC;IAC7D,CAAC;CACJ;;;;;;;;;;;;;;;;;;;;;;AClBwE;AAEqD;AAC1F;;;;;;IC8D5B,0EAA2D;IAAA,iEAAM;IAAA,4DAAM;;;;;IAErE,yEAAoE;IAEO,8UAAS,qBAAW,IAAC;IAC1F,uEAAM;IAAA,uDAAc;IAAA,4DAAO;IAC3B,2EAAuE;IAAA,uDAAwB;IAAA,4DAAO;;;;;IAFtF,0DAAiC;IAAjC,+FAAiC;IAC3C,0DAAc;IAAd,8GAAc;IACA,0DAAkD;IAAlD,qHAAkD;IAAC,0DAAwB;IAAxB,wFAAwB;;;IAoB/F,0EAC8B;IACtB,uDAAU;IAAA,4DAAK;IACnB,qEAAI;IAAO,uDAAkB;IAAA,4DAAQ;;;;;IAFrC,4FAAyB;IACrB,0DAAU;IAAV,0EAAU;IACH,0DAAkB;IAAlB,2FAAkB;;;IAWzB,yEAAwD;IAE9B,uDAAkB;IAAA,4DAAI;;;IAAtB,0DAAkB;IAAlB,mFAAkB;;;IAmBxC,uEAAoL;;;IAAjE,qFAAwB;;;;IAC3I,6EAAyJ;IAA1B,6SAAS,uBAAe,IAAC;IAAC,2EAAgB;IAAA,4DAAS;;;IAalL,uEAA2L;;;;;IAApF,qFAAwB;;;IAHnI,0EAA2G;IAEvD,uDAAkB;IAAA,4DAAK;IACvE,gIAA2L;IAC/L,4DAAM;;;;;;IAJ0E,mGAA0B;IAElG,0DAA2C;IAA3C,4GAA2C;IAAC,0DAAkB;IAAlB,mFAAkB;IAC1D,0DAAqD;IAArD,mIAAqD;;;IAtCzE,sEAAgE;IAExD,qEAA4B;IAC5B,qHAGM;IACN,qEACM;IACV,4DAAM;IACN,0EAAiB;IAEL,uDAAU;IAAA,4DAAK;IAUvB,0EAAwB;IAEpB,2HAAoL;IACpL,6HAAkL;IACtL,4DAAM;IASN,uHAIM;IACN,2EAAmB;IACX,wDAAwD;IAAA,4DAAK;;;;IAtCjD,0DAAoB;IAApB,gHAAoB;IAShC,0DAAU;IAAV,2EAAU;IAYN,0DAAsD;IAAtD,mIAAsD;IACrD,0DAAqD;IAArD,kIAAqD;IAU9C,0DAAsB;IAAtB,gHAAsB;IAMlC,0DAAwD;IAAxD,uNAAwD;;ADpIjF,MAAM,iBAAiB;IAe5B,YAAoB,EAAe,EAAU,MAAc;QAAvC,OAAE,GAAF,EAAE,CAAa;QAAU,WAAM,GAAN,MAAM,CAAQ;QAXlD,kBAAa,GAA2B,EAAE,CAAC;QAIpD,aAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAE7B,iBAAY,GAAG,IAAI,8CAAY,EAAE,CAAC;QAClC,uBAAkB,GAAG,wEAAwB,CAAC;QAC9C,sBAAiB,GAAG,sEAAsB,CAAC;QAC3C,gBAAW,GAAG,2DAAW,CAAC;IAEqC,CAAC;IAEhE,WAAW;QACT,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;IAClC,CAAC;IAED,QAAQ,KAAI,CAAC;IACb,WAAW;QAEX,IAAI;QACJ,eAAe;QACb,8GAA8G;QAC9G,IAAK,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAG;YACjC,OAAO;SACV;QACD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QAC7C,IAAI,CAAC,aAAa,GAAG,IAAI,8DAAc,CACnC;YACE,IAAI,EAAE,OAAO;YACb,gDAAgD;YAChD,WAAW,EAAE,IAAI,CAAC,YAAY;YAC9B,YAAY,EAAE,GAAG,EAAE,GAAE,OAAO,IAAI,CAAC,eAAe,CAAC,UAAU,GAAC;YAC5D,WAAW,EAAE,oEAAoB;YACjC,cAAc,EAAE;gBACd,IAAI,uEAAuB,CACzB;oBACE,kBAAkB;oBAClB,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI;oBAC1D,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,aAAa,EAAC,CAAC;oBAC9D,WAAW,EAAE,aAAa;iBAC3B,CACF;gBACD,IAAI,uEAAuB,CACzB;oBACE,kBAAkB;oBAClB,gBAAgB;oBAChB,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,GAAG,GAAG;oBACzD,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI;oBACxD,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,MAAM,EAAC,CAAC;oBACvD,WAAW,EAAE,MAAM;iBACpB,CACF;gBACD,IAAI,uEAAuB,CACzB;oBACE,iBAAiB;oBACjB,gBAAgB;oBAChB,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,GAAG,KAAK;oBAC3D,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,GAAG,GAAG;oBACvD,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,sBAAsB,EAAC,CAAC;oBACvE,WAAW,EAAE,sBAAsB;iBACpC,CACF;gBACD,IAAI,uEAAuB,CACzB;oBACE,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,GAAG,KAAK;oBACzD,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,kBAAkB,EAAC,CAAC;oBACnE,WAAW,EAAE,kBAAkB;iBAChC,CACF;aACF;SACF,CACF,CAAC;QAEF,mCAAmC;QACnC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC5C,IAAI,CAAC,CAAC,UAAU,EAAE;gBAChB,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,uDAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;aACjE;QACH,CAAC,CAAC;QACF,IAAI,CAAC,YAAY,CAAC,GAAG,CACnB,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,SAAS,CAClC,CAAC,OAAO,EAAE,EAAE;YACV,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;YACpB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBAC/B,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAC7C,qFAAqF;gBACrF,oEAAoE;gBACpE,WAAW;gBACX,8DAA8D;gBAC9D,IAAI;gBACJ,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;gBACzD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;gBACzD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;YAC/C,CAAC,CAAC;QACJ,CAAC,CACF,CACF,CAAC;IAEJ,CAAC;IAEH,UAAU,CAAC,SAAiB;QAC1B,IAAI,OAAO,GAAG,EAAE,CAAC;QACjB,QAAQ,SAAS,EAAE;YACjB,KAAK,CAAC;gBACJ,OAAO,GAAG,sBAAsB,CAAC;gBACjC,MAAM;YACR,KAAK,CAAC;gBACJ,OAAO,GAAG,eAAe,CAAC;gBAC1B,MAAM;YACR,KAAK,CAAC;gBACJ,OAAO,GAAG,sBAAsB,CAAC;gBACjC,MAAM;YACR,KAAK,CAAC;gBACJ,OAAO,GAAG,sCAAsC;gBAChD,MAAK;SACR;QACD,OAAO,OAAO;IAChB,CAAC;IAED,QAAQ,CAAC,SAAiB,EAAE,MAAsB;QAChD,IAAI,WAAW,GAAG,EAAE,CAAC;QACrB,IAAI,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,EAAE;YAC1I,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;SACzC;QACD,OAAO,WAAW;IACpB,CAAC;IAED,SAAS,CAAC,SAAiB;QACzB,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IAED,aAAa,CAAC,WAAmB,EAAE,SAAiB,EAAE,OAAe;QACnE,IAAI,SAAS,KAAK,IAAI,EAAE;YACtB,OAAO,WAAW,GAAG,OAAO,CAAC;SAC9B;QAED,IAAI,OAAO,KAAK,IAAI,EAAE;YACpB,OAAO,WAAW,IAAI,SAAS,CAAC;SACjC;QAED,qEAAqE;QACrE,OAAO,CAAC,WAAW,GAAG,OAAO,IAAI,WAAW,IAAI,SAAS,CAAC,CAAC;IAC7D,CAAC;IAED,iBAAiB,CAAC,UAAkB;QAClC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC;IACjC,CAAC;IAED,SAAS,CAAC,QAAgB,EAAE,SAAiB;QAC3C,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,GAAG,SAAS,CAAC;IAClE,CAAC;IAED,YAAY,CAAC,UAAkB;QAC7B,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,UAAU,EAAE,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC;IACxD,CAAC;IAED,IAAI,0BAA0B;QAC5B,IAAI,IAAI,CAAC,eAAe,CAAC,gBAAgB,KAAK,CAAC,CAAC,EAAE;YAChD,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;SACpC;QAED,IAAI,IAAI,CAAC,eAAe,CAAC,gBAAgB,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE;YACvE,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;SACpC;QAED,OAAO,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC;IAC/C,CAAC;IAED,IAAI,uBAAuB;QACzB,0DAA0D;QAC1D,IAAI;YACF,IAAI,IAAI,CAAC,eAAe,CAAC,gBAAgB,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE;gBACxE,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,KAAK,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,gBAAgB,GAAG,CAAC,EAAE;oBAClF,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAG,CAAC,CAAC;iBACxC;qBAAM;oBACL,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;iBACpC;aACF;SACF;QAAC,WAAM;YACN,OAAO,CAAC,CAAC,CAAC;SACX;QAED,6EAA6E;QAC7E,wCAAwC;QACxC,IAAI;QAEJ,OAAO,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC;IAC/C,CAAC;IAED,IAAI,kBAAkB;QACpB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,IAAI,eAAe;QACjB,IAAI;YACF,OAAO,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,YAAY,EAAE,CAAC;SACvF;QAAC,WAAM;YACN,OAAO,EAAE,CAAC;SACX;IACH,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC;IACzC,CAAC;IAED,aAAa;QACX,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,qBAAqB,CAAC,CAAC;IAC/C,CAAC;IAED,QAAQ,CAAC,QAAgB;QACvB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACtD,CAAC;;kFA3NU,iBAAiB;+GAAjB,iBAAiB;QCZ9B,yEAA4D;QAIpB,0EAAe;QAAA,4DAAK;QAC5C,uEAAyF;QAC7F,4DAAM;QACN,yEAAwB;QAIL,uEAAW;QAAA,4DAAI;QAEtB,2EAAmB;QACZ,uEAAW;QAAA,4DAAI;QAEtB,2EAAiB;QACV,wHAA4D;QAAA,4DAAI;QACnE,qEAAG;QAAA,yGAA6C;QAAA,4DAAI;QAG5D,2EAA+B;QAEpB,gEAAI;QAAA,4DAAI;QAEf,2EAAmB;QACZ,6EAAiB;QAAA,4DAAI;QAE5B,2EAAiB;QACV,+GAAmD;QAAA,4DAAI;QAGlE,2EAAsC;QAE3B,gFAAoB;QAAA,4DAAI;QAE/B,2EAAmB;QACZ,4EAAgB;QAAA,4DAAI;QAE3B,2EAAiB;QACV,wJAA4F;QAAA,4DAAI;QAG3G,2EAA2C;QAEhC,4EAAgB;QAAA,4DAAI;QAE3B,2EAAmB;QACZ,8EAAkB;QAAA,4DAAI;QAE7B,2EAAiB;QACV,sJAA0F;QAAA,4DAAI;QAMjH,2EAA0B;QACuD,iEAAK;QAAA,4DAAS;QAM3G,2EAAkB;QAEV,gHAAuE;QACvE,0EAA0C;QACxC,8GAMK;QAOP,4DAAK;QAET,2EAAuB;QAEI,+EAAmB;QAAA,4DAAK;QAC/C,2EAAyC;QAIzB,mEAAO;QAAA,4DAAK;QAEpB,gHAIM;QACN,2EAAmB;QACX,kEAAM;QAAA,4DAAK;QAIvB,4EAA6B;QACzB,iHA4CM;QACV,4DAAO;QAKf,2EAAyB;QAIL,wDAAyC;QAAA,4DAAK;QAEtD,sEAEM;QACN,2EAA4B;QACP,kEAAM;QAAA,4DAAO;QAC9B,yEAA4F;QAAA,uEAA4C;QAAA,4DAAI;QAEhJ,2EAA0F;QAErE,wDAAqC;QAAA,4DAAO;;QAtGnE,2DAA8B;QAA9B,8FAA8B;QAEd,0DAAkB;QAAlB,sFAAkB;QAwBb,0DAA0C;QAA1C,+LAA0C;QAU3D,0DAAsB;QAAtB,mFAAsB;QACL,0DAA6B;QAA7B,qIAA6B;QAsDxC,0DAAyC;QAAzC,iMAAyC;QASvB,0DAA+D;QAA/D,oKAA+D;QAEpE,0DAAqC;QAArC,0IAAqC;;;;;;;;;;;;;;;;;;;;;;;;;;;ACxKgD;AAC7D;AAEtD,MAAM,iBAAiB,GAAoB,IAAI,+DAAe,CACjE;IACI,aAAa,EAAE,MAAM;IACrB,YAAY,EAAE,QAAQ;IACtB,IAAI,EAAE,eAAe;IACrB,QAAQ,EAAE,IAAI,yDAAY,CACtB;QACI,UAAU,EACN;YACI,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE,CACrC;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAC9B;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC,EAAE,CAC7C;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAC3C;SACJ;KACR,CACJ;IACD,OAAO,EAAE;QACL,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,qBAAqB;YAC3B,WAAW,EAAE,KAAK;YAClB,oBAAoB;YACpB,qBAAqB;YACrB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,oBAAoB,EAAC,CAAC;oBACrG,WAAW,EAAE,uBAAuB;iBACvC,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,mBAAmB;oBACjG,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,mBAAmB;oBACjG,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,mBAAmB,EAAC,CAAC;iBAC3G,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,iBAAiB;YACvB,WAAW,EAAE,KAAK;YAClB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,gBAAgB,EAAC,CAAC;iBACpG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,eAAe;oBAC7F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,eAAe;oBAC7F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,eAAe,EAAC,CAAC;iBACvG,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,eAAe;YACrB,WAAW,EAAE,MAAM;YACnB,sBAAsB;YACtB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,iBAAiB,EAAC,CAAC;iBACzG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,iBAAiB;oBAC/F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,iBAAiB;oBAC/F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,QAAQ,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,iBAAiB,EAAC,CAAC;iBAC1G,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,kBAAkB;YACxB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,EAAC,CAAC;iBAC7F,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ;oBACtF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ;oBACtF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ,EAAC,CAAC;iBAChG,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,mBAAmB;YACzB,uBAAuB;YACvB,qBAAqB;YACrB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,GAAG;oBACZ,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,uBAAuB,EAAC,CAAC;iBAC/G,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,GAAG;oBACd,OAAO,EAAE,GAAG;oBACZ,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,uBAAuB;oBACrG,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,GAAG;oBACd,OAAO,EAAE,GAAG;oBACZ,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,uBAAuB;oBACrG,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,GAAG;oBACd,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,QAAQ,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,uBAAuB;oBACvE,CAAC;iBACJ,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,MAAM;YACnB,UAAU,EAAE,KAAK;YACjB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,iBAAiB,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,GAAG,EAAC,CAAC;iBACrG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,kBAAkB;oBAC7B,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC,IAAI;oBAChB,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,UAAU,gEAAY,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC,mBAAmB;oBAC/E,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC,IAAI;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,sBAAsB,EAAC,CAAC;iBACxG,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,eAAe;YACrB,WAAW,EAAE,oEAAoB;YACjC,WAAW,EAAE,CAAC;YACd,UAAU,EAAE,IAAI;YAChB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,iBAAiB,EAAC,CAAC;iBACrE,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,kBAAkB;oBAC7B,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,mBAAmB;oBAC9B,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,6BAA6B,EAAC,CAAC;iBACjF,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,oBAAoB;YAC1B,WAAW,EAAE,MAAM;YACnB,oBAAoB;YACpB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,YAAY,EAAC,CAAC;iBACpG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,WAAW,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG;oBACzF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,WAAW,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG;oBACzF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,QAAQ,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,GAAG,EAAC,CAAC;iBAC5F,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,YAAY;YAClB,WAAW,EAAE,MAAM;YACnB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,UAAU,EAAC,CAAC;iBAClG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,UAAU;oBACxF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,UAAU;oBACxF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,WAAW,EAAC,CAAC;iBAC/F,CACJ;aACJ;SACJ,CACJ;KACJ;CACJ,CACJ;AAEM,MAAM,sBAAsB,GAAoB,IAAI,+DAAe,CACtE;IACI,aAAa,EAAE,QAAQ;IACvB,YAAY,EAAE,SAAS;IACvB,IAAI,EAAE,aAAa;IACnB,QAAQ,EAAE,IAAI,yDAAY,CACtB;QACI,UAAU,EACN;YACI,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE,CACrC;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAC9B;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC,EAAE,CAC7C;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAC3C;SACJ;KACR,CACJ;IACD,OAAO,EAAE;QACL,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,qBAAqB;YAC3B,sBAAsB;YACtB,oBAAoB;YACpB,WAAW,EAAE,IAAI;YACjB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,oBAAoB,EAAC,CAAC;iBACxG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,mBAAmB;oBACjG,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,mBAAmB;oBACjG,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,mBAAmB,EAAC,CAAC;iBAC3G,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,iBAAiB;YACvB,WAAW,EAAE,KAAK;YAClB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,gBAAgB,EAAC,CAAC;iBACpG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,eAAe;oBAC7F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,eAAe;oBAC7F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,eAAe,EAAC,CAAC;iBACvG,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,eAAe;YACrB,WAAW,EAAE,KAAK;YAClB,sBAAsB;YACtB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,iBAAiB,EAAC,CAAC;iBACzG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,iBAAiB;oBAC/F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,iBAAiB;oBAC/F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,QAAQ,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,iBAAiB,EAAC,CAAC;iBAC1G,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,kBAAkB;YACxB,WAAW,EAAE,KAAK;YAClB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,EAAC,CAAC;iBAC7F,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ;oBACtF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ;oBACtF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ,EAAC,CAAC;iBAChG,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,MAAM;YACnB,UAAU,EAAE,KAAK;YACjB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,iBAAiB,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,GAAG,EAAC,CAAC;iBACrG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,kBAAkB;oBAC7B,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC,IAAI;oBAChB,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,UAAU,gEAAY,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC,mBAAmB;oBAC/E,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC,IAAI;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,sBAAsB,EAAC,CAAC;iBACxG,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,eAAe;YACrB,WAAW,EAAE,oEAAoB;YACjC,WAAW,EAAE,CAAC;YACd,UAAU,EAAE,IAAI;YAChB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,iBAAiB,EAAC,CAAC;iBACrE,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,kBAAkB;oBAC7B,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,mBAAmB;oBAC9B,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,6BAA6B,EAAC,CAAC;iBACjF,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,oBAAoB;YAC1B,WAAW,EAAE,MAAM;YACnB,oBAAoB;YACpB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,YAAY,EAAC,CAAC;iBACpG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,WAAW,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG;oBACzF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,WAAW,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG;oBACzF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,QAAQ,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,GAAG,EAAC,CAAC;iBAC5F,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,YAAY;YAClB,WAAW,EAAE,MAAM;YACnB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,UAAU,EAAC,CAAC;iBAClG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,UAAU;oBACxF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,UAAU;oBACxF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,WAAW,EAAC,CAAC;iBAC/F,CACJ;aACJ;SACJ,CACJ;KACJ;CACJ,CACJ;AACM,MAAM,sBAAsB,GAAoB,IAAI,+DAAe,CACtE;IACI,aAAa,EAAE,QAAQ;IACvB,YAAY,EAAE,UAAU;IACxB,IAAI,EAAE,aAAa;IACnB,QAAQ,EAAE,IAAI,yDAAY,CACtB;QACI,UAAU,EACN;YACI,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE,CACrC;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAC9B;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC,EAAE,CAC7C;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAC3C;SACJ;KACR,CACJ;IACD,OAAO,EAAE;QACL,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,qBAAqB;YAC3B,WAAW,EAAE,IAAI;YACjB,oBAAoB;YACpB,qBAAqB;YACrB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,oBAAoB,EAAC,CAAC;iBACxG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,mBAAmB;oBACjG,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,mBAAmB;oBACjG,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,mBAAmB,EAAC,CAAC;iBAC3G,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,iBAAiB;YACvB,WAAW,EAAE,KAAK;YAClB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,gBAAgB,EAAC,CAAC;iBACpG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,eAAe;oBAC7F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,eAAe;oBAC7F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,eAAe,EAAC,CAAC;iBACvG,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,eAAe;YACrB,uBAAuB;YACvB,WAAW,EAAE,KAAK;YAClB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,iBAAiB,EAAC,CAAC;iBACzG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,iBAAiB;oBAC/F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,iBAAiB;oBAC/F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,QAAQ,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,iBAAiB,EAAC,CAAC;iBAC1G,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,kBAAkB;YACxB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,EAAC,CAAC;iBAC7F,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ;oBACtF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ;oBACtF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ,EAAC,CAAC;iBAChG,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,MAAM;YACnB,UAAU,EAAE,KAAK;YACjB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,iBAAiB,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,GAAG,EAAC,CAAC;iBACrG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,kBAAkB;oBAC7B,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC,IAAI;oBAChB,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,UAAU,gEAAY,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC,mBAAmB;oBAC/E,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC,IAAI;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,sBAAsB,EAAC,CAAC;iBACxG,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,eAAe;YACrB,WAAW,EAAE,oEAAoB;YACjC,WAAW,EAAE,CAAC;YACd,UAAU,EAAE,IAAI;YAChB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,iBAAiB,EAAC,CAAC;iBACrE,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,kBAAkB;oBAC7B,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,mBAAmB;oBAC9B,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,6BAA6B,EAAC,CAAC;iBACjF,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,oBAAoB;YAC1B,WAAW,EAAE,IAAI;YACjB,oBAAoB;YACpB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,YAAY,EAAC,CAAC;iBACpG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,WAAW,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG;oBACzF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,WAAW,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG;oBACzF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,QAAQ,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,GAAG,EAAC,CAAC;iBAC5F,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,YAAY;YAClB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,UAAU,EAAC,CAAC;iBAClG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,UAAU;oBACxF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,UAAU;oBACxF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,WAAW,EAAC,CAAC;iBAC/F,CACJ;aACJ;SACJ,CACJ;KACJ;CACJ,CACJ;AAEM,MAAM,0BAA0B,GAAoB,IAAI,+DAAe,CAC1E;IACI,aAAa,EAAE,QAAQ;IACvB,YAAY,EAAE,SAAS;IACvB,IAAI,EAAE,aAAa;IACnB,QAAQ,EAAE,IAAI,yDAAY,CACtB;QACI,UAAU,EACN;YACI,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE,CACrC;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAC9B;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC,EAAE,CAC7C;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAC3C;SACJ;KACR,CACJ;IACD,OAAO,EAAE;QACL,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,qBAAqB;YAC3B,sBAAsB;YACtB,oBAAoB;YACpB,WAAW,EAAE,IAAI;YACjB,WAAW,EAAE,IAAI;YACjB,WAAW,EAAE,iEAAiB;YAC9B,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,SAAS,wBAAwB,EAAC,CAAC;iBACxF,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,uBAAuB,OAAO,EAAE;oBAC3C,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC,IAAI;oBAChB,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,UAAU,SAAS,kBAAkB;oBAChD,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC,IAAI;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,kCAAkC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAC,CAAC;iBACzG,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,iBAAiB;YACvB,WAAW,EAAE,CAAC,IAAI;YAClB,WAAW,EAAE,IAAI;YACjB,WAAW,EAAE,iEAAiB;YAC9B,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,SAAS,qBAAqB,EAAC,CAAC;iBACrF,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,mBAAmB,OAAO,EAAE;oBACvC,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC,IAAI;oBAChB,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,UAAU,SAAS,UAAU;oBACxC,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC,IAAI;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,8BAA8B,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAC,CAAC;iBACrG,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,eAAe;YACrB,WAAW,EAAE,IAAI;YACjB,sBAAsB;YACtB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,iBAAiB,EAAC,CAAC;iBACzG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,iBAAiB;oBAC/F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,iBAAiB;oBAC/F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,QAAQ,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,iBAAiB,EAAC,CAAC;iBAC1G,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,kBAAkB;YACxB,WAAW,EAAE,KAAK;YAClB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,EAAC,CAAC;iBAC7F,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ;oBACtF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ;oBACtF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ,EAAC,CAAC;iBAChG,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,KAAK;YAClB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,EAAC,CAAC;iBAC7F,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,GAAG;oBACd,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ;oBACtF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ;oBACtF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ,EAAC,CAAC;iBAChG,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,MAAM;YACnB,UAAU,EAAE,KAAK;YACjB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,iBAAiB,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,GAAG,EAAC,CAAC;iBACrG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,kBAAkB;oBAC7B,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC,IAAI;oBAChB,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,UAAU,gEAAY,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC,mBAAmB;oBAC/E,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC,IAAI;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,sBAAsB,EAAC,CAAC;iBACxG,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,uCAAuC;YAC7C,WAAW,EAAE,oEAAoB;YACjC,WAAW,EAAE,CAAC;YACd,UAAU,EAAE,IAAI;YAChB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,iBAAiB,EAAC,CAAC;iBACrE,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,kBAAkB;oBAC7B,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,mBAAmB;oBAC9B,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,6BAA6B,EAAC,CAAC;iBACjF,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,oBAAoB;YAC1B,WAAW,EAAE,CAAC;YACd,WAAW,EAAE,iEAAiB;YAC9B,oBAAoB;YACpB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,OAAO,UAAU,EAAC,CAAC;iBACxE,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,KAAK;oBAChB,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,SAAS,UAAU;oBACjC,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,SAAS,mBAAmB,EAAC,CAAC;iBACnF,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,oBAAoB;YAC1B,WAAW,EAAE,GAAG;YAChB,WAAW,EAAE,iEAAiB;YAC9B,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,SAAS,QAAQ,EAAC,CAAC;iBACxE,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,GAAG;oBACd,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,SAAS,OAAO,OAAO,QAAQ;oBAC7C,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,GAAG;oBACZ,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,SAAS,OAAO,OAAO,QAAQ;oBAC7C,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,OAAO,iBAAiB,EAAC,CAAC;iBAC/E,CACJ;aACJ;SACJ,CACJ;KACJ;CACJ,CACJ;AAEM,MAAM,4BAA4B,GAAoB,IAAI,+DAAe,CAC5E;IACI,aAAa,EAAE,QAAQ;IACvB,YAAY,EAAE,SAAS;IACvB,IAAI,EAAE,eAAe;IACrB,QAAQ,EAAE,IAAI,yDAAY,CACtB;QACI,UAAU,EACN;YACI,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE,CACrC;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAC9B;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC,EAAE,CAC7C;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAC3C;SACJ;KACR,CACJ;IACD,OAAO,EAAE;QACL,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,qBAAqB;YAC3B,sBAAsB;YACtB,oBAAoB;YACpB,WAAW,EAAE,KAAK;YAClB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,oBAAoB,EAAC,CAAC;iBACxG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,mBAAmB;oBACjG,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,mBAAmB;oBACjG,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,mBAAmB,EAAC,CAAC;iBAC3G,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,iBAAiB;YACvB,WAAW,EAAE,KAAK;YAClB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,eAAe,EAAC,CAAC;iBACnG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,eAAe;oBAC7F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,eAAe;oBAC7F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,eAAe,EAAC,CAAC;iBACvG,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,eAAe;YACrB,WAAW,EAAE,MAAM;YACnB,sBAAsB;YACtB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,iBAAiB,EAAC,CAAC;iBACzG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,iBAAiB;oBAC/F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,iBAAiB;oBAC/F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,QAAQ,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,iBAAiB,EAAC,CAAC;iBAC1G,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,kBAAkB;YACxB,WAAW,EAAE,MAAM;YACnB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,EAAC,CAAC;iBAC7F,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ;oBACtF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ;oBACtF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ,EAAC,CAAC;iBAChG,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,GAAG;YAChB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,IAAI,EAAC,CAAC;iBACxF,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,GAAG;oBACd,OAAO,EAAE,GAAG;oBACZ,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG;oBACjF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,GAAG;oBACd,OAAO,EAAE,GAAG;oBACZ,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG;oBACjF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,GAAG;oBACZ,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,YAAY,EAAC,CAAC;iBAC9F,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,MAAM;YACnB,UAAU,EAAE,KAAK;YACjB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,iBAAiB,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,GAAG,EAAC,CAAC;iBACrG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,kBAAkB;oBAC7B,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC,IAAI;oBAChB,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,UAAU,gEAAY,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC,mBAAmB;oBAC/E,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC,IAAI;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,sBAAsB,EAAC,CAAC;iBACxG,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,sCAAsC;YAC5C,WAAW,EAAE,oEAAoB;YACjC,WAAW,EAAE,CAAC;YACd,UAAU,EAAE,IAAI;YAChB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,iBAAiB,EAAC,CAAC;iBACrE,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,kBAAkB;oBAC7B,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,mBAAmB;oBAC9B,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,6BAA6B,EAAC,CAAC;iBACjF,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,oBAAoB;YAC1B,WAAW,EAAE,MAAM;YACnB,oBAAoB;YACpB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,EAAC,CAAC;iBAC3F,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,WAAW,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG;oBAC1F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,WAAW,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG;oBAC1F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,WAAW,EAAC,CAAC;iBAC/F,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,oBAAoB;YAC1B,WAAW,EAAE,IAAI;YACjB,WAAW,EAAE,iEAAiB;YAC9B,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,SAAS,QAAQ,EAAC,CAAC;iBACxE,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,GAAG;oBACd,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,SAAS,OAAO,OAAO,QAAQ;oBAC7C,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,GAAG;oBACZ,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,SAAS,OAAO,OAAO,QAAQ;oBAC7C,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,OAAO,iBAAiB,EAAC,CAAC;iBAC/E,CACJ;aACJ;SACJ,CACJ;KACJ;CACJ,CACJ;AAEM,MAAM,2BAA2B,GAAoB,IAAI,+DAAe,CAC3E;IACI,aAAa,EAAE,UAAU;IACzB,YAAY,EAAE,OAAO;IACrB,IAAI,EAAE,qBAAqB;IAC3B,QAAQ,EAAE,IAAI,yDAAY,CACtB;QACI,UAAU,EACN;YACI,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE,CACrC;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAC9B;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC,EAAE,CAC7C;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAC3C;SACJ;KACR,CACJ;IACD,OAAO,EAAE;QACL,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,qCAAqC;YAC3C,sBAAsB;YACtB,oBAAoB;YACpB,WAAW,EAAE,CAAC;YACd,WAAW,EAAE,iEAAiB;YAC9B,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,SAAS,SAAS,EAAC,CAAC;iBACzE,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,SAAS,OAAO,OAAO,QAAQ;oBAC7C,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,SAAS,OAAO,OAAO,QAAQ;oBAC7C,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,OAAO,QAAQ,EAAC,CAAC;iBAC5E,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,8CAA8C;YACpD,WAAW,EAAE,EAAE;YACf,WAAW,EAAE,iEAAiB;YAC9B,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,SAAS,SAAS,EAAC,CAAC;iBACzE,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,SAAS,OAAO,OAAO,QAAQ;oBAC7C,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,SAAS,OAAO,OAAO,QAAQ;oBAC7C,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,OAAO,QAAQ,EAAC,CAAC;iBAC5E,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,gCAAgC;YACtC,WAAW,EAAE,EAAE;YACf,WAAW,EAAE,iEAAiB;YAC9B,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,EAAE;oBACb,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,SAAS,GAAG,EAAC,CAAC;iBACnE,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,EAAE;oBACb,OAAO,EAAE,EAAE;oBACX,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,SAAS,OAAO,OAAO,EAAE;oBACvC,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,EAAE;oBACb,OAAO,EAAE,EAAE;oBACX,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,SAAS,OAAO,OAAO,EAAE;oBACvC,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,EAAE;oBACX,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,OAAO,EAAE,EAAC,CAAC;iBACtE,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,6BAA6B;YACnC,WAAW,EAAE,EAAE;YACf,WAAW,EAAE,iEAAiB;YAC9B,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,EAAE;oBACb,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,SAAS,GAAG,EAAC,CAAC;iBACnE,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,EAAE;oBACb,OAAO,EAAE,EAAE;oBACX,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,SAAS,OAAO,OAAO,EAAE;oBACvC,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,EAAE;oBACX,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,SAAS,OAAO,OAAO,EAAE;oBACvC,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,OAAO,EAAE,EAAC,CAAC;iBACtE,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,eAAe;YACrB,WAAW,EAAE,IAAI;YACjB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,IAAI,EAAC,CAAC;iBACxF,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,GAAG;oBACd,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG;oBACjF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,GAAG;oBACZ,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG;oBACjF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,EAAC,CAAC;iBAC3F,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,0BAA0B;YAChC,WAAW,EAAE,CAAC;YACd,WAAW,EAAE,iEAAiB;YAC9B,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,SAAS,EAAE,EAAC,CAAC;iBAClE,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,SAAS,EAAE;oBACzB,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,SAAS,EAAE;oBACzB,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,SAAS,GAAG,EAAC,CAAC;iBACnE,CACJ;aACJ;SACJ,CACJ;KACJ;CACJ,CACJ;AAEM,MAAM,+BAA+B,GAAoB,IAAI,+DAAe,CAC/E;IACI,aAAa,EAAE,QAAQ;IACvB,YAAY,EAAE,QAAQ;IACtB,IAAI,EAAE,4BAA4B;IAClC,QAAQ,EAAE,IAAI,yDAAY,CACtB;QACI,UAAU,EACN;YACI,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE,CACrC;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAC9B;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC,EAAE,CAC7C;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAC3C;SACJ;KACR,CACJ;IACD,OAAO,EAAE;QACL,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,iBAAiB;YACvB,sBAAsB;YACtB,oBAAoB;YACpB,WAAW,EAAE,CAAC;YACd,WAAW,EAAE,oEAAoB;YACjC,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,eAAe,EAAC,CAAC;iBACnE,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,SAAS;oBACpB,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,aAAa;oBACxB,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,UAAU,EAAC,CAAC;iBAC9D,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,uCAAuC;YAC7C,sBAAsB;YACtB,oBAAoB;YACpB,WAAW,EAAE,CAAC;YACd,WAAW,EAAE,oEAAoB;YACjC,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,eAAe,EAAC,CAAC;iBACnE,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,SAAS;oBACpB,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,aAAa;oBACxB,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,UAAU,EAAC,CAAC;iBAC9D,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,4BAA4B;YAClC,sBAAsB;YACtB,oBAAoB;YACpB,WAAW,EAAE,CAAC;YACd,WAAW,EAAE,oEAAoB;YACjC,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,eAAe,EAAC,CAAC;iBACnE,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,SAAS;oBACpB,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,aAAa;oBACxB,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,UAAU,EAAC,CAAC;iBAC9D,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,uBAAuB;YAC7B,sBAAsB;YACtB,oBAAoB;YACpB,WAAW,EAAE,CAAC;YACd,WAAW,EAAE,oEAAoB;YACjC,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,eAAe,EAAC,CAAC;iBACnE,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,SAAS;oBACpB,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,aAAa;oBACxB,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,UAAU,EAAC,CAAC;iBAC9D,CACJ;aACJ;SACJ,CACJ;KACJ;CACJ,CACJ;AAEM,MAAM,+BAA+B,GAAoB,IAAI,+DAAe,CAC/E;IACI,aAAa,EAAE,QAAQ;IACvB,YAAY,EAAE,UAAU;IACxB,IAAI,EAAE,mBAAmB;IACzB,QAAQ,EAAE,IAAI,yDAAY,CACtB;QACI,UAAU,EACN;YACI,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE,CACrC;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAC9B;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC,EAAE,CAC7C;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAC3C;SACJ;KACR,CACJ;IACD,OAAO,EAAE;QACL,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,qBAAqB;YAC3B,WAAW,EAAE,KAAK;YAClB,oBAAoB;YACpB,qBAAqB;YACrB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,oBAAoB,EAAC,CAAC;iBACxG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,mBAAmB;oBACjG,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,mBAAmB;oBACjG,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,mBAAmB,EAAC,CAAC;iBAC3G,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,iBAAiB;YACvB,WAAW,EAAE,KAAK;YAClB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,gBAAgB,EAAC,CAAC;iBACpG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,eAAe;oBAC7F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,eAAe;oBAC7F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,eAAe,EAAC,CAAC;iBACvG,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,eAAe;YACrB,uBAAuB;YACvB,WAAW,EAAE,MAAM;YACnB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,iBAAiB,EAAC,CAAC;iBACzG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,iBAAiB;oBAC/F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,iBAAiB;oBAC/F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,QAAQ,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,iBAAiB,EAAC,CAAC;iBAC1G,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,kBAAkB;YACxB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,EAAC,CAAC;iBAC7F,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ;oBACtF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ;oBACtF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ,EAAC,CAAC;iBAChG,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,mBAAmB;YACzB,WAAW,EAAE,MAAM;YACnB,qBAAqB;YACrB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,GAAG;oBACZ,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,uBAAuB,EAAC,CAAC;iBAC/G,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,GAAG;oBACd,OAAO,EAAE,GAAG;oBACZ,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,uBAAuB;oBACrG,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,GAAG;oBACd,OAAO,EAAE,GAAG;oBACZ,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,uBAAuB;oBACrG,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,GAAG;oBACd,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,QAAQ,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,uBAAuB;oBACvE,CAAC;iBACJ,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,MAAM;YACnB,UAAU,EAAE,KAAK;YACjB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,iBAAiB,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,GAAG,EAAC,CAAC;iBACrG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,kBAAkB;oBAC7B,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC,IAAI;oBAChB,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,UAAU,gEAAY,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC,mBAAmB;oBAC/E,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC,IAAI;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,sBAAsB,EAAC,CAAC;iBACxG,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,eAAe;YACrB,WAAW,EAAE,oEAAoB;YACjC,WAAW,EAAE,CAAC;YACd,UAAU,EAAE,IAAI;YAChB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,iBAAiB,EAAC,CAAC;iBACrE,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,kBAAkB;oBAC7B,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,mBAAmB;oBAC9B,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,6BAA6B,EAAC,CAAC;iBACjF,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,oBAAoB;YAC1B,WAAW,EAAE,MAAM;YACnB,oBAAoB;YACpB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,YAAY,EAAC,CAAC;iBACpG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,WAAW,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG;oBACzF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,WAAW,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG;oBACzF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,QAAQ,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,GAAG,EAAC,CAAC;iBAC5F,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,YAAY;YAClB,WAAW,EAAE,KAAK;YAClB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,UAAU,EAAC,CAAC;iBAClG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,UAAU;oBACxF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,UAAU;oBACxF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,WAAW,EAAC,CAAC;iBAC/F,CACJ;aACJ;SACJ,CACJ;KACJ;CACJ,CACJ;AACM,MAAM,0BAA0B,GAAoB,IAAI,+DAAe,CAC1E;IACI,aAAa,EAAE,QAAQ;IACvB,YAAY,EAAE,SAAS;IACvB,IAAI,EAAE,oBAAoB;IAC1B,QAAQ,EAAE,IAAI,yDAAY,CACtB;QACI,UAAU,EACN;YACI,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE,CACrC;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAC9B;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC,EAAE,CAC7C;YACD,IAAI,wDAAW,CACX,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAC3C;SACJ;KACR,CACJ;IACD,OAAO,EAAE;QACL,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,qBAAqB;YAC3B,WAAW,EAAE,KAAK;YAClB,oBAAoB;YACpB,qBAAqB;YACrB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,oBAAoB,EAAC,CAAC;iBACxG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,mBAAmB;oBACjG,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,mBAAmB;oBACjG,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,mBAAmB,EAAC,CAAC;iBAC3G,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,iBAAiB;YACvB,WAAW,EAAE,KAAK;YAClB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,gBAAgB,EAAC,CAAC;iBACpG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,eAAe;oBAC7F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,eAAe;oBAC7F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,eAAe,EAAC,CAAC;iBACvG,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,eAAe;YACrB,uBAAuB;YACvB,WAAW,EAAE,KAAK;YAClB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,iBAAiB,EAAC,CAAC;iBACzG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,iBAAiB;oBAC/F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,iBAAiB;oBAC/F,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,QAAQ,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,iBAAiB,EAAC,CAAC;iBAC1G,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,kBAAkB;YACxB,WAAW,EAAE,KAAK;YAClB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,EAAC,CAAC;iBAC7F,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ;oBACtF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ;oBACtF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ,EAAC,CAAC;iBAChG,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,mBAAmB;YACzB,WAAW,EAAE,MAAM;YACnB,qBAAqB;YACrB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,GAAG;oBACZ,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,uBAAuB,EAAC,CAAC;iBAC/G,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,GAAG;oBACd,OAAO,EAAE,GAAG;oBACZ,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,uBAAuB;oBACrG,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,GAAG;oBACd,OAAO,EAAE,GAAG;oBACZ,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,uBAAuB;oBACrG,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,GAAG;oBACd,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,QAAQ,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,uBAAuB;oBACvE,CAAC;iBACJ,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,MAAM;YACnB,UAAU,EAAE,KAAK;YACjB,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,iBAAiB,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,GAAG,EAAC,CAAC;iBACrG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,kBAAkB;oBAC7B,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC,IAAI;oBAChB,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,UAAU,gEAAY,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC,mBAAmB;oBAC/E,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,CAAC,IAAI;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,sBAAsB,EAAC,CAAC;iBACxG,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,eAAe;YACrB,WAAW,EAAE,oEAAoB;YACjC,WAAW,EAAE,GAAG;YAChB,UAAU,EAAE,IAAI;YAChB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,iBAAiB,EAAC,CAAC;iBACrE,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,kBAAkB;oBAC7B,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,mBAAmB;oBAC9B,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,6BAA6B,EAAC,CAAC;iBACjF,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,oBAAoB;YAC1B,WAAW,EAAE,MAAM;YACnB,oBAAoB;YACpB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,YAAY,EAAC,CAAC;iBACpG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,WAAW,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG;oBACzF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,WAAW,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG;oBACzF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,QAAQ,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,GAAG,EAAC,CAAC;iBAC5F,CACJ;aACJ;SACJ,CACJ;QACD,IAAI,8DAAc,CACd;YACI,IAAI,EAAE,YAAY;YAClB,WAAW,EAAE,KAAK;YAClB,cAAc,EAAE;gBACZ,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,SAAS,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,UAAU,EAAC,CAAC;iBAClG,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,UAAU;oBACxF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;wBACjC,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,gEAAY,CAAC,OAAO,GAAG,GAAG,CAAC,UAAU;oBACxF,CAAC;iBACJ,CACJ;gBACD,IAAI,uEAAuB,CACvB;oBACI,SAAS,EAAE,IAAI;oBACf,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,gEAAY,CAAC,SAAS,GAAG,GAAG,CAAC,WAAW,EAAC,CAAC;iBAC/F,CACJ;aACJ;SACJ,CACJ;KACJ;CACJ,CACJ;;;;;;;;;;;;;;;;;;;;;;;;;;AC9oGuD;AAEK;AACoD;AAEnE;AACJ;;;;;;;ICUd,6EAAqE;IAAA,uDAAmB;IAAA,4DAAS;;;;IAAzC,wEAAY;IAAC,0DAAmB;IAAnB,0FAAmB;;;IAqBpH,8EAA+E;;;IAA9C,8FAA8B;;AD9B/D,iDAAiD;AAO1C,MAAM,iBAAiB;IAsB5B,YAAoB,gBAAkC;QAAlC,qBAAgB,GAAhB,gBAAgB,CAAkB;QArBtD,iBAAY,GAAG,IAAI,gEAAgB,EAAE,CAAC;QACtC,wCAAwC;QACxC,iBAAY,GAA2B,EAAE,CAAC;QAE1C,kBAAa,GAAe,EAAE,CAAC;QAC/B,oBAAe,GAAkB,EAAE,CAAC;QACpC,oBAAe,GAA2B,EAAE,CAAC;QAE7C,iBAAY,GAAG,IAAI,8CAAY,EAAE,CAAC;QAClC,aAAQ,GAAG,IAAI,qDAAS,CACtB;YACE,QAAQ,EAAE,IAAI,uDAAW,CAAC,IAAI,CAAC;YAC/B,UAAU,EAAE,IAAI,uDAAW,CAAC,EAAC,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC;SACxD,CACF,CAAC;QAEF,YAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;QACpC,cAAS,GAAG,IAAI,GAAG,EAAiB,CAAC;QAErC,cAAS,GAAG,IAAI,CAAC;IAEyC,CAAC;IAE3D,WAAW,KAAI,CAAC;IAEhB,UAAU;QACR,wBAAwB;QACxB,WAAW;QACX,IAAI;QACJ,sDAAsD;QACtD,mEAAmE;QACnE,WAAW;QACX,wEAAwE;QACxE,IAAI;IACN,CAAC;IAED,WAAW;QACT,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE;IACjC,CAAC;IAED,QAAQ;QACN,qCAAqC;QACrC,yEAAyE;QACzE,mEAAmE;QACnE,kFAAkF;QAClF,gFAAgF;QAGhF,IAAI,CAAC,YAAY,CAAC,GAAG;QACnB,kEAAkE;QAClE,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC,SAAS,CAClE,EAAE,CAAC,EAAE;YACL,IAAI,CAAC,YAAY,CAAC,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YAC5C,IAAI,CAAC,YAAY,GAAG,IAAI,KAAK,EAAmB,CAAC;YACjD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;YAC7C,4CAA4C;QAC9C,CAAC,EACD,GAAG,CAAC,EAAE,GAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAC,CACxB,CACJ,CAAC;QAEF,MAAM,eAAe,GAAG;YACtB,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,EAAE,CAAC;YACtC,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,GAAG,CAAC;YACvC,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,qBAAqB,EAAE,GAAG,CAAC;YAClE,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,EAAE,CAAC;YACtC,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,qBAAqB,EAAE,EAAE,CAAC;SACpE;QAED,IAAI,CAAC,YAAY,CAAC,GAAG,CACnB,8CAAQ,CAAC,eAAe,CAAC,CAAC,IAAI,CAC5B,wDAAQ,CAAE,GAAG,EAAE;YACb,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE;gBACxC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,aAAa,IAAI,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC;gBACxE,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACjD,EAAE,CAAC,IAAI,CAAC,EAAC,MAAM,EAAE,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,CAAC,QAAQ,EAAE,eAAe,EAAE,CAAC,EAAC,CAAC,CAAC;gBACxE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YACtC,CAAC,CACA,CAAC;YACF,IAAI,CAAC,aAAa,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CACzD,EAAE,CAAC,EAAE,GAAE,OAAO,EAAC,MAAM,EAAE,GAAG,EAAE,CAAC,aAAa,IAAI,EAAE,CAAC,YAAY,EAAE,EAAE,UAAU,EAAE,EAAE,CAAC,QAAQ,EAAC,GAAC,CAAC,CAC1F,CAAC,CAAC,IAAI,EAAE,CAAC;YACZ,IAAI,CAAC,eAAe,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YACjF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;YAClE,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACzB,CAAC,CAAC,CACH,CAAC,SAAS,CACT,EAAE,CAAC,EAAE;YACH,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpE,CAAC,EACD,GAAG,CAAC,EAAE,GAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAC,CACxB,CACJ,CAAC;QAEF,+DAA+D;QAC/D,4CAA4C;QAG5C,wHAAwH;QAExH,IAAI,CAAC,YAAY,CAAC,GAAG,CACnB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,SAAS,CAClD,CAAC,OAAO,EAAE,EAAE;YACV,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK,KAAK,IAAI,EAAE;gBAChD,IAAI,CAAC,YAAY,GAAG,IAAI,KAAK,EAAmB,CAAC;gBACjD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAE,IAAI,+DAAe,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC;gBACnE,iEAAiE;gBACjE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAC;aAC3C;iBAAM;gBACL,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,KAAK,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBAC/F,8GAA8G;gBAC9G,0GAA0G;gBAC1G,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,CAAC;aAC1C;QACH,CAAC,CACF,CACF;QACD,IAAI,CAAC,YAAY,CAAC,GAAG,CACnB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,SAAS,CACpD,CAAC,OAAO,EAAE,EAAE;YACV,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE;gBAC3C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,KAAK,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBAC/F,oDAAoD;gBACpD,8GAA8G;gBAC9G,0GAA0G;gBAC1G,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,KAAK,IAAI,GAAG,EAAE,CAAC,aAAa,IAAI,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC;aAC/I;QACH,CAAC,CACF,CACF;IACH,CAAC;IAED,WAAW,CAAC,EAAmB;QAC7B,MAAM,WAAW,GAAG,IAAI,+DAAe,EAAE,CAAC;QAC1C,WAAW,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC;QAC3B,WAAW,CAAC,aAAa,GAAG,EAAE,CAAC,aAAa,CAAC;QAC7C,WAAW,CAAC,YAAY,GAAG,EAAE,CAAC,YAAY,CAAC;QAC3C,WAAW,CAAC,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC;QAEnC,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAE,CAAC,CAAC,EAAE;YAClC,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,wDAAW,CAAC,EAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAC,CAAC,CAAC;QACvF,CAAC,CAAC;QAEF,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACrB,MAAM,OAAO,GAAmC,EAAE,CAAC;YACnD,CAAC,CAAC,cAAc,CAAC,OAAO,CAAE,EAAE,CAAC,EAAE;gBAC7B,OAAO,CAAC,IAAI,CAAC,IAAI,uEAAuB,CAAC,EAAC,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE,CAAC,WAAW,EAAC,CAAC,CAAC;YACxH,CAAC,CAAC;YACF,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,8DAAc,CAAC;gBAC1C,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,KAAK;gBACnC,UAAU,EAAE,CAAC,CAAC,UAAU,IAAI,KAAK;gBACjC,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,cAAc,EAAE,OAAO;aACxB,CAAC,CAAC,CAAC;QACN,CAAC,CAAC;QACF,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;IACjC,CAAC;IAED,IAAI,gBAAgB;QAClB,OAAO,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC7D,CAAC;;kFAvKU,iBAAiB;+GAAjB,iBAAiB;QCf9B,yEAAkB;QAEa,iFAAsB;QAAA,4DAAK;QAClD,yEAA6B;QAKuF,wIAAS,gBAAY,IAAC;QAAtH,4DAAuH;QACvH,4EAA8C;QAAA,wDAAyE;QAAA,4DAAQ;QAEnI,0EAA0C;QAC8D,yIAAS,gBAAY,IAAC;QAA1H,4DAA2H;QAC3H,6EAAgD;QAAA,uEAAW;QAAA,4DAAQ;QAGvE,8EAA4H;QACxH,sHAAiG;QAIrG,4DAAS;QAiBjC,kIAA+E;;QAlC9D,0DAAoB;QAApB,iFAAoB;QAEX,0DAAsB;QAAtB,mFAAsB;QAG0B,0DAAyE;QAAzE,iOAAyE;QAOlE,0DAA8C;QAA9C,2GAA8C;QAC5E,0DAAoB;QAApB,wFAAoB;QAqBxD,0DAAgB;QAAhB,gFAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;ACpCgE;AAClC;AACH;AACF;;;;;;;;;IC+B5C,0EAAwD;IAC/B,uXAAS,2DAAyB,IAAC;IACxD,yEAAuB;IAEI,uDAAW;IAAA,4DAAK;IACvC,wEAAqB;IAAA,uDAA+B;IAAA,4DAAI;IACxD,wEAA8D;IAAA,sEAAwC;IAAA,4DAAI;;;;IAHzG,0DAAiB;IAAjB,6IAAiB;IACK,0DAAW;IAAX,gGAAW;IACb,0DAA+B;IAA/B,6HAA+B;IAC/B,0DAAwC;IAAxC,2GAAwC;;;;IAgBrE,0EAAsD;IAC7B,kYAAS,sEAAgC,IAAC;IAC/D,yEAAuB;IAEI,uDAAW;IAAA,4DAAK;IACvC,wEAAqB;IAAA,uDAA6B;IAAA,4DAAI;IACtD,wEAA8D;IAAA,sEAAuC;IAAA,4DAAI;;;;IAHxG,0DAAiB;IAAjB,6IAAiB;IACK,0DAAW;IAAX,kGAAW;IACb,0DAA6B;IAA7B,6HAA6B;IAC7B,0DAAwC;IAAxC,6GAAwC;;;;IAXjF,0EAAiF;IAElD,gEAAK;IAAA,4DAAK;IAEjC,yEAA+C;IAC3C,uHAaM;IACR,4DAAM;;;IAnByB,0IAA4B;IAKtC,0DAAa;IAAb,oFAAa;;;;IAuBhC,0EAAyD;IAChC,kYAAS,yEAAmC,IAAC;IAClE,yEAAuB;IAEI,uDAAW;IAAA,4DAAK;IACvC,wEAAqB;IAAA,uDAAiC;IAAA,4DAAI;IAC1D,wEAA8D;IAAA,sEAA2C;IAAA,4DAAI;;;;IAH5G,0DAAiB;IAAjB,6IAAiB;IACK,0DAAW;IAAX,kGAAW;IACb,0DAAiC;IAAjC,iIAAiC;IACjC,0DAAwC;IAAxC,6GAAwC;;;IAVjF,0EAAuF;IAExD,oEAAS;IAAA,4DAAK;IACrC,yEAA+C;IAC3C,uHAWM;IACR,4DAAM;;;IAhB4B,0IAA4B;IAIzC,0DAAgB;IAAhB,uFAAgB;;;;IAoBnC,0EAAsD;IAC7B,kYAAS,6DAAuB,IAAC;IACtD,yEAAuB;IAEI,uDAAW;IAAA,4DAAK;IACvC,wEAAqB;IAAA,uDAA6B;IAAA,4DAAI;IACtD,wEAA8D;IAAA,sEAAwC;IAAA,4DAAI;;;;IAHzG,0DAAiB;IAAjB,6IAAiB;IACK,0DAAW;IAAX,kGAAW;IACb,0DAA6B;IAA7B,6HAA6B;IAC7B,0DAAwC;IAAxC,6GAAwC;;;IAVjF,0EAAkF;IAEnD,gEAAK;IAAA,4DAAK;IACjC,yEAA+C;IAC3C,uHAWM;IACR,4DAAM;;;IAhB0B,0IAA4B;IAIvC,0DAAa;IAAb,oFAAa;;;;IAoBhC,0EAAuD;IAC9B,kYAAS,kCAAkB,IAAC;IACjD,yEAAuB;IAEI,uDAAwC;IAAA,4DAAK;IACpE,wEAAqB;IAAA,uDAA8B;IAAA,4DAAI;IACvD,wEAA8D;IAAA,sEAAuC;IAAA,4DAAI;;;;IAHxG,0DAAiB;IAAjB,6IAAiB;IACK,0DAAwC;IAAxC,oKAAwC;IAC1C,0DAA8B;IAA9B,8HAA8B;IAC9B,0DAAwC;IAAxC,6GAAwC;;;IAVjF,0EAAoF;IAErD,iEAAM;IAAA,4DAAK;IAClC,yEAA+C;IAC3C,uHAWM;IACR,4DAAM;;;IAhB2B,0IAA4B;IAIxC,0DAAc;IAAd,qFAAc;;;IAgB7C,0EAAwF;IAEzD,uDAAkE;IAAA,4DAAK;IAE9F,8EAAwD;IAC5D,4DAAM;;;IALmC,0IAA4B;IAE1C,0DAAkE;IAAlE,wJAAkE;IAE3E,0DAA0B;IAA1B,0FAA0B;;ADjIzC,MAAM,oBAAoB;IAsD/B,YAAoB,gBAAkC;QAAlC,qBAAgB,GAAhB,gBAAgB,CAAkB;QAnDtD,oBAAe,GAAG,IAAI,CAAC;QACvB,kBAAa,GAAG,IAAI,CAAC;QACrB,qBAAgB,GAAG,IAAI,CAAC;QACxB,mBAAc,GAAG,IAAI,CAAC;QACtB,oBAAe,GAAG,IAAI,CAAC;QACvB,sBAAiB,GAAG,IAAI,CAAC;QAEzB,2BAAsB,GAAG,CAAC,CAAC,CAAC;QAE5B,eAAU,GAA2B,EAAE,CAAC;QACxC,aAAQ,GAA2B,EAAE,CAAC;QACtC,gBAAW,GAAsB,EAAE,CAAC;QACpC,aAAQ,GAA2B,EAAE,CAAC;QACtC,cAAS,GAA2B,EAAE,CAAC;QACvC,oBAAe,GAAoB,IAAI,+DAAe,EAAE,CAAC;QACzD,aAAQ,GAA2B,EAAE,CAAC;QAEtC,sBAAiB,GAAG,CAAC,CAAC,CAAC;QACvB,yBAAoB,GAAG,CAAC,CAAC,CAAC;QAC1B,yBAAoB,GAAG,CAAC,CAAC,CAAC;QAC1B,uBAAkB,GAAG,CAAC,CAAC,CAAC;QAExB,iBAAY,GAAG,KAAK,CAAC;QACrB,oBAAe,GAAG,KAAK,CAAC;QACxB,oBAAe,GAAG,KAAK,CAAC;QACxB,kBAAa,GAAG,KAAK,CAAC;QACtB,eAAU,GAAG,KAAK,CAAC;QACnB,iBAAY,GAAG,KAAK,CAAC;QAOrB,eAAU,GAAG,KAAK,CAAC;QAEnB,aAAQ,GAAe;YACrB,YAAY;YACZ,aAAa;YACb,UAAU;YACV,aAAa;SACd,CAAC;QAEF,kBAAa,GAAiB,IAAI,8CAAY,EAAE,CAAC;QAEjD,mBAAc,GAAG,IAAI,qDAAS,CAC5B;YACE,IAAI,EAAE,IAAI,uDAAW,CAAC,EAAC,KAAK,EAAE,CAAC,EAAC,CAAC;SAClC,CACF;IAEyD,CAAC;IAE3D,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,gBAAgB,CAAC;IAC7E,CAAC;IAED,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;IACnC,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,WAAW,GAAG,IAAI,+DAAe,EAAE,CAAC;QACzC,IAAI,CAAC,aAAa,CAAC,GAAG,CACpB,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,iBAAiB,EAAE,OAAO,EAAE,UAAU,CAAC;aACxE,SAAS,CACR,EAAE,CAAC,EAAE;YACH,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YACxC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;YAC3C,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC/B,CAAC,CACF,CACF,CAAC;QAEF,6EAA6E;QAC7E,cAAc;QACd,YAAY;QACZ,gDAAgD;QAChD,MAAM;QACN,IAAI;QAEJ,+EAA+E;QAC/E,cAAc;QACd,YAAY;QACZ,gDAAgD;QAChD,MAAM;QACN,IAAI;QAEJ,yEAAyE;QACzE,cAAc;QACd,YAAY;QACZ,gDAAgD;QAChD,MAAM;QACN,IAAI;QAEJ,+EAA+E;QAC/E,cAAc;QACd,YAAY;QACZ,gDAAgD;QAChD,MAAM;QACN,IAAI;QAEJ,4BAA4B;QAC5B,gFAAgF;QAChF,kFAAkF;QAClF,4EAA4E;QAC5E,iFAAiF;QACjF,IAAI;QAEJ,+CAA+C;QAC/C,gEAAgE;QAChE,kCAAkC;QAClC,MAAM;QACN,KAAK;QAGL,+BAA+B;QAC/B,kFAAkF;QAClF,oFAAoF;QACpF,8EAA8E;QAC9E,oFAAoF;QACpF,kFAAkF;QAClF,oFAAoF;QACpF,8EAA8E;QAC9E,mFAAmF;QACnF,IAAI;QAEJ,kDAAkD;QAClD,iEAAiE;QACjE,mCAAmC;QACnC,MAAM;QAEN,+BAA+B;QAC/B,8DAA8D;QAC9D,gBAAgB;QAChB,cAAc;QACd,kDAAkD;QAClD,QAAQ;QACR,MAAM;QACN,gEAAgE;QAChE,gBAAgB;QAChB,eAAe;QACf,sDAAsD;QACtD,QAAQ;QACR,MAAM;QACN,gEAAgE;QAChE,gBAAgB;QAChB,eAAe;QACf,sDAAsD;QACtD,QAAQ;QACR,MAAM;QACN,KAAK;QACL,8BAA8B;QAC9B,iCAAiC;IAEnC,CAAC;IAED,WAAW,CAAC,EAAmB;QAC7B,MAAM,WAAW,GAAG,IAAI,+DAAe,EAAE,CAAC;QAC1C,WAAW,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC;QAC3B,WAAW,CAAC,aAAa,GAAG,EAAE,CAAC,aAAa,CAAC;QAC7C,WAAW,CAAC,YAAY,GAAG,EAAE,CAAC,YAAY,CAAC;QAE3C,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAE,CAAC,CAAC,EAAE;YAClC,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,wDAAW,CAAC,EAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAC,CAAC,CAAC;QACvF,CAAC,CAAC;QAEF,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACrB,MAAM,OAAO,GAAmC,EAAE,CAAC;YACnD,CAAC,CAAC,cAAc,CAAC,OAAO,CAAE,EAAE,CAAC,EAAE;gBAC7B,OAAO,CAAC,IAAI,CAAC,IAAI,uEAAuB,CAAC,EAAC,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE,CAAC,WAAW,EAAC,CAAC,CAAC;YACxH,CAAC,CAAC;YACF,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,8DAAc,CAAC;gBAC1C,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,KAAK;gBACnC,UAAU,EAAE,CAAC,CAAC,UAAU,IAAI,KAAK;gBACjC,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,cAAc,EAAE,OAAO;aACxB,CAAC,CAAC,CAAC;QACN,CAAC,CAAC;QACF,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,aAAa,CAAC,UAAkB,EAAE,KAAa;QAC7C,2CAA2C;QAC3C,uEAAuE;QACvE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC9B,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QACzB,MAAM,eAAe,GAAG;YACtB,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,iBAAiB,EAAE,YAAY,EAAE,MAAM,CAAC;YAC1E,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,kBAAkB,EAAE,aAAa,EAAE,MAAM,CAAC;YAC5E,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,eAAe,EAAE,UAAU,EAAE,MAAM,CAAC;YACtE,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,kBAAkB,EAAE,aAAa,EAAE,MAAM,CAAC;SAC7E;QAED,IAAI,CAAC,aAAa,CAAC,GAAG,CACpB,8CAAQ,CAAC,eAAe,CAAC,CAAC,SAAS,CACnC,EAAE,CAAC,EAAE;YACH,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACzD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;YACjD,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC7B,CAAC,EACD,GAAG,CAAC,EAAE,GAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAC,CACxB,CACF,CAAC;IAEJ,CAAC;IAED,WAAW,CAAC,QAAgB,EAAE,KAAa;QACzC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC9B,MAAM,kBAAkB,GAAG;YACzB,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,GAAG,QAAQ,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC;YACzE,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,GAAG,QAAQ,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC;SAC1E;QACD,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;QAE5B,IAAI,CAAC,aAAa,CAAC,GAAG,CACpB,8CAAQ,CAAC,kBAAkB,CAAC,CAAC,SAAS,CACpC,EAAE,CAAC,EAAE;YACH,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5D,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;YAC/C,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAChC,CAAC,EACD,GAAG,CAAC,EAAE,GAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAC,CACxB,CACJ,CAAC;IACJ,CAAC;IAED,cAAc,CAAC,WAAmB,EAAE,KAAa;QAC/C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC9B,MAAM,oBAAoB,GAAG;YAC3B,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC;YACxD,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC;YACxD,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC;SACzD;QACD,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QACzB,IAAI,CAAC,aAAa,CAAC,GAAG,CACpB,8CAAQ,CAAC,oBAAoB,CAAC,CAAC,SAAS,CACtC,EAAE,CAAC,EAAE;YACH,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACzD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;YAClD,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAC9B,CAAC,EACD,GAAG,CAAC,EAAE,GAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAC,CAC1B,CACF,CAAC;IACJ,CAAC;IAED,WAAW,CAAC,QAAgB,EAAE,KAAa;QACzC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC9B,MAAM,sBAAsB,GAAG;YAC7B,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC;YAChD,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC;YAChD,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC;SACjD;QACD,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,aAAa,CAAC,GAAG,CACpB,8CAAQ,CAAC,sBAAsB,CAAC,CAAC,SAAS,CACxC,EAAE,CAAC,EAAE;YACH,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1D,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;YAC/C,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC/B,CAAC,EACD,GAAG,CAAC,EAAE,GAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAC,CAC1B,CACF,CAAC;IACJ,CAAC;IAED,YAAY,CAAC,YAA6B,EAAE,KAAa;QACvD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC9B,IAAI,CAAC,eAAe,GAAG,YAAY,CAAC;QACpC,IAAI,CAAC,QAAQ,GAAG,IAAI,KAAK,EAAmB,CAAC;QAC7C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACjC,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAC/B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;IAC3B,CAAC;IAED,kBAAkB;QAChB,IAAI,IAAI,CAAC,YAAY,EAAE;YACpB,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAsB,CAAC,cAAc,CAAC,EAAC,QAAQ,EAAE,QAAQ,EAAC,CAAC,CAAC;YAC/F,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;SAC3B;IACH,CAAC;IAGD,cAAc,CAAC,KAAa;QAC1B,IAAI,KAAK,IAAI,GAAG,EAAE;YAAE,OAAO,cAAc,CAAC;SAAE;QAC5C,IAAI,KAAK,IAAI,GAAG,EAAE;YAAE,OAAO,cAAc,CAAC;SAAE;QAC5C,IAAI,KAAK,IAAI,GAAG,EAAE;YAAE,OAAO,mBAAmB,CAAC;SAAE;QACjD,OAAO,aAAa,CAAC;IACvB,CAAC;;wFAhTU,oBAAoB;kHAApB,oBAAoB;QCmBhC,yEAA4D;QAE9B,kEAAO;QAAA,4DAAK;QAEnC,yEAA+C;QAC3C,iHAYM;QACR,4DAAM;QAIhB,gHAqBM;QAGN,gHAkBM;QAEN,gHAkBM;QAEN,gHAkBM;QAEN,kHAMM;;QAhHa,0IAA4B;QAKhB,0DAAe;QAAf,mFAAe;QAiBxC,0DAAoB;QAApB,oFAAoB;QAwBpB,0DAAuB;QAAvB,uFAAuB;QAoBvB,0DAAqB;QAArB,qFAAqB;QAoBrB,0DAAsB;QAAtB,sFAAsB;QAoBtB,0DAAwB;QAAxB,wFAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACzIoE;AAClB;AACF;AAMY;AAEtD;AAIM;AACc;AACR;AACd;;;;;;;;;;;;;;;;IC0FN,sEAA4C;IACxB,4EAAgB;IAAA,6DAAK;IACrC,sEAAI;IACmK,+SAAS,yBAAiB,IAAC;IAAC,sEAAU;IAAA,6DAAI;;;IAA1M,2DAAqH;IAArH,ufAAqH;;;;IAapI,8EAAwL;IAA9B,8TAAS,2BAAmB,IAAC;IAAC,yEAAa;IAAA,6DAAS;;;;IAC9M,2EAA4D;IACV,2TAAS,+BAAuB,GAAG,CAAC,IAAC;IAAC,uFAA2B;IAAA,6DAAS;IACxH,8EAAuF;IAAlC,2TAAS,+BAAuB,IAAC;IAAC,kEAAM;IAAA,6DAAS;;;IAJ9G,uEAAkK;IAC9J,2IAA8M;IAC9M,qIAGM;IACV,6DAAM;;;IALqB,2DAAiG;IAAjG,6PAAiG;IAChG,2DAAkC;IAAlC,uGAAkC;;;;IAvC9E,2EAAoF;IAI5C,0FAA8B;IAAA,6DAAK;IAC3D,yEAAuG;IAC3G,6DAAM;IACN,2EAAwB;IAIQ,uEAAU;IAAA,6DAAK;IAC/B,uEAAI;IAAA,yDAAwD;IAAA,6DAAK;IAErE,uEAAI;IACgB,iEAAI;IAAA,6DAAK;IACzB,uEAAI;IAAA,yDAAwD;IAAA,6DAAK;IAErE,uEAAI;IACgB,+EAAkB;IAAA,6DAAK;IACvC,uEAAI;IAAA,yDAA2F;IAAA,6DAAK;IAExG,6HAKK;IACL,uEAAI;IACgB,2EAAc;IAAA,6DAAK;IACnC,uEAAI;IAAA,yDAAgK;IAAA,6DAAK;IAKzL,4EAA0B;IACwD,kEAAK;IAAA,6DAAS;IAC5F,+HAMM;IACV,6DAAM;;;IAhCc,4DAAwD;IAAxD,wPAAwD;IAIxD,2DAAwD;IAAxD,oPAAwD;IAIxD,2DAA2F;IAA3F,kZAA2F;IAE9F,2DAAqC;IAArC,gHAAqC;IAQlC,2DAAgK;IAAhK,gnBAAgK;IAO1K,2DAA0J;IAA1J,wqBAA0J;;;IAgCxJ,2EAA+H;IACxG,wDAAgB;IAAA,6DAAM;IAEzC,2EAA0L;IACtL,uEAAoJ;IACxJ,6DAAM;IACN,2EAAmD;IAC/C,wEAAuL;IAC3L,6DAAM;;;;;IARiG,iFAAmB;IACvG,2DAAgB;IAAhB,kFAAgB;IAEgB,2DAAsI;IAAtI,4NAAsI;IAC/K,2DAAsI;IAAtI,4NAAsI;IAG5F,2DAAmC;IAAnC,6FAAmC;IAAC,oGAA0C;;;;;IAQ9I,8EAAiM;IAA9B,wTAAS,2BAAmB,IAAC;IAAC,kEAAM;IAAA,6DAAS;;;IAApJ,8FAA4B;;;;IACxF,2EAAyE;IACvB,qTAAS,wBAAgB,IAAC;IAAC,uFAA2B;IAAA,6DAAS;IAC7G,8EAAuF;IAAlC,qTAAS,+BAAuB,IAAC;IAAC,kEAAM;IAAA,6DAAS;;;IAtC1H,2EAAiF;IAIzC,2EAAe;IAAA,6DAAK;IAC5C,yEAAuG;IAC3G,6DAAM;IACN,2EAAwB;IAIL,kEAAK;IAAA,2EAAQ;IAAA,yDAAkD;IAAA,6DAAS;IAAC,2EAAa;IAAA,6DAAI;IAGrG,4EAA8B;IACP,iEAAI;IAAA,6DAAM;IAC7B,4EAAwC;IAAA,2EAAc;IAAA,6DAAM;IAC5D,4EAAwC;IAAA,qEAAQ;IAAA,6DAAM;IAE1D,4EAA4B;IACxB,gIASM;IACV,6DAAM;IAGd,4EAA0B;IACwD,kEAAK;IAAA,6DAAS;IAC5F,sIAAgN;IAChN,gIAGM;IACV,6DAAM;;;IAhCiB,2DAA4B;IAA5B,6FAA4B;IAGnB,2DAAkD;IAAlD,uHAAkD;IASnD,4DAAuC;IAAvC,+GAAuC;IAe3C,2DAAmC;IAAnC,uGAAmC;IACrB,2DAAkC;IAAlC,sGAAkC;;;IAkBnE,0EAA6E;IACrC,gEAAI;IAAA,6DAAM;IAC9C,2EAAmB;IAAA,wDAAsD;IAAA,6DAAM;;;IAA5D,2DAAsD;IAAtD,kIAAsD;;;IAE7E,0EAAyE;IACjC,8DAAE;IAAA,6DAAM;IAC5C,2EAAmB;IAAA,wDAAkD;IAAA,6DAAM;;;IAAxD,2DAAkD;IAAlD,8HAAkD;;;IAEzE,0EAA2E;IACnC,oEAAQ;IAAA,6DAAM;IAClD,2EAAmB;IAAA,wDAAoD;IAAA,6DAAM;;;IAA1D,2DAAoD;IAApD,gIAAoD;;;IAE3E,0EAA2E;IACnC,oEAAQ;IAAA,6DAAM;IAClD,2EAAmB;IAAA,wDAAoD;IAAA,6DAAM;;;IAA1D,2DAAoD;IAApD,kIAAoD;;;IAE3E,0EAAwE;IAChC,iEAAK;IAAA,6DAAM;IAC/C,2EAAmB;IAAA,wDAAiD;IAAA,6DAAM;;;IAAvD,2DAAiD;IAAjD,+HAAiD;;;IAQxE,0EAA6E;IACrC,sEAAU;IAAA,6DAAM;IACpD,2EAAmB;IAAA,wDAAsD;IAAA,6DAAM;;;IAA5D,2DAAsD;IAAtD,oIAAsD;;;IArNrG,uEAA0B;IAKkB,0EAAc;IAAA,6DAAK;IAC3C,8EAA8F;IACjE,kEAAO;IAAA,6DAAO;IAG/C,4EAAwB;IAIL,8EAAiB;IAAA,6DAAI;IAGhC,4EAAwB;IACpB,yEAA0F;IAC1F,8EAAkD;IAAA,+DAAE;IAAA,6DAAQ;IAEhE,4EAAwB;IACpB,yEAAkG;IAClG,8EAAsD;IAAA,2EAAc;IAAA,6DAAQ;IAEhF,4EAAwB;IACpB,yEAAsG;IACtG,8EAAwD;IAAA,6EAAgB;IAAA,6DAAQ;IAI5F,4EAA0B;IAC0D,kEAAK;IAAA,6DAAS;IAM9G,4EAA6D;IAIrB,iEAAI;IAAA,6DAAK;IACjC,0EAAuG;IAC3G,6DAAM;IACN,4EAAwB;IAI2D,wEAAoE;IAAA,6DAAK;IAC5I,2EAAyB;IAAA,kFAAqB;IAAA,6DAAK;IAEvD,uEAAI;IACmE,wEAAoE;IAAA,6DAAK;IAC5I,2EAAyB;IAAA,0EAAa;IAAA,6DAAK;IAE/C,uEAAI;IACmE,wEAAoE;IAAA,6DAAK;IAC5I,2EAAyB;IAAA,qEAAQ;IAAA,6DAAK;IAE1C,uEAAI;IACmE,wEAAoE;IAAA,6DAAK;IAC5I,2EAAyB;IAAA,2EAAc;IAAA,6DAAK;IAEhD,uEAAI;IACmE,wEAAoE;IAAA,6DAAK;IAC5I,2EAAyB;IAAA,qEAAQ;IAAA,6DAAK;IAE1C,uEAAI;IACiD,wEAAuD;IAAA,6DAAK;IAC7G,2EAAyB;IAAA,2FAA8B;IAAA,6DAAK;IAK5E,4EAA0B;IAC0D,kEAAK;IAAA,6DAAS;IAM9G,0HA+CM;IAEN,0HA2CM;IAEN,4EAAsE;IAI9B,0EAAa;IAAA,6DAAK;IAC1C,0EAAuG;IAC3G,6DAAM;IACN,4EAAwB;IAEhB,yHAGM;IACN,yHAGM;IACN,yHAGM;IACN,yHAGM;IACN,yHAGM;IAON,yHAGM;IACN,2EAAiB;IACuB,yFAA4B;IAAA,6DAAM;IACtE,4EAAmB;IAAA,yDAA4C;IAAA,6DAAM;IAIjF,4EAA0B;IACwD,kEAAK;IAAA,6DAAS;;;;;;;;;IAnNzE,4DAA4B;IAA5B,6FAA4B;IAsCE,4DAA6B;IAA7B,8FAA6B;IAAgC,2DAA6B;IAA7B,8FAA6B;IAI1F,2DAA6B;IAA7B,8FAA6B;IAAgC,2DAA6B;IAA7B,8FAA6B;IAI1F,2DAA6B;IAA7B,8FAA6B;IAAgC,2DAA6B;IAA7B,8FAA6B;IAI1F,2DAA6B;IAA7B,8FAA6B;IAAgC,2DAA6B;IAA7B,8FAA6B;IAI1F,2DAA6B;IAA7B,8FAA6B;IAAgC,2DAA6B;IAA7B,8FAA6B;IAiBrJ,4DAAkB;IAAlB,sFAAkB;IAiDlB,2DAAc;IAAd,kFAAc;IAsDM,4DAAyD;IAAzD,0KAAyD;IAIzD,2DAAqD;IAArD,sKAAqD;IAIrD,2DAAuD;IAAvD,wKAAuD;IAIvD,2DAAuD;IAAvD,wKAAuD;IAIvD,2DAAoD;IAApD,qKAAoD;IAUpD,2DAAyD;IAAzD,0KAAyD;IAMxC,2DAA4C;IAA5C,wHAA4C;;;IAkB5D,6EAA2C;IAAC,wDAAY;IAAA,6DAAQ;;;IAApB,2DAAY;IAAZ,2FAAY;;;IACnE,2EAA2F;IACY,uEAAiD;IAAA,6DAAS;;;IAYzI,wEAAqC;IAAC,wDAAmB;IAAA,6DAAO;;;IAA1B,2DAAmB;IAAnB,+FAAmB;;;IAF7D,8EAA4D;IAClD,wDAAe;IAAA,6DAAO;IAC5B,iIAAgE;IACpE,6DAAS;;;IAH2B,qFAAuB;IACjD,2DAAe;IAAf,iFAAe;IACd,2DAA4B;IAA5B,6FAA4B;;;;IAT/D,2EAA4C;IAI0B,wEAAY;IAAA,6DAAQ;IAC1E,2EAAmB;IACwD,wSAAU,uBAAe,IAAC;IAC7F,6HAGS;IACb,6DAAS;;;IATf,2DAAyB;IAAzB,0FAAyB;IAKO,2DAAY;IAAZ,sFAAY;;;IA6BtC,0EAA2H;IAAA,wDAAuB;IAAA,6DAAK;;;IAAvE,mFAAiB;IAAC,sFAAwB;IAAC,2DAAuB;IAAvB,6FAAuB;;;IAClJ,2EAAqJ;IAAA,wDAAuB;IAAA,6DAAK;;;IAAlD,uFAAqB;IAA9C,sFAAwB;IAAuB,2DAAuB;IAAvB,6FAAuB;;;IAC5K,2EAAwJ;IAAA,wDAAuB;IAAA,6DAAK;;;IAApD,yFAAuB;IAAhD,sFAAwB;IAAyB,2DAAuB;IAAvB,6FAAuB;;;IAC/K,2EAAmH;IAAA,uEAAW;IAAA,6DAAK;;;IAMnF,wEAAuB;IAAA,kEAAM;IAAA,6DAAO;;;;IAGhF,+EAA0I;IAA9C,+YAAS,yBAAa,IAAC;IAAuB,6DAAS;;;;;IAFvJ,2EAAqK;IAC5I,kWAAS,6BAAiB,IAAC;IAAC,wDAAsC;IAAA,6DAAI;IAC3F,qIAAmJ;IACvJ,6DAAK;;;;IAHsG,oGAA8B;IAClI,2DAAiB;IAAjB,+IAAiB;IAA6B,2DAAsC;IAAtC,gHAAsC;IAC9E,2DAAqC;IAArC,8GAAqC;;;IAG9C,+EAAqF;IAAA,6DAAC;IAAA,6DAAS;;;IAKnF,+EAAsF;IAAA,wDAAwC;IAAA,6DAAS;;;IAAlG,mHAAgD;IAAC,2DAAwC;IAAxC,yHAAwC;;;;IAJ1I,4EAAoF;IAE5E,yEAA2H;IAC3H,iFAA0B;IACtB,4IAAuI;IAC3I,6DAAW;IACX,+EAAiF;IAAzB,qTAAS,sBAAc,IAAC;IAAC,wEAAoD;IAAA,6DAAS;;;IANlG,iGAA+B;IAIjD,2DAAa;IAAb,wFAAa;;;IANnD,2EAA0F;IACtF,qIAA+F;IAC/F,iIASO;IACX,6DAAK;;;IAXQ,2DAA4B;IAA5B,yGAA4B;IAC7B,2DAA6B;IAA7B,0GAA6B;;;IA+CrC,4EAA2E;IACvE,uEACM;IACV,6DAAM;;;;;IAF2C,2DAAuC;IAAvC,iHAAuC;IAAyC,wIAAkE;;;IATvM,2EAAwJ;IAI5I,wDACA;IACJ,6DAAO;IAEX,wIAGM;IACV,6DAAK;;;;;IAZ8E,gGAA0B;IAEjF,2DAAoC;IAApC,8GAAoC;IAEpD,2DACA;IADA,0HACA;IAGF,2DAA8B;IAA9B,2GAA8B;;;;IASpC,+EAA8G;IAAhC,ifAAS,qCAAqB,IAAC;IACzG,wEAAM;IAAA,gEAAI;IAAA,6DAAO;;;;IAKrB,0EAA6G;IAAlC,skBAAS,2CAAuB,IAAC;IACxG,wEAAqE;IACzE,6DAAI;;;;;;IAFkC,+IAAiB;IAC/B,2DAAyC;IAAzC,uHAAyC;;;IAEjE,wEAAyG;;;;;;IAAjD,uHAAyC;;;IAJrG,2EAAwK;IACpK,yIAEI;IACJ,+IAAyG;IAC7G,6DAAK;;;;;;IAL4F,uHAAyC;IAClI,2DAAgC;IAAhC,6GAAgC;IAG7B,2DAAiC;IAAjC,8GAAiC;;;IAZhD,2EAAyJ;IAC7F,wDAA6D;IAAA,6DAAK;IAC1H,2EAAoC;IAChC,8IAES;IACb,6DAAK;IAEL,sIAKK;IACT,6DAAK;;;;;;;IAdgE,kGAA4B;IACrC,2DAA6D;IAA7D,sIAA6D;IAExG,2DAAc;IAAd,mFAAc;IAKP,2DAAa;IAAb,sFAAa;;;IAhDzC,yEAAwE;IAG5D,wDACJ;IAAA,6DAAK;IACL,2EAA6E;IAGjE,wDACJ;;IAAA,6DAAO;IAGX,4EAA0C;IACtC,wEACM;IACV,6DAAM;IAGV,4EAAuC;IAE/B,yEAAyC;IAE7C,6DAAO;IAEX,sEAAqB;IAErB,kIAYK;IACT,6DAAK;IACL,kIAcK;IACT,6DAAQ;;;;;IAtDA,2DAA4B;IAA5B,kGAA4B;IAExB,2DACJ;IADI,2HACJ;IAG4B,2DAA6B;IAA7B,mGAA6B;IAC7C,2DACJ;IADI,oLACJ;IAI6C,2DAAgC;IAAhC,sGAAgC;IAAkC,iHAA+C;IAM/E,2DAA+C;IAA/C,yGAA+C;IAOpH,2DAAa;IAAb,sFAAa;IAchB,2DAA+B;IAA/B,4GAA+B;;;;IArFlE,uEAAsD;IAaN,mVAAoB,kCAA0B,IAAC;IAAqD,6DAAyB;IAEzJ,qEAAkD;IAClD,sHAAuJ;IACvJ,sHAAiL;IACjL,wHAAoL;IACpL,wHAAmI;IACvI,6DAAK;IACL,uEAAI;IAEI,8FACJ;IAAA,6DAAK;IACL,2EAAgD;IAAA,2HAAoC;IAAA,6DAAK;IACzF,wHAGK;IACL,wHAYK;IACT,6DAAK;IAET,gIAuDQ;IACZ,6DAAQ;;;IAxFgF,2DAAmD;IAAnD,6GAAmD;IAG9G,2DAAe;IAAf,qFAAe;IACf,2DAAe;IAAf,qFAAe;IACf,2DAAe;IAAf,qFAAe;IACf,2DAAc;IAAd,kFAAc;IAMwB,2DAAc;IAAd,kFAAc;IACnD,2DAAa;IAAb,qFAAa;IAI1B,2DAAc;IAAd,kFAAc;IAeN,2DAAkB;IAAlB,0FAAkB;;AD5R5D,MAAM,mBAAmB;IAsG5B,YAC6B,MAAc,EACjC,EAAe,EACf,YAA0B,EAC1B,WAAwB;IAChC,sCAAsC;IAC9B,YAA0B,EAC1B,aAA4B,EAC5B,gBAAkC,EAClC,cAA8B,EAC9B,aAA4B;QATT,WAAM,GAAN,MAAM,CAAQ;QACjC,OAAE,GAAF,EAAE,CAAa;QACf,iBAAY,GAAZ,YAAY,CAAc;QAC1B,gBAAW,GAAX,WAAW,CAAa;QAExB,iBAAY,GAAZ,YAAY,CAAc;QAC1B,kBAAa,GAAb,aAAa,CAAe;QAC5B,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,mBAAc,GAAd,cAAc,CAAgB;QAC9B,kBAAa,GAAb,aAAa,CAAe;QA5G7B,aAAQ,GAAG,EAAE,CAAC;QAEvB,mBAAc,GAAc,IAAI,sDAAS,CACvC;YACE,QAAQ,EAAE,IAAI,wDAAW,CAAC,IAAI,CAAC;YAC/B,YAAY,EAAE,IAAI,wDAAW,CAAC,IAAI,CAAC;YACnC,cAAc,EAAE,IAAI,wDAAW,CAAC,IAAI,CAAC;SACtC,CACF,CAAC;QAEF,gBAAW,GAAc,IAAI,sDAAS,CACpC;YACE,SAAS,EAAE,IAAI,wDAAW,EAAE;SAC7B,CACF;QAED,sBAAiB,GAAc,IAAI,sDAAS,CAC1C;YACE,WAAW,EAAE,IAAI,wDAAW,EAAE;SAC/B,CACF;QAED,mBAAc,GAAc,IAAI,sDAAS,CACvC;YACE,eAAe,EAAE,IAAI,wDAAW,CAAC,EAAE,CAAC;YACpC,gBAAgB,EAAE,IAAI,wDAAW,CAAC,CAAC,CAAC,CAAC;YACrC,gBAAgB,EAAE,IAAI,wDAAW,CAAC,CAAC,CAAC,CAAC;YACrC,cAAc,EAAE,IAAI,wDAAW,CAAC,EAAE,CAAC;YACnC,YAAY,EAAE,IAAI,wDAAW,CAAC,EAAE,CAAC;YACjC,QAAQ,EAAE,IAAI,sDAAS,CAAC,EAAE,CAAC;SAC5B,CACF,CAAC;QAEF,aAAQ,GAA2B,EAAE,CAAC;QACtC,eAAU,GAAkB,EAAE,CAAC;QAC/B,cAAS,GAAY,EAAE,CAAC;QAExB,qBAAgB,GAAiB,IAAI,uDAAY,EAAE,CAAC;QACpD,kBAAa,GAAkB,EAAE,CAAC;QAClC,aAAQ,GAAkB,EAAE,CAAC;QAC7B,eAAU,GAA4B,EAAE,CAAC;QACzC,iBAAY,GAAG,IAAI,GAAG,EAA4B,CAAC;QACnD,0BAAqB,GAAG,CAAC,CAAC,CAAC;QAE3B,gBAAW,GAAkB,EAAE,CAAC;QAEhC,YAAO,GAAG,CAAC,CAAC;QACZ,YAAO,GAAG,CAAC,CAAC;QACZ,YAAO,GAAG,CAAC,CAAC;QAEZ,aAAQ,GAAG,KAAK,CAAC;QAEjB,yBAAoB,GAAG,IAAI,GAAG,EAAkB,CAAC;QACjD,oBAAe,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC5C,oBAAe,GAAG,IAAI,GAAG,EAAkB,CAAC;QAE5C,wBAAmB,GAAG,CAAC,CAAC;QACxB,yBAAoB,GAAG,CAAC,CAAC;QACzB,wBAAmB,GAAG,CAAC,CAAC;QAExB,sBAAiB,GAAG,EAAE,CAAC;QACvB,uBAAkB,GAAG,EAAE,CAAC;QACxB,sBAAiB,GAAG,EAAE,CAAC;QAEvB,oBAAe,GAAG,IAAI,+CAAY,EAAE,CAAC;QAErC,gBAAW,GAAG,KAAK,CAAC;QACpB,mBAAc,GAAG,EAAE,CAAC;QACpB,eAAU,GAAG,KAAK,CAAC;QACnB,iCAA4B,GAAG,KAAK,CAAC;QAErC,kBAAa,GAAG;YACd,cAAc,EAAE;gBACd,KAAK,EAAE,qEAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,oCAAoC;aACjC;YACd,eAAe,EAAE;gBACf,KAAK,EAAE,qEAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,8BAA8B;aAC3B;YACd,cAAc,EAAE;gBACd,KAAK,EAAE,qEAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,gCAAgC;aAC7B;YACd,cAAc,EAAE;gBACd,KAAK,EAAE,qEAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,gCAAgC;aAC7B;SACf;QACD,sBAAiB,GAAG,IAAI,GAAG,EAAe,CAAC;IAgBrC,CAAC;IAdP,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC;IACxC,CAAC;IAcD,IAAI,MAAM;QACR,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;IAClD,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC;IACtD,CAAC;IAED,IAAI,YAAY;QACd,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC;IACxD,CAAC;IAED,QAAQ;QAEN,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,EAAE,uBAAuB,CAAC,CAAC;QAC5D,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,EAAE,uBAAuB,CAAC,CAAC;QAC5D,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,EAAE,uBAAuB,CAAC,CAAC;QAC5D,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,EAAE,uBAAuB,CAAC,CAAC;QAC5D,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QAC/C,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;QACpD,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QAE/C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACxC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACxC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACxC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACxC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QACzC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACxC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAEtC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,qBAAqB,CAAC,CAAC;QACrD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,qBAAqB,CAAC,CAAC;QACrD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,qBAAqB,CAAC,CAAC;QACrD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,qBAAqB,CAAC,CAAC;QACrD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,qBAAqB,CAAC,CAAC;QACrD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;QACnD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAC;QAExD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QAExB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,IAAI,CAAC,eAAe,CAAC,GAAG,CACtB,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,SAAS,CACvC,CAAC,EAAU,EAAE,EAAE;gBACb,IAAI,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC,QAAQ,EAAE;oBAC3B,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC,EAAE,CAAC;oBACtB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC,mBAAmB,IAAI,KAAK,CAAC;oBAChD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;oBACnD,IAAI,CAAC,cAAc,EAAE,CAAC;oBACtB,IAAI,CAAC,gBAAgB,EAAE,CAAC;iBACzB;YACH,CAAC,CACF,CACF;SACF;QAED,IAAI,CAAC,eAAe,CAAC,GAAG,CACtB,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,UAAU,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAE,2BAA2B;QACjH,CAAC,EAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC,MAAM,CACzB,CAAC,CAAC,EAAE,GAAE,OAAO,CAAC,CAAC,cAAc,GAAC,CAC/B,CAAC,IAAI,CACJ,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,cAAc,GAAG,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CACrE,CAAC;QACJ,CAAC,CACF,CACF;QACD,IAAI,CAAC,eAAe,CAAC,GAAG,CACtB,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC,SAAS,CAC5C,CAAC,EAAgB,EAAE,EAAE,GAAG,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC,CAAC,CAAC,CAC/C,CACF;IACH,CAAC;IAED,WAAW;QACT,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAED,WAAW;QACT,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;IACrC,CAAC;IAED,cAAc;QACZ,IAAI,CAAC,eAAe,CAAC,GAAG,CACtB,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,CAAE,2BAA2B;QACpI,CAAC,EAA2B,EAAE,EAAE;YAC9B,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;YACrB,IAAI,CAAC,UAAU,CAAC,OAAO,CAAE,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAC,CAAC,CAAC,CAAC;QAC7E,CAAC,EACD,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CACjF,CACF;IACH,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;QAC3B,IAAI,CAAC,eAAe,CAAC,GAAG,CACtB,IAAI,CAAC,gBAAgB,CAAC,eAAe,CACnC,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAC3G;aACA,IAAI,CACH,yDAAQ,CAAE,GAAG,EAAE;YACb,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;YACzB,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;QAC5B,CAAC,CAAE,CACJ;aACA,SAAS,CACR,CAAC,EAAgB,EAAE,EAAE;YACnB,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;YAC3B,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,IAAI,CACpE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBACP,MAAM,KAAK,GAAW,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC9D,MAAM,KAAK,GAAW,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC9D,OAAO,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAChC,CAAC,CACF,CAAC;YACF,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAEzD,2BAA2B;YAC3B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBACzB,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,iBAAiB,EAAE;oBACjE,OAAO,CAAC,CAAC,CAAC;iBACX;gBACD,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,cAAc,EAAE;oBAC5D,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,iBAAiB,EAAE;wBACjE,OAAO,CAAC,CAAC;qBACV;yBAAM;wBACL,OAAO,CAAC,CAAC,CAAC;qBACX;iBACJ;gBACD,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,aAAa,EAAE;oBAC7D,OAAO,CAAC;iBACT;gBACD,OAAO,CAAC,CAAC;YACX,CAAC,CACF;YAED,2BAA2B;YAC3B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CACjC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAC,EAC/F,CAAC,CAAC;YACJ,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CACjC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAC,EAC5F,CAAC,CAAC;YACJ,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CACjC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAC,EAC3F,CAAC,CAAC;YAEJ,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC1B,CAAC,EACD,GAAG,CAAC,EAAE;YACJ,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;QACvE,CAAC,CACF,CACF;IACH,CAAC;IAED,aAAa,CAAC,QAAgB;QAC5B,IAAI,CAAC,eAAe,CAAC,GAAG,CACtB,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,SAAS,CACzD,CAAC,CAAmB,EAAE,EAAE;YACtB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACrC,CAAC,EACD,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CACjF,CACF,CAAC;QACF,IAAI,CAAC,eAAe,CAAC,GAAG,CACtB,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,CAAC;aACrG,SAAS,CACR,CAAC,EAAgB,EAAE,EAAE;YACnB,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC;YAC1C,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;YACtC,QAAQ,CAAC,OAAO,CAAE,EAAE,CAAC,EAAE;gBACrB,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC;gBACvD,QAAQ,CAAC,OAAO,CAAE,EAAE,CAAC,EAAE;oBACrB,QAAQ,CAAC,OAAO,CAAE,EAAE,CAAC,EAAE;wBACrB,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE;4BACxC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC,GAA0B;gCAC3D,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,IAAI;gCAC3B,QAAQ,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,QAAQ;gCACnC,QAAQ,EAAG,EAAE;6BACd,CAAC;yBACH;wBACD,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;4BACrD,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAwB;gCACtE,WAAW,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,WAAW;gCACtD,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS;gCAClD,gBAAgB,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,gBAAgB;gCAChE,KAAK,EAAE,EAAE;6BACV,CAAC;yBACH;wBACD,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE;4BAC3C,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG;gCAC3D,QAAQ,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ;6BAC3D;yBACF;6BAAM;4BACL,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAC,2BAA2B;yBAC3G;oBACH,CAAC,CAAC;gBACJ,CAAC,CAAC;YACJ,CAAC,CAAC;YACF,QAAQ,CAAC,OAAO,CAAE,EAAE,CAAC,EAAE;gBACrB,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;YAChD,CAAC,CAAC;YACF,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC/C,gCAAgC;YAChC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC1B,CAAC,EACD,GAAG,CAAC,EAAE;YACJ,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;QACvE,CAAC,CACF,CACF;IACH,CAAC;IAED,kBAAkB,CAAC,QAAgB;QACjC,OAAO,OAAO,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,WAAW,CAAC,CAAC;IACvE,CAAC;IAED,uBAAuB,CAAC,OAAe,EAAE,OAAe;QACtD,IAAI,WAAW,GAAG,gBAAgB;QAClC,IAAI,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;YAC7C,WAAW,GAAG,OAAO,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC;SACxH;QACD,OAAO,WAAW;IACpB,CAAC;IAED,YAAY,CAAC,QAAgB;QAC3B,OAAO,KAAK,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,WAAW,CAAC,CAAC;IACrE,CAAC;IAED,iBAAiB,CAAC,OAAe,EAAE,OAAe,EAAE,OAAe;QACjE,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YAClD,KAAK,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAC/B,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,CAC9F,IAAI,WAAW,CAAC,CAAC,CAAC;YACnB,aAAa;IACf,CAAC;IAED,YAAY,CAAC,QAAgB;QAC3B,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,wBAAwB,CAAC;IACxE,CAAC;IAED,iBAAiB,CAAC,OAAe,EAAE,OAAe,EAAE,OAAe;QACjE,oDAAoD;QACpD,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YAClD,IAAI,CAAC,eAAe,CAAC,GAAG,CACtB,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,CAC9F,IAAI,wBAAwB,CAAC,CAAC;YAC/B,6BAA6B;IAC/B,CAAC;IAED,eAAe,CAAC,IAAqB;QACnC,IAAI,IAAI,CAAC,EAAE,EAAE;YACX,OAAO,aAAa,CAAC;SACtB;aAAM,IAAI,IAAI,CAAC,YAAY,EAAE;YAC5B,OAAO,wBAAwB,CAAC;SACjC;aAAM;YACL,OAAO,uBAAuB,CAAC;SAChC;IACH,CAAC;IAED,aAAa,CAAC,eAAuB,EAAE,cAAsB;QAC3D,MAAM,QAAQ,GAA2B,2EAAyB,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,eAAe,CAAC;QAC/H,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IACrD,CAAC;IAED,kBAAkB,CAAC,OAAe,EAAE,OAAe;QACjD,OAAO,CACL,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,CACtI;IACH,CAAC;IAED,SAAS,CAAC,KAAU,EAAE,IAAS;QAC7B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,aAAa,CAAC,OAAO,CAAE,EAAE,CAAC,EAAE;YAC/B,MAAM,SAAS,GAA0B,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAC7E,MAAM,WAAW,GAAkB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACnE,MAAM,UAAU,GAAG,EAAE;YACrB,WAAW,CAAC,OAAO,CAAE,EAAE,CAAC,EAAE;gBACxB,MAAM,OAAO,GAAwB,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC3D,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;gBAClD,eAAe,CAAC,OAAO,CAAE,EAAE,CAAC,EAAE;oBAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBAEjD,yDAAyD;oBACzD,yCAAyC;oBACzC,IAAI;oBAEJ,2BAA2B;oBAC3B,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE;wBACnB,UAAU,CAAC,EAAE,CAAC,GAAG;4BACf,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ;4BAClC,eAAe,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;4BAClF,KAAK,EAAE,QAAQ,CAAC,KAAK;yBACtB;qBACF;yBAAM;wBACL,UAAU,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC;4BACtB,UAAU,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC;wBAChH,UAAU,CAAC,EAAE,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;wBAC9G,UAAU,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,GAAI,QAAQ,CAAC,KAAK,CAAC;qBAC3C;gBAEH,CAAC,CAAC;YACJ,CAAC,CAAC;YACF,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAC7C,CAAC,CAAC;IAEJ,CAAC;IAED,WAAW,CAAC,OAAe,EAAE,OAAe,EAAE,OAAe;QAC3D,IAAI,CAAC,4BAA4B,GAAG,KAAK,CAAC;QAC1C,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC;QACjC,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC;QAClC,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAEjC,MAAM,UAAU,GAAG,IAAI,4CAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC;QACpE,UAAU,CAAC,IAAI,EAAE,CAAC;IACpB,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,4BAA4B,GAAG,IAAI,CAAC;IAC3C,CAAC;IAED,sBAAsB,CAAC,WAAmB;QACxC,2BAA2B;QAC3B,MAAM,YAAY,GAChB,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC;aACtD,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC;aACjC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC;QAC1D,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC;aACpD,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC;aACjC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAC,QAAQ,EAAE,GAAG,EAAC,CAAC;QAEnD,MAAM,IAAI,GAA4B;YACpC,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,gBAAgB;YAChH,UAAU,EAAE;gBACV;oBACE,UAAU,EAAE,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,UAAU;oBAC1E,MAAM,EAAE,QAAQ;oBAChB,KAAK,EAAE,GAAG;oBACV,OAAO,EAAE,iCAAiC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,EAAE;iBACrD;aACzB;SACyB,CAAC;QAE7B,IAAI,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,SAAS,CAC1D,CAAC,CAA2B,EAAE,EAAE;YAC9B,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;iBAC5H,SAAS,CACR,GAAG,CAAC,EAAE;gBACJ,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,CAAC,EACD,GAAG,CAAC,EAAE;gBACJ,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;gBACtE,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC;qBACpD,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC;qBACjC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAC,QAAQ,EAAE,YAAY,EAAC,CAAC;YAC5D,CAAC,CACJ;QACH,CAAC,EACD,GAAG,CAAC,EAAE;YACJ,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;YACtE,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC;iBACpD,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC;iBACjC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAC,QAAQ,EAAE,YAAY,EAAC,CAAC;QAC9D,CAAC,EACD,GAAG,EAAE;YACH,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC;iBACtD,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC;iBACjC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAC,QAAQ,EAAE,WAAW,EAAC,CAAC;QAC3D,CAAC,CACF;QACD,IAAI,CAAC,4BAA4B,GAAG,KAAK,CAAC;IAC5C,CAAC;IAED,qBAAqB;QACnB,IAAI,CAAC,4BAA4B,GAAG,KAAK,CAAC;IAC5C,CAAC;IAED,eAAe;QACb,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC;aACpD,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC;aACjC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAC,QAAQ,EAAE,GAAG,EAAC,CAAC,CAAE,2BAA2B;IAClF,CAAC;IAED,YAAY,CAAC,OAAe;QAC1B,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC;QACjD,IAAI,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAC3B,OAAO,KAAK,CAAC;SACd;aAAM,IAAI,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YAChD,OAAO,KAAK,CAAC;SACd;aAAM,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACpD,OAAO,KAAK,CAAC;SACd;aAAM;YACL,OAAO,KAAK,CAAC;SACd;IACH,CAAC;IAED,aAAa,CAAC,eAAuB;QACnC,OAAO,EAAE,OAAO,EAAE,GAAG,eAAe,GAAG,GAAG,GAAG,EAAE;IACjD,CAAC;IAED,iBAAiB,CAAC,OAAe;QAC/B,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC;IACjE,CAAC;IAED,qBAAqB,CAAC,OAAe,EAAE,OAAe;QACpD,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAC1F,CAAC;IAED,aAAa,CAAC,eAAuB;QACnC,6BAA6B;QAC7B,IAAI,eAAe,IAAI,IAAI,EAAE;YAC3B,OAAO,QAAQ;SAChB;aAAM,IAAI,eAAe,IAAI,IAAI,EAAE;YAClC,OAAO,oBAAoB;SAC5B;QACD,OAAO,SAAS;IAClB,CAAC;IAED,cAAc,CAAC,OAAe;QAC5B,OAAO,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC;IACzE,CAAC;IAED,iBAAiB,CAAC,OAAe;QAC/B,OAAO,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC;IACzE,CAAC;IAED,kBAAkB,CAAC,OAAe,EAAE,OAAe;QACjD,IAAI,aAAa,GAAG,UAAU,CAAC;QAC/B,IAAI,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;YAC7C,aAAa,GAAG,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC;SAC1G;QACD,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,qBAAqB,CAAC,OAAe,EAAE,OAAe;QACpD,IAAI,aAAa,GAAG,cAAc,CAAC;QACnC,IAAI,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;YAC7C,aAAa,GAAG,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC;SAC1G;QACD,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,kBAAkB,CAAC,UAAkB;QACnC,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC;IACnC,CAAC;IAED,cAAc,CAAC,OAAe;QAC5B,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;SAChH;aAAM;YACL,OAAO,KAAK,CAAC;SACd;IACH,CAAC;IAED,YAAY;QACV,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC;QAChE,IAAI,SAAS,EAAE;YACb,MAAM,WAAW,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9C,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAE,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,cAAc,KAAK,WAAW,GAAC,CAAC;YAC1F,IAAI,WAAW,EAAE;gBACf,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC3C,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;aACpC;SACF;QACD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE,CAAC;IAClD,CAAC;IAED,cAAc,CAAC,OAAe,EAAE,OAAe;QAC7C,IAAI,CAAC,4BAA4B,GAAG,KAAK,CAAC;QAC1C,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC;QACxH,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC1D,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAe,CAAC,KAAK,EAAE,CAAC;QACzD,MAAM,WAAW,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,QAAQ,CAAC,OAAO,CACnB,EAAE,CAAC,EAAE;YACH,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC;YAC5G,2BAA2B;YAC3B,MAAM,gBAAgB,GACpB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;gBACpC,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,UAAU;gBAC3C,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YACxC,MAAM,eAAe,GAAG,IAAI,wDAAW,CAAC,EAAE,KAAK,EAAE,CAAC,gBAAgB,EAAE,QAAQ,EAAE,gBAAgB,EAAC,CAAC,CAAC;YACjG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAC5B;gBACE,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC;gBACpB,UAAU,EAAE,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ;gBACpD,gBAAgB,EAAE,UAAU,IAAI,GAAG;gBACnC,oBAAoB,EAAE,UAAU,IAAI,GAAG;gBACvC,aAAa,EAAE,eAAe;gBAC9B,QAAQ,EAAE,eAAe,CAAC,QAAQ;aACnC,CACF,CAAC;QACJ,CAAC,CACF;QACD,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;QACrE,MAAM,WAAW,GAAG,IAAI,4CAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,CAAC;QACtE,WAAW,CAAC,IAAI,EAAE,CAAC;IACrB,CAAC;IAED,cAAc;QACZ,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC;QAC9D,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC;QAC/D,MAAM,IAAI,GAA4B;YACpC,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,gBAAgB;YACpF,UAAU,EAAE,EAAE;SACY,CAAC;QAE7B,MAAM,eAAe,GAAc,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAc,CAAC;QAElF,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,GAAG,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;QAC9D,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAE,CAAC,CAAC,EAAE;YACpC,IAAI,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,KAAK,EAAE;gBAChC,IAAI,CAAC,UAAU,CAAC,IAAI,CACG;oBACnB,UAAU,EAAE,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU;oBAC3E,OAAO,EAAE,iCAAiC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,EAAE;oBAC3E,KAAK,EAAE,GAAG;oBACV,MAAM,EAAE,QAAQ;iBACjB,CACF,CAAC;gBACF,CAAC,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,2BAA2B;aACrE;QACH,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,SAAS,CAC1D,CAAC,CAA2B,EAAE,EAAE;YAC9B,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAChC,MAAM,CAAC,UAAU,CAAC,EAClB,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,EACtB,eAAe,CAAC,QAAQ;iBACrB,MAAM,CAAE,EAAE,CAAC,EAAE,GAAE,OAAO,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,KAAK,GAAC,CAAC;iBACrD,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CACnD,CAAC,SAAS,CACT,GAAG,CAAC,EAAE;gBACJ,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,CAAC,EACD,GAAG,CAAC,EAAE;gBACJ,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;gBACtE,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC;YAChE,CAAC,CACF;QACH,CAAC,EACD,GAAG,CAAC,EAAE;YACJ,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;YACtE,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC;QAChE,CAAC,EACD,GAAG,EAAE;YACH,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,2BAA2B;QAClG,CAAC,CACF;QACD,MAAM,WAAW,GAAG,IAAI,4CAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,CAAC;QACtE,WAAW,CAAC,IAAI,EAAE,CAAC;IACrB,CAAC;IAED,aAAa,CAAC,MAAiB,EAAE,QAAgB,EAAE,OAAe,EAAE,UAAkB,EAAE,gBAAyB,KAAK;QACpH,MAAM,CAAC,QAAQ,CAAC,OAAO,CACrB,CAAC,CAAc,EAAE,EAAE;YACjB,IAAI,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,KAAK,EAAE;gBAChC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG;oBAC7F,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ;iBAC7E,CAAC;gBACF,IAAI,aAAa,IAAI,QAAQ,EAAE;oBAC7B,CAAC,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;iBAClD;aACF;QACH,CAAC,CACF;IACH,CAAC;IAED,qBAAqB,CAAC,OAAe;QACnC,MAAM,QAAQ,GAAG,EAAE,CAAC;QACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAC3D,MAAM,UAAU,GAA0B,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAEnF,IAAI,CAAC,QAAQ,CAAC,OAAO,CACnB,CAAC,CAAC,EAAE;YACF,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE;gBAChF,OAAO,CAAC,oBAAoB;aAC7B;YACD,QAAQ,CAAC,IAAI,CACX,QAAQ,CAAC,CAAC,CAAC;gBACX;oBACE,MAAM,EAAE,CAAC;oBACT,eAAe,EAAE,CAAC;oBAClB,KAAK,EAAE,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK;iBAC5C,CACF;QACH,CAAC,CACF;QACD,OAAO,QAAQ;aACZ,GAAG,CAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC;aACjC,MAAM,CAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC;IACnD,CAAC;IAED,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC;IAChD,CAAC;IAED,uBAAuB,CAAC,OAAe;QACrC,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CACxE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACP,MAAM,KAAK,GAAW,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACrF,MAAM,KAAK,GAAW,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACrF,OAAO,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChC,CAAC,CACF,CAAC;IACJ,CAAC;IAED,2BAA2B,CAAC,OAAe,EAAE,OAAe;QAC1D,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC;IACtF,CAAC;IAED,kBAAkB,CAAC,OAAe,EAAE,OAAe;QACjD,OAAO,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAK;YAChE,MAAM,EAAE,CAAC;YACT,eAAe,EAAE,CAAC;YAClB,KAAK,EAAE,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK;SAClD,CAAC;IACJ,CAAC;IAED,uBAAuB,CAAC,OAAe,EAAE,OAAe;QACtD,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,IAAI,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;YAC3C,MAAM,eAAe,GAAG,CAAC,CACvB,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CACnD,IAAK;gBACJ,eAAe,EAAE,CAAC;aACnB,CAAC,CAAC,iBAAiB,CAAC,CAAC;YAC1B,SAAS,GAAG,+DAAa,CAAC,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;SACzD;QAED,OAAO,SAAS,CAAC;IAEnB,CAAC;IAED,UAAU,CAAC,aAAqB;QAC9B,IAAI,CAAC,aAAa,CAAC,OAAO,CAAE,EAAE,CAAC,EAAE;YAC/B,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC3E,QAAQ,CAAC,OAAO,CAAE,EAAE,CAAC,EAAE;gBACrB,OAAO,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC;YAC9E,CAAC,CAAC;QACJ,CAAC,CAAC;QACF,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,aAAa,CAAC;QACjD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAE,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,KAAK,aAAa,GAAC,CAAC;QACzE,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QACpD,IAAI,GAAG,GAAG,CAAC,CAAC,EAAE;YACZ,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SACpD;QACD,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAED,aAAa;QACX,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;QACjB,IAAI,CAAC,gBAAgB,GAAG,IAAI,uDAAY,EAAE,CAAC;QAC3C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAED,iBAAiB,CAAC,QAAgB;QAChC,8DAA8D;QAC9D,oCAAoC;QACpC,oDAAoD;QAEpD,IAAI,CAAC,QAAQ,EAAE;YACb,OAAO,QAAQ,CAAC;SACjB;QAED,MAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAC5C,MAAM,eAAe,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAElD,MAAM,WAAW,GAAG,eAAe,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC;QAClE,MAAM,SAAS,GAAG,kBAAkB,CAAC,gEAAgE,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QAEtH,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,qBAAqB,SAAS,EAAE,CAAC;IAC5D,CAAC;IAED,YAAY,CAAC,OAAe;QAC1B,OAAO,OAAO,KAAK,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC;IACvD,CAAC;IAED,cAAc,CAAC,OAAe;QAC5B,IAAI,CAAC,qBAAqB,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;QAC7C,MAAM,iBAAiB,GAAG,IAAI,4CAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAClF,iBAAiB,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,iBAAiB,CAAC,OAAe;QAC/B,OAAO,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrF,CAAC;IAED,IAAI,eAAe;QACjB,OAAQ,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAe,CAAC,QAAQ;aAC7D,GAAG,CAAE,CAAC,CAAY,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CAAE;aAC/C,KAAK,CAAE,CAAC,CAAc,EAAE,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,EAAC,CAAC,CAAE;IACrD,CAAC;;sFAzzBQ,mBAAmB,mEAuGlB,qDAAS;kHAvGV,mBAAmB;QCrBhC,kHAoOM;QAEN,0EAAiB;QAKG,wEAAW;QAAA,oHAAgE;QAC3E,gHAEM;QACV,6DAAK;QACL,gHAgBM;QAEN,iFAA+I;QAE/I,oHAuGM;QACV,6DAAM;;QA5WZ,mFAAkB;QA2Oe,2DAAc;QAAd,+EAAc;QAC3B,2DAAkB;QAAlB,mFAAkB;QAItB,2DAAc;QAAd,+EAAc;QAkBJ,2DAAyB;QAAzB,uFAAyB;QAEnC,2DAA8C;QAA9C,mHAA8C;;;;;;;;;;;;;;;;;ACrQ7D,MAAM,eAAe,GAAiB,IAAI,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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OAAO;KACpB;IACD,uBAAuB;IACvB,eAAe,EAAE,GAAG;IACpB,eAAe,EAAE,gBAAgB;IACjC,aAAa,EAAE,aAAa;IAC5B,UAAU,EAAE;QACV,EAAC,EAAE,EAAE,sCAAsC,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,EAAC;QACjF,EAAC,EAAE,EAAE,sCAAsC,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,EAAC;KAClF;CAAC,CAAC;;;;;;;;;;;;;;;;;;ACnB0C;AAGF;AACY;AAEzD,IAAI,6EAAsB,EAAE;IAC1B,6DAAc,EAAE,CAAC;CAClB;AAED,wEAAwB,CAAC,eAAe,CAAC,sDAAS,CAAC,CAAC;;;;;;;;;;;ACVpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.config.ts","./src/app/app.module.ts","./src/app/assessor/assessor-routing.module.ts","./src/app/assessor/assessor-select.component.ts","./src/app/assessor/assessor-select.component.html","./src/app/assessor/assessor.module.ts","./src/app/assessor/assessor.service.ts","./src/app/assessor/assessor.ts","./src/app/claim/bulk-claim-grid.component.ts","./src/app/claim/bulk-claim-grid.component.html","./src/app/claim/bulk-claim-summary.component.ts","./src/app/claim/bulk-claim-summary.component.html","./src/app/claim/bulk-claim.component.ts","./src/app/claim/bulk-claim.component.html","./src/app/claim/claim-action.ts","./src/app/claim/claim-activity-summary.component.ts","./src/app/claim/claim-activity-summary.component.html","./src/app/claim/claim-actor.pipe.ts","./src/app/claim/claim-detail.guard.ts","./src/app/claim/claim-document.component.ts","./src/app/claim/claim-document.component.html","./src/app/claim/claim-file-list.component.ts","./src/app/claim/claim-file-list.component.html","./src/app/claim/claim-history.component.ts","./src/app/claim/claim-history.component.html","./src/app/claim/claim-level.ts","./src/app/claim/claim-list.component.ts","./src/app/claim/claim-list.component.html","./src/app/claim/claim-routing.module.ts","./src/app/claim/claim.module.ts","./src/app/claim/claim.service.ts","./src/app/claim/claim.ts","./src/app/claim/meta-claim.guard.ts","./src/app/claim/published-claims.component.ts","./src/app/claim/published-claims.component.html","./src/app/controls/controls.module.ts","./src/app/controls/job-family-select-control.component.ts","./src/app/controls/job-family-select-control.component.html","./src/app/controls/list-status.component.ts","./src/app/controls/list-status.component.html","./src/app/controls/spinner-interceptor.ts","./src/app/controls/spinner.component.ts","./src/app/controls/spinner.component.html","./src/app/controls/spinner.service.ts","./src/app/controls/tab-nav-control.component.ts","./src/app/controls/tab-nav-control.component.html","./src/app/controls/text-filter-control.component.ts","./src/app/controls/text-filter-control.component.html","./src/app/controls/warn-unsaved.component.ts","./src/app/controls/warn-unsaved.component.html","./src/app/core/admin.guard.ts","./src/app/core/adresponse.component.ts","./src/app/core/adresponse.component.html","./src/app/core/alert.component.ts","./src/app/core/alert.component.html","./src/app/core/alert.service.ts","./src/app/core/alert.ts","./src/app/core/auth.service.ts","./src/app/core/can-deactivate.guard.ts","./src/app/core/config.service.ts","./src/app/core/core-routing.module.ts","./src/app/core/core.module.ts","./src/app/core/exception.component.ts","./src/app/core/exception.component.html","./src/app/core/highlight-mandatory.directive.ts","./src/app/core/home.component.demo.ts","./src/app/core/home.component.demo.html","./src/app/core/logged-out.component.ts","./src/app/core/logged-out.component.html","./src/app/core/login.component.ts","./src/app/core/login.component.html","./src/app/core/lowercase-url-serializer.ts","./src/app/core/management-role.guard.ts","./src/app/core/menus.standard.ts","./src/app/core/navbar-menu.component.ts","./src/app/core/navbar-menu.component.html","./src/app/core/navigation.service.ts","./src/app/core/oauth-callback.guard.ts","./src/app/core/privacy-policy.component.ts","./src/app/core/privacy-policy.component.html","./src/app/core/security-role.guard.ts","./src/app/core/security-role.ts","./src/app/core/test.component.ts","./src/app/core/test.component.html","./src/app/core/timeout.interceptor.ts","./src/app/core/uitools.service.ts","./src/app/dashboard/analysis-dashboard.component.ts","./src/app/dashboard/analysis-dashboard.component.html","./src/app/dashboard/chart-bar-horiz.component.ts","./src/app/dashboard/chart-bar-horiz.component.html","./src/app/dashboard/chart-clustered-bar.component.ts","./src/app/dashboard/chart-clustered-bar.component.html","./src/app/dashboard/chart-donut.component.ts","./src/app/dashboard/chart-donut.component.html","./src/app/dashboard/chart-pie.component.ts","./src/app/dashboard/chart-pie.component.html","./src/app/dashboard/chart-stacked-bar-horiz.component.ts","./src/app/dashboard/chart-stacked-bar-horiz.component.html","./src/app/dashboard/dashboard-routing.module.ts","./src/app/dashboard/dashboard.component.ts","./src/app/dashboard/dashboard.component.html","./src/app/dashboard/dashboard.module.ts","./src/app/dashboard/dashboard.service.ts","./src/app/dashboard/donut-row-card.component.ts","./src/app/dashboard/donut-row-card.component.html","./src/app/dashboard/matrix-detail-cell.component.ts","./src/app/dashboard/matrix-detail-cell.component.html","./src/app/dashboard/perf-grid-card.component.ts","./src/app/dashboard/perf-grid-card.component.html","./src/app/dashboard/perf-grid-content.ts","./src/app/dashboard/perf-grid-meta.ts","./src/app/dashboard/perf-grid.component.ts","./src/app/dashboard/perf-grid.component.html","./src/app/dashboard/perf-mgmt-data.ts","./src/app/dashboard/perf-mgmt.component.ts","./src/app/dashboard/perf-mgmt.component.html","./src/app/dashboard/perf-summary.component.ts","./src/app/dashboard/perf-summary.component.html","./src/app/dashboard/role-matrix.component.ts","./src/app/dashboard/role-matrix.component.html","./src/app/dashboard/skill-matrix-data-2.ts","./src/app/dashboard/skill-matrix-summary.component.ts","./src/app/dashboard/skill-matrix-summary.component.html","./src/app/dashboard/skill-matrix.component.ts","./src/app/dashboard/skill-matrix.component.html","./src/app/dashboard/skill-matrix.ts","./src/app/dashboard/skill-table/skill-table.component.ts","./src/app/dashboard/skill-table/skill-table.component.html","./src/app/dashboard/succession-team.component.ts","./src/app/dashboard/succession-team.component.html","./src/app/graph/graph-routing.module.ts","./src/app/graph/graph-update-summ-resolver.service.ts","./src/app/graph/graph-user-detail.component.ts","./src/app/graph/graph-user-detail.component.html","./src/app/graph/graph-user-list.component.ts","./src/app/graph/graph-user-list.component.html","./src/app/graph/graph-user-table.component.ts","./src/app/graph/graph-user-table.component.html","./src/app/graph/graph-users-post-summary.component.ts","./src/app/graph/graph-users-post-summary.component.html","./src/app/graph/graph.component.ts","./src/app/graph/graph.component.html","./src/app/graph/graph.module.ts","./src/app/graph/graph.service.ts","./src/app/graph/import-error-list.component.ts","./src/app/graph/import-error-list.component.html","./src/app/graph/user-import.component.ts","./src/app/graph/user-import.component.html","./src/app/job-role/job-family.component.ts","./src/app/job-role/job-family.component.html","./src/app/job-role/job-grade-set-grade.component.ts","./src/app/job-role/job-grade-set-grade.component.html","./src/app/job-role/job-grade-set.component.ts","./src/app/job-role/job-grade-set.component.html","./src/app/job-role/job-grade.component.ts","./src/app/job-role/job-grade.component.html","./src/app/job-role/job-role-analysis.component.ts","./src/app/job-role/job-role-analysis.component.html","./src/app/job-role/job-role-compare.component.ts","./src/app/job-role/job-role-compare.component.html","./src/app/job-role/job-role-detail.component.ts","./src/app/job-role/job-role-detail.component.html","./src/app/job-role/job-role-profile.component.ts","./src/app/job-role/job-role-profile.component.html","./src/app/job-role/job-role-routing.module.ts","./src/app/job-role/job-role.component.ts","./src/app/job-role/job-role.component.html","./src/app/job-role/job-role.module.ts","./src/app/job-role/job-role.service.ts","./src/app/org-unit/group-subjects/group-subjects.component.ts","./src/app/org-unit/group-subjects/group-subjects.component.html","./src/app/org-unit/org-unit-detail.component.ts","./src/app/org-unit/org-unit-detail.component.html","./src/app/org-unit/org-unit-routing.module.ts","./src/app/org-unit/org-unit.module.ts","./src/app/org-unit/org-unit.service.ts","./src/app/org-unit/org-unit.ts","./src/app/org-unit/skills-matrix-division/skills-matrix-division.component.ts","./src/app/org-unit/skills-matrix-division/skills-matrix-division.component.html","./src/app/org-unit/watch-hierarchy/watch-hierarchy.component.ts","./src/app/org-unit/watch-hierarchy/watch-hierarchy.component.html","./src/app/person/assignment-detail.component.ts","./src/app/person/assignment-detail.component.html","./src/app/person/curricula-summary.component.ts","./src/app/person/curricula-summary.component.html","./src/app/person/notification-list.component.ts","./src/app/person/notification-list.component.html","./src/app/person/person-detail.component.ts","./src/app/person/person-detail.component.html","./src/app/person/person-extended-detail.component.ts","./src/app/person/person-extended-detail.component.html","./src/app/person/person-routing.module.ts","./src/app/person/person-security-role.component.ts","./src/app/person/person-security-role.component.html","./src/app/person/person-summary.component.ts","./src/app/person/person-summary.component.html","./src/app/person/person.module.ts","./src/app/person/person.service.ts","./src/app/person/person.ts","./src/app/person/security-role.component.ts","./src/app/person/security-role.component.html","./src/app/person/shared-info-list.component.ts","./src/app/person/shared-info-list.component.html","./src/app/skill/func-area.ts","./src/app/skill/job-family-filter.component.ts","./src/app/skill/job-family-filter.component.html","./src/app/skill/knowledge-select.component.ts","./src/app/skill/knowledge-select.component.html","./src/app/skill/skill-list.component.ts","./src/app/skill/skill-list.component.html","./src/app/skill/skill-routing.module.ts","./src/app/skill/skill-training-session.ts","./src/app/skill/skill.module.ts","./src/app/skill/skill.service.ts","./src/app/skill/skill.ts","./src/app/submission/action-select-form.component.ts","./src/app/submission/action-select-form.component.html","./src/app/submission/attachment-select-form.component.ts","./src/app/submission/attachment-select-form.component.html","./src/app/submission/competency-attr-category-list.component.ts","./src/app/submission/competency-attr-category-list.component.html","./src/app/submission/competency-attr-filter-list.component.ts","./src/app/submission/competency-attr-filter-list.component.html","./src/app/submission/competency-attr-form.component.ts","./src/app/submission/competency-attr-form.component.html","./src/app/submission/evidence.component.ts","./src/app/submission/evidence.component.html","./src/app/submission/form-error-list.component.ts","./src/app/submission/form-error-list.component.html","./src/app/submission/history-table.component.ts","./src/app/submission/history-table.component.html","./src/app/submission/level-and-verifier.component.ts","./src/app/submission/level-and-verifier.component.html","./src/app/submission/level-select-form.component.ts","./src/app/submission/level-select-form.component.html","./src/app/submission/statement-form.component.ts","./src/app/submission/statement-form.component.html","./src/app/submission/statement-list-form.component.ts","./src/app/submission/statement-list-form.component.html","./src/app/submission/submission-detail.component.ts","./src/app/submission/submission-detail.component.html","./src/app/submission/submission-routing.module.ts","./src/app/submission/submission.module.ts","./src/app/submission/summary-action-form.component.ts","./src/app/submission/summary-action-form.component.html","./src/app/submission/verifier-action-form.component.ts","./src/app/submission/verifier-action-form.component.html","./src/app/submission/verifier-select-form.component.ts","./src/app/submission/verifier-select-form.component.html","./src/environments/environment.demo.ts","./src/main.ts","./node_modules/moment/locale|sync|/^/.*$"],"sourcesContent":["import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n redirectTo: 'home',\r\n // redirectTo: 'login',\r\n pathMatch: 'full',\r\n },\r\n];\r\n\r\nconst inIFrame = window !== window.parent && window.opener;\r\n// https://stackoverflow.com/questions/9393532/cross-domain-iframe-issue\r\n\r\n@NgModule({\r\n imports: [\r\n // RouterModule.forRoot(routes, { initialNavigation: inIFrame ? 'disabled' : 'enabledNonBlocking', relativeLinkResolution: 'legacy' })\r\n // RouterModule.forRoot(routes, {enableTracing: true})\r\n RouterModule.forRoot(routes)\r\n ],\r\n exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule { }\r\n","import { Component, OnDestroy, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { NavigationCancel, NavigationEnd, NavigationError, NavigationStart, Router, RouterEvent } from '@angular/router';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport * as moment from 'moment';\r\n\r\nimport { Subscription } from 'rxjs';\r\nimport { filter } from 'rxjs/operators';\r\n\r\nimport { ExceptionTypes } from './core/exception.component';\r\n\r\nimport { AuthService } from './core/auth.service';\r\nimport { AlertService, AlertLevels, AlertData } from './core/alert.service';\r\nimport { ConfigService, LogLevel } from './core/config.service';\r\nimport { PersonService } from './person/person.service';\r\nimport { SpinnerService } from './controls/spinner.service';\r\n\r\nimport { Person } from './person/person';\r\nimport { SecurityRole } from './core/security-role';\r\nimport { GraphService } from './graph/graph.service';\r\nimport { formatPrefix } from 'd3';\r\nimport { MsalService, MsalBroadcastService } from '@azure/msal-angular';\r\nimport { EventMessage, EventType } from '@azure/msal-browser';\r\nimport { environment } from '../environments/environment';\r\nimport { Modal } from 'bootstrap';\r\n\r\n@Component({\r\n selector: 'app-root', // tslint:disable-line: component-selector\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.css'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class AppComponent implements OnDestroy, OnInit {\r\n\r\n displayContent = false;\r\n title: string;\r\n appVersion: string;\r\n logging: any;\r\n exceptionTypes = ExceptionTypes;\r\n isSignedIn = false;\r\n loading = false;\r\n inactiveTime = 0;\r\n timeoutModalVisible = false;\r\n\r\n exceptionData = {\r\n 'PERSON_UPN': {\r\n level: AlertLevels.ERROR,\r\n code: 'APC-001',\r\n message: 'Unable to retrieve user data'\r\n } as AlertData,\r\n 'USER_GROUP': {\r\n level: AlertLevels.ERROR,\r\n code: 'APC-003',\r\n message: 'Unable to retrieve user group info'\r\n } as AlertData,\r\n 'ADMIN_STATUS': {\r\n level: AlertLevels.ERROR,\r\n code: 'APC-004',\r\n message: 'Unable to retrieve user role info'\r\n } as AlertData,\r\n 'PERSON_UUID': {\r\n level: AlertLevels.ERROR,\r\n code: 'APC-005',\r\n message: 'Unable to retrieve user data'\r\n } as AlertData,\r\n 'SECURITY_ROLE': {\r\n level: AlertLevels.ERROR,\r\n code: 'APC-006',\r\n message: 'Unable to retrieve user security role'\r\n } as AlertData,\r\n 'PERSON_PHOTO': {\r\n level: AlertLevels.WARNING,\r\n code: 'APC-007',\r\n message: 'Unable to retrieve user photo'\r\n } as AlertData,\r\n };\r\n\r\n adminStatusSubs = new Subscription();\r\n authStatusSubs = new Subscription();\r\n personByUPNSubs = new Subscription();\r\n personByUUIDSubs = new Subscription();\r\n userGroupSubs = new Subscription();\r\n userPhotoSubs = new Subscription();\r\n appSubscriptions = new Subscription();\r\n\r\n copyrightDate = Date.now();\r\n\r\n appName = this.configService.title;\r\n clog = (msg, lvl) => { this.configService.logging.newMsg( msg, lvl); };\r\n\r\n constructor(\r\n private alertService: AlertService,\r\n public authService: AuthService,\r\n public msalService: MsalService,\r\n public msalBroadcastService: MsalBroadcastService,\r\n public configService: ConfigService,\r\n private graphService: GraphService,\r\n private personService: PersonService,\r\n private router: Router,\r\n private spinnerService: SpinnerService\r\n ) {\r\n this.router.events.subscribe(\r\n (event: RouterEvent) => {\r\n if (event instanceof NavigationStart) {\r\n this.loading = true;\r\n }\r\n if (event instanceof NavigationEnd || event instanceof NavigationCancel || event instanceof NavigationError) {\r\n this.loading = false;\r\n }\r\n }\r\n );\r\n this.authService.inactiveSecondsCount.pipe(\r\n // filter( inactiveSeconds => inactiveSeconds > 20 )\r\n )\r\n .subscribe(\r\n inactiveSeconds => {\r\n this.inactiveTime = inactiveSeconds;\r\n if (!this.timeoutModalVisible && this.inactiveTime > configService.inactivity_timeout_warning_seconds) {\r\n this.timeoutModalVisible = true;\r\n const timeoutModal = new Modal(document.getElementById('timeoutWarningModal'));\r\n timeoutModal.show();\r\n };\r\n if (this.inactiveTime > configService.inactivity_timeout_logout_seconds) {\r\n this.authService.timeoutLogout();\r\n }\r\n }\r\n );\r\n\r\n this.appSubscriptions.add(\r\n this.msalBroadcastService.msalSubject$.pipe(\r\n // filter((msg: EventMessage) => msg.eventType === EventType.LOGIN_SUCCESS)\r\n ).subscribe( (result) => {\r\n console.log(`MSAL Message: ${result.eventType}`);\r\n if (result.eventType === EventType.ACQUIRE_TOKEN_SUCCESS || result.eventType === EventType.LOGIN_SUCCESS) {\r\n // this.authService.isAuthenticated = true;\r\n // this.authService.inUserGroup = (this.authService.userInfo?.idTokenClaims['groups'] || []).some(\r\n // g => environment.userGroups.map( ug => {return ug.id}).includes(g)\r\n // );\r\n // this.authService.inUserGroup = true;\r\n this.authService.loginSucceeded();\r\n }\r\n })\r\n );\r\n }\r\n\r\n get spinnerInProgressUrls(): string {\r\n return this.spinnerService.inProgressUrls();\r\n }\r\n\r\n get inUserGroup(): boolean {\r\n return this.authService.inUserGroup;\r\n }\r\n\r\n get hasAdminRole(): boolean {\r\n return this.authService.hasAdminRole;\r\n }\r\n\r\n ngOnInit() {\r\n if (window !== window.parent && !window.opener) {\r\n // if (false) {\r\n this.clog('In iframe', 'INFO'); // For token refresh purposes, prevent multiple iframes from being created\r\n } else {\r\n this.spinnerService.reset();\r\n this.logging = this.configService.logging;\r\n this.title = this.configService.title;\r\n this.appVersion = this.configService.appVersion;\r\n this.authStatusSubs = this.authService.authenticationStatusSubj.subscribe(\r\n a => {\r\n this.clog('Auth Status:' + this.isSignedIn, 'VERBOSE');\r\n this.isSignedIn = a;\r\n }\r\n );\r\n this.userGroupSubs = this.authService.inUserGroupSubj.subscribe(\r\n g => {\r\n this.clog('User Group Member:' + g, 'VERBOSE');\r\n if (g) {\r\n // this.personByUUIDSubs = this.personService.getPersonByUUID( this.authService.userGUID)\r\n this.personByUUIDSubs = this.personService.getPersonByUPN(this.authService.userUPN)\r\n .subscribe(\r\n (person: Person) => {\r\n this.authService.storeUserPersonDetail(person);\r\n },\r\n (err: HttpErrorResponse) => {\r\n this.alertService.createAlert2(this.exceptionData['PERSON_UUID'], err);\r\n }\r\n );\r\n // this.appSubscriptions.add(\r\n // this.graphService.getUserPhoto( this.authService.userGUID)\r\n // .subscribe(\r\n // (photo) => {\r\n // this.authService.storeUserPhoto(photo);\r\n // },\r\n // (err: HttpErrorResponse) => {\r\n // // this.personPhotoFailure = true;\r\n // this.alertService.createAlert2(this.exceptionData['PERSON_PHOTO'], err);\r\n // }\r\n // )\r\n // );\r\n this.appSubscriptions.add(\r\n // this.personService.getPersonSecurityRole(this.authService.userGUID).subscribe(\r\n this.personService.getPersonSecurityRole(this.authService.userUPN).subscribe(\r\n (securityRole: SecurityRole) => {\r\n this.authService.storeUserSecurityRole(securityRole);\r\n this.authService.personSecurityRoleSubj.next(securityRole);\r\n },\r\n (err: HttpErrorResponse) => {\r\n this.alertService.createAlert2(this.exceptionData['SECURITY_ROLE'], err);\r\n }\r\n )\r\n );\r\n this.authService.populateSecurityRoles();\r\n } else {\r\n this.clog(`Not in user group, authenticated=${this.isSignedIn}`, LogLevel.VERBOSE);\r\n if (this.isSignedIn) {\r\n this.router.navigate(['exception', ExceptionTypes[ExceptionTypes.NOT_USER]]);\r\n }\r\n }\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.USER_GROUP, err);\r\n }\r\n );\r\n this.displayContent = true;\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.adminStatusSubs.unsubscribe();\r\n this.authStatusSubs.unsubscribe();\r\n this.personByUPNSubs.unsubscribe();\r\n this.personByUUIDSubs.unsubscribe();\r\n this.userGroupSubs.unsubscribe();\r\n this.userPhotoSubs.unsubscribe();\r\n this.appSubscriptions.unsubscribe();\r\n }\r\n\r\n onRouterOutletActivate(event: any) {\r\n this.configService.componentName = event.constructor.name;\r\n }\r\n\r\n logout() {\r\n this.authService.logout();\r\n }\r\n\r\n login() {\r\n this.authService.login();\r\n }\r\n\r\n diagClick(value) {\r\n this.authService.diagShow = value;\r\n }\r\n\r\n onInactivityDismiss() {\r\n this.authService.authTimeoutSubj.next(true);\r\n this.timeoutModalVisible = false;\r\n // this.authService.acquireToken();\r\n }\r\n\r\n getInactiveTimeDisplay(inactiveSeconds: number): string {\r\n return moment.duration(inactiveSeconds, 'seconds').humanize();\r\n }\r\n\r\n getTimeoutModalHeaderStyle(inactiveSeconds: number): string {\r\n return inactiveSeconds > (\r\n this.configService.inactivity_timeout_logout_seconds - this.configService.inactivity_timeout_countdown_seconds\r\n )\r\n ? 'bg-danger text-light'\r\n : 'bg-warning text-dark';\r\n }\r\n\r\n get inactivityMessage1(): string {\r\n return `No activity has been detected for ${this.getInactiveTimeDisplay(this.inactiveTime)}`;\r\n }\r\n\r\n get inactivityMessage2(): string {\r\n let inactivityMessage = null;\r\n if (this.inactiveTime > (\r\n this.configService.inactivity_timeout_logout_seconds - this.configService.inactivity_timeout_countdown_seconds\r\n )) {\r\n const timeUntilLogout = this.configService.inactivity_timeout_logout_seconds - this.inactiveTime;\r\n const timeUntilLogoutDisplay =\r\n timeUntilLogout > 60 ?\r\n this.getInactiveTimeDisplay(timeUntilLogout) :\r\n Math.max(0, timeUntilLogout) + ' seconds';\r\n inactivityMessage =\r\n `You will be automatically logged out in ${timeUntilLogoutDisplay}`;\r\n }\r\n return inactivityMessage;\r\n }\r\n\r\n get clientLogoAsset(): string {\r\n return this.configService.clientLogoAsset;\r\n }\r\n\r\n get navbarBgClass(): string {\r\n return this.configService.navbarBgClass;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
Inactivity Warning
\r\n
\r\n
\r\n

{{inactivityMessage1}}

\r\n

{{inactivityMessage2}}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n\r\n \r\n
\r\n

{{this.spinnerInProgressUrls}}

\r\n

Is Signed In = {{isSignedIn}}

\r\n

In User Group = {{inUserGroup}}

\r\n

Is Admin = {{hasAdminRole}}

\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n
","import { Injectable } from '@angular/core';\r\n\r\nimport { environment } from '../environments/environment';\r\n\r\n@Injectable()\r\nexport class AppConfig {\r\n apiServerUri: string;\r\n\r\n constructor( ) {\r\n // this.apiServerUri = 'https://hachyonics-a1.azurewebsites.net/esqep/api/v1.0';\r\n // this.apiServerUri = 'https://hachyonics-a2.azurewebsites.net/esqep/api/v1.0';\r\n this.apiServerUri = environment.apiUrl;\r\n }\r\n}\r\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { UrlSerializer } from '@angular/router';\r\n\r\nimport { MsalModule, MsalService, MsalGuard, MsalInterceptor, MsalBroadcastService, MsalRedirectComponent } from '@azure/msal-angular';\r\nimport { PublicClientApplication, InteractionType, BrowserCacheLocation, LogLevel } from '@azure/msal-browser';\r\n\r\nimport { LowerCaseUrlSerializer } from './core/lowercase-url-serializer';\r\n\r\nimport { AuthInterceptor } from './core/auth-interceptor';\r\nimport { SpinnerInterceptor } from './controls/spinner-interceptor';\r\nimport { TimeoutInterceptor } from './core/timeout.interceptor';\r\n// import { AuthGuard } from './auth.guard';\r\n\r\nimport { AppComponent } from './app.component';\r\n\r\nimport { AppConfig } from './app.config';\r\nimport { environment } from '../environments/environment';\r\n\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AssessorModule } from './assessor/assessor.module';\r\nimport { ClaimModule } from './claim/claim.module';\r\nimport { ControlsModule } from './controls/controls.module';\r\nimport { CoreModule } from './core/core.module';\r\nimport { DashboardModule } from './dashboard/dashboard.module';\r\nimport { GraphModule } from './graph/graph.module';\r\nimport { JobRoleModule } from './job-role/job-role.module';\r\nimport { OrgUnitModule } from './org-unit/org-unit.module';\r\nimport { PersonModule } from './person/person.module';\r\nimport { SkillModule } from './skill/skill.module';\r\nimport { SubmissionModule } from './submission/submission.module';\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n ],\r\n imports: [\r\n // INFO: https://docs.microsoft.com/en-us/azure/active-directory/develop/msal-compare-msal-js-and-adal-js\r\n MsalModule.forRoot(\r\n new PublicClientApplication(\r\n {\r\n auth: {\r\n clientId: environment.clientId,\r\n authority: 'https://login.microsoft.com/' + environment.tenantId,\r\n // redirectUri: window.location.origin + '/adresponse'\r\n redirectUri: window.location.origin,\r\n postLogoutRedirectUri: window.location.origin\r\n },\r\n cache: {\r\n cacheLocation: BrowserCacheLocation.LocalStorage,\r\n storeAuthStateInCookie: false\r\n },\r\n system: {\r\n loggerOptions: {\r\n loggerCallback: () => {},\r\n logLevel: LogLevel.Info,\r\n piiLoggingEnabled: false\r\n }\r\n }\r\n }\r\n ),\r\n {\r\n // interactionType: InteractionType.Redirect, // MSAL Guard Configuration\r\n interactionType: InteractionType.Popup, // MSAL Guard Configuration\r\n },\r\n {\r\n // interactionType: InteractionType.Redirect, // MSAL Interceptor Configuration\r\n interactionType: InteractionType.Popup, // MSAL Interceptor Configuration\r\n protectedResourceMap: new Map([\r\n ['https://graph.microsoft.com/v1.0/me', ['https://graph.microsoft.com/.default']],\r\n // ['https://api.myapplication.com/users/*', ['customscope.read']],\r\n // [environment.apiUrl + '/*', ['https://graph.microsoft.com/.default']],\r\n [environment.apiUrl + '/*', [environment.clientId + '/.default']], // INFO: https://stackoverflow.com/a/59868653\r\n ['http://localhost:4200/*', null]\r\n ]\r\n )\r\n }\r\n ),\r\n AssessorModule,\r\n BrowserModule,\r\n BrowserAnimationsModule,\r\n ClaimModule,\r\n ControlsModule,\r\n CoreModule,\r\n DashboardModule,\r\n FormsModule,\r\n HttpClientModule,\r\n // MsalModule.forRoot({clientID: environment.clientId}),\r\n OrgUnitModule,\r\n PersonModule,\r\n SkillModule,\r\n GraphModule,\r\n JobRoleModule,\r\n SubmissionModule,\r\n AppRoutingModule, // NEEDS TO BE FINAL IMPORT (after other modules that may have their own routing)\r\n ],\r\n providers: [\r\n AppConfig,\r\n // AuthGuard,\r\n {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: SpinnerInterceptor,\r\n multi: true,\r\n },\r\n {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: TimeoutInterceptor,\r\n multi: true,\r\n },\r\n {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: MsalInterceptor,\r\n // useClass: AuthInterceptor,\r\n multi: true,\r\n },\r\n MsalService,\r\n MsalGuard,\r\n MsalBroadcastService,\r\n {provide: UrlSerializer, useClass: LowerCaseUrlSerializer}\r\n ],\r\n bootstrap: [AppComponent, MsalRedirectComponent],\r\n exports: []\r\n})\r\nexport class AppModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\nconst routes: Routes = [];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class AssessorRoutingModule { }\r\n","import { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\r\nimport { FormControl, FormGroup } from '@angular/forms';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\n\r\nimport { AuthService } from '../core/auth.service';\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { AssessorService } from './assessor.service';\r\nimport { ConfigService } from '../core/config.service';\r\n\r\nimport { Assessor } from './assessor';\r\n\r\n@Component({\r\n selector: 'ug-assessor-select',\r\n templateUrl: './assessor-select.component.html',\r\n styleUrls: ['./assessor-select.component.css']\r\n})\r\nexport class AssessorSelectComponent implements OnChanges {\r\n private _fa: number;\r\n @Input() parentFormGroup: FormGroup;\r\n @Input() funcAreaId: number;\r\n @Input() selectedAssessor: Assessor;\r\n @Input() existingAssessor: Assessor;\r\n @Input() controlStatus = { disabled: false, reason: '' };\r\n @Input() selfVerified = false;\r\n\r\n assessorList: Array = [];\r\n\r\n savedFuncAreaId: number;\r\n\r\n orgUnitAssessorsOnly = new FormControl(\r\n {\r\n value: true,\r\n disabled: false\r\n }\r\n );\r\n\r\n exceptionData = {\r\n 'VERIFIER_FA_OU': {\r\n level: AlertLevels.ERROR,\r\n code: 'VSC-001',\r\n message: 'Unable to retrieve verifer data'\r\n } as AlertData,\r\n };\r\n\r\n clog = (msg, lvl) => { this.configService.logging.newMsg(msg, lvl); };\r\n\r\n constructor(\r\n private authService: AuthService,\r\n private alertService: AlertService,\r\n private assessorService: AssessorService,\r\n private configService: ConfigService,\r\n ) { }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (!this.funcAreaId || !this.authService.me.orgUnitId) { return; }\r\n if (this.savedFuncAreaId === this.funcAreaId) { return; }\r\n if (this.controlStatus.disabled) {\r\n this.orgUnitAssessorsOnly.disable();\r\n } else {\r\n this.orgUnitAssessorsOnly.enable();\r\n };\r\n this.savedFuncAreaId = this.funcAreaId;\r\n this.assessorService.getAssessorByFuncAreaOrgUnit(this.funcAreaId, this.authService.me.orgUnitId)\r\n .subscribe(\r\n (al: Array) => {\r\n this.assessorList = al.sort(\r\n (a, b) => {\r\n return a.personFamilyGivenName.toLocaleLowerCase().localeCompare(b.personFamilyGivenName.toLocaleLowerCase())\r\n }\r\n );\r\n },\r\n (err: HttpErrorResponse) => {\r\n this.alertService.createAlert2(this.exceptionData.VERIFIER_FA_OU, err);\r\n },\r\n () => {\r\n this.clog(`Got Assessors for FA:${this.funcAreaId}, OU:${this.authService.me.orgUnitId}`, 'VERBOSE');\r\n const currentVerifierFromList = this.assessorList.find( a => { return a.assessorId === this.selectedAssessor.assessorId; } );\r\n if (currentVerifierFromList) {this.orgUnitAssessorsOnly.setValue(currentVerifierFromList.inOrgBranch); }\r\n }\r\n );\r\n }\r\n\r\n onAssessorClick(idx: number, assessor: Assessor) {\r\n this.clog(`Clicked on assessor id: ${this.assessorList[idx].assessorId} ${this.assessorList[idx].personFamilyGivenName}`, 'VERBOSE');\r\n if (this.controlStatus.disabled) { return; }\r\n if (this.selectedAssessor.assessorId === assessor.assessorId) {\r\n this.parentFormGroup.get('verifier').reset();\r\n } else {\r\n this.parentFormGroup.get('verifier').setValue({\r\n assessorId: assessor.assessorId,\r\n personId: assessor.personId,\r\n funcAreaId: assessor.funcAreaId,\r\n funcAreaName: assessor.funcAreaName,\r\n funcAreaDescription: assessor.funcAreaDescription,\r\n inOrgBranch: assessor.inOrgBranch || true, // TODO: Not accurate default\r\n personFamilyGivenName: assessor.personFamilyGivenName,\r\n orgUnitName: assessor.orgUnitName || assessor['name'] // TODO: Change in API\r\n })\r\n this.parentFormGroup.get('verifier').markAsDirty();\r\n }\r\n if (assessor.assessorId === (this.existingAssessor || new Assessor()).assessorId) {\r\n this.parentFormGroup.get('verifier').markAsPristine();\r\n }\r\n}\r\n\r\n}\r\n","
\r\n
\r\n
\r\n Authorised Verifiers\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n Claims at this level will be automatically verified; No verifier is required to be specified\r\n
\r\n
\r\n \r\n
\r\n
{{controlStatus.reason}}
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Verifier NameOrg. UnitVerifier for Job Family
{{assessor.personFamilyGivenName}}{{assessor['name']}}{{assessor.funcAreaName}}
\r\n
\r\n
\r\n
\r\n
","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { AssessorRoutingModule } from './assessor-routing.module';\r\nimport { AssessorSelectComponent } from './assessor-select.component';\r\nimport { AssessorService } from './assessor.service';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n AssessorRoutingModule\r\n ],\r\n declarations: [AssessorSelectComponent],\r\n exports: [AssessorSelectComponent],\r\n providers: [AssessorService]\r\n})\r\nexport class AssessorModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { catchError, map } from 'rxjs/operators';\r\n\r\nimport { Assessor } from './assessor';\r\n\r\nimport { environment } from '../../environments/environment';\r\n\r\nconst apiServerUri = environment.apiUrl;\r\n\r\n@Injectable()\r\nexport class AssessorService {\r\n\r\n constructor( private http: HttpClient) { }\r\n\r\n getAssessor(assessorId: number): Observable {\r\n return this.http.get(\r\n `${apiServerUri}/assessor/${assessorId}`,\r\n ).pipe(\r\n map( resp => { return resp['assessor'] || {}; } ),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getAssessorByFuncAreaOrgUnit(funcArea: number, orgUnit: number): Observable> {\r\n return this.http.get(\r\n `${apiServerUri}/func-area/${funcArea}/org-unit/${orgUnit}/assessors`,\r\n ).pipe(\r\n map(resp => {return resp['funcAreaAssessor'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n}\r\n","export class Assessor {\r\n assessorId: number;\r\n personId: number;\r\n funcAreaId: number;\r\n funcAreaName: string;\r\n funcAreaDescription: string;\r\n inOrgBranch: boolean;\r\n personFamilyGivenName: string;\r\n orgUnitId: number;\r\n orgUnitName: string;\r\n}\r\n","import { Component, OnInit, Input, OnChanges, OnDestroy } from '@angular/core';\r\nimport { JobRoleRequirement } from 'app/job-role/job-role.service';\r\nimport { FormBuilder, FormGroup, FormArray, FormControl } from '@angular/forms';\r\nimport { ClaimService } from './claim.service';\r\nimport { ClaimLevel } from './claim-level';\r\nimport { Subscription } from 'rxjs';\r\nimport { AuthService } from 'app/core/auth.service';\r\n\r\n@Component({\r\n selector: 'ug-bulk-claim-grid',\r\n templateUrl: './bulk-claim-grid.component.html',\r\n styleUrls: ['./bulk-claim-grid.component.css']\r\n})\r\nexport class BulkClaimGridComponent implements OnChanges, OnDestroy, OnInit {\r\n\r\n @Input() bulkClaimContent: Array = [];\r\n @Input() bcgForm2: FormGroup;\r\n\r\n private bcgSubs: Subscription = new Subscription();\r\n bcgForm: FormGroup;\r\n levelCache = {}\r\n\r\n constructor(private fb: FormBuilder, private claimService: ClaimService, public authService: AuthService) {\r\n this.createForm();\r\n }\r\n\r\n ngOnInit() {\r\n this.bcgSubs.add(\r\n this.claimService.bulkClaimLevelCache.subscribe(\r\n lc => this.levelCache = lc\r\n )\r\n )\r\n }\r\n\r\n ngOnChanges() {\r\n // this.bcgForm.setControl('bulkClaims', this.fb.array(\r\n // this.bulkClaimContent.map(\r\n // (bc: JobRoleRequirement) => {\r\n // if (!this.levelCache[bc.disciplineId]) {\r\n // this.bcgSubs.add(\r\n // this.claimService.getFuncAreaClaimLevels(bc.disciplineId).subscribe(\r\n // (cl: Array) => this.levelCache[bc.disciplineId] = cl\r\n // )\r\n // )\r\n // }\r\n // return this.fb.group(\r\n // {\r\n // disciplineId: bc.disciplineId,\r\n // includeInScoring: false,\r\n // rating: [{value: -1, disabled: true}],\r\n // roleName: `${bc.disciplineName} / ${bc.skillName}`,\r\n // additionalComments: [{value: '', disabled: true}]\r\n // }\r\n // )\r\n // }\r\n // )\r\n // ))\r\n }\r\n\r\n ngOnDestroy() {\r\n this.bcgSubs.unsubscribe();\r\n }\r\n\r\n createForm() {\r\n this.bcgForm = this.fb.group( {bulkClaims: this.fb.array([])} );\r\n }\r\n\r\n onIncludeChange(controlIdx: number) {\r\n // const fg: FormControl = (this.bcgForm.get('bulkClaims') as FormArray).controls[controlIdx] as FormControl;\r\n const fg: FormControl = this.bcgForm2.controls[controlIdx] as FormControl;\r\n\r\n if (fg.get('includeInScoring').value) {\r\n fg.get('rating').enable();\r\n fg.get('additionalComments').enable();\r\n } else {\r\n fg.get('rating').disable();\r\n fg.get('additionalComments').disable();\r\n }\r\n\r\n // if ((this.bcgForm.get('bulkClaims') as FormArray).controls[controlIdx].get('includeInScoring') ) {\r\n // this.bcgForm.get('bulkClaims').value[controlIdx].get('rating').disable();\r\n // } else {\r\n // this.bcgForm.get('bulkClaims').value[controlIdx].get('rating').enable();\r\n // }\r\n }\r\n\r\n trackByFn(index: any, item: any) {\r\n return index;\r\n }\r\n}\r\n","
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n Description\r\n
\r\n
\r\n Include?\r\n
\r\n
\r\n Rating\r\n
\r\n
\r\n Additional comments\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n

{{rr.roleName}}

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
Level Cache
\r\n
{{levelCache | json}}
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit, OnDestroy } from '@angular/core';\r\nimport { ClaimService } from './claim.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'ug-bulk-claim-summary',\r\n templateUrl: './bulk-claim-summary.component.html',\r\n styleUrls: ['./bulk-claim-summary.component.css']\r\n})\r\nexport class BulkClaimSummaryComponent implements OnInit, OnDestroy {\r\n\r\n bcsSubs: Subscription = new Subscription();\r\n currDate = new Date();\r\n summaryData: any = {}\r\n\r\n constructor(private claimService: ClaimService, private router: Router) { }\r\n\r\n ngOnInit() {\r\n this.bcsSubs.add(\r\n this.claimService.bulkClaimSummary.subscribe(\r\n bcs => this.summaryData = bcs\r\n )\r\n )\r\n }\r\n\r\n ngOnDestroy() {\r\n this.bcsSubs.unsubscribe();\r\n }\r\n\r\n get majorCount(): number {\r\n return this.summaryData['bulkClaims'] ? (this.summaryData['bulkClaims'].filter(bc => bc.rating === '1')).length : 0;\r\n }\r\n\r\n get minorCount(): number {\r\n return this.summaryData['bulkClaims'] ? (this.summaryData['bulkClaims'].filter(bc => bc.rating === '2')).length : 0;\r\n }\r\n\r\n get passCount(): number {\r\n return this.summaryData['bulkClaims'] ? (this.summaryData['bulkClaims'].filter(bc => bc.rating === '3')).length : 0;\r\n }\r\n\r\n getRatingStyle(rating: string) {\r\n if (rating === '1') {\r\n return 'bg-danger'\r\n } else if (rating === '2') {\r\n return 'bg-warning'\r\n } else if (rating === '3') {\r\n return 'bg-success'\r\n } else {\r\n return ''\r\n }\r\n }\r\n\r\n exitClick() {\r\n this.router.navigate(['/performance-management'])\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n
Skills Observation Coaching Form
\r\n
\r\n
\r\n
Name:
\r\n
{{summaryData?.personName}}
\r\n
Observer:
\r\n
{{summaryData?.observerName}}
\r\n
Date:
\r\n
{{currDate | date: 'dd/MM/yyyy'}}
\r\n
\r\n
\r\n
CRM Ref:
\r\n
{{summaryData?.crmRef}}
\r\n
Insurer:
\r\n
{{summaryData.insurer}}
\r\n
Mature/Rookie:
\r\n
{{summaryData.matureRookie}}
\r\n
\r\n
\r\n
Major
\r\n
Minor
\r\n
Pass
\r\n
\r\n
\r\n
{{majorCount}}
\r\n
{{minorCount}}
\r\n
{{passCount}}
\r\n
\r\n
\r\n
\r\n
{{bc.roleName}}
\r\n
Delivery Score
\r\n
{{bc.rating}}
\r\n
{{bc.includeInScoring ? 'Included' : 'Not Included'}}
\r\n
\r\n
\r\n
\r\n

{{bc.additionalComments}}

\r\n
\r\n
\r\n
\r\n
\r\n
Observer comments:
\r\n
{{summaryData?.observerComments}}
\r\n
\r\n
\r\n
SMART Objectives:
\r\n
{{summaryData?.smartObjectives?.one}}
\r\n
{{summaryData?.smartObjectives?.two}}
\r\n
{{summaryData?.smartObjectives?.three}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit, OnDestroy, Input } from '@angular/core';\r\n\r\nimport { JobRoleService, JobRole, JobRoleRequirement } from '../job-role/job-role.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { FormGroup, FormControl, FormArray, FormBuilder } from '@angular/forms';\r\nimport { AuthService } from 'app/core/auth.service';\r\nimport { Person } from 'app/person/person';\r\nimport { PersonService } from 'app/person/person.service';\r\nimport { ClaimService } from './claim.service';\r\nimport { Router } from '@angular/router';\r\nimport { ClaimLevel } from './claim-level';\r\n\r\n@Component({\r\n selector: 'ug-bulk-claim',\r\n templateUrl: './bulk-claim.component.html',\r\n styleUrls: ['./bulk-claim.component.css']\r\n})\r\n\r\nexport class BulkClaimComponent implements OnDestroy, OnInit {\r\n \r\n @Input() jobRoleId: number = 46;\r\n\r\n bulkClaimSubs = new Subscription();\r\n roles: Array = [];\r\n people: Array = [];\r\n\r\n selectedRole: JobRole;\r\n requirements: Array = [];\r\n levelCache = {}\r\n\r\n roleSelectForm = new FormGroup(\r\n {\r\n role: new FormControl({value: -1}),\r\n person: new FormControl(-1),\r\n personName: new FormControl(''),\r\n observerName: new FormControl(this.authService.me.displayName),\r\n observerComments: new FormControl(''),\r\n matureRookie: new FormControl('Mature'),\r\n crmRef: new FormControl(''),\r\n insurer: new FormControl(''),\r\n smartObjectives: new FormGroup(\r\n {\r\n one: new FormControl(''),\r\n two: new FormControl(''),\r\n three: new FormControl('')\r\n }\r\n )\r\n }\r\n )\r\n\r\n constructor(\r\n private claimService: ClaimService,\r\n private jobRoleService: JobRoleService,\r\n private personService: PersonService,\r\n public authService: AuthService,\r\n private fb: FormBuilder,\r\n private router: Router\r\n ) { }\r\n\r\n\r\n\r\n ngOnInit() {\r\n this.bulkClaimSubs.add(\r\n this.jobRoleService.getJobRoles().subscribe(\r\n (jr: Array) => {\r\n this.roles = jr;\r\n this.roleSelectForm.get('role').setValue(this.jobRoleId);\r\n }\r\n )\r\n )\r\n\r\n this.bulkClaimSubs.add(\r\n this.personService.getPersonList().subscribe(\r\n (ppl: Array) => {\r\n this.people = ppl;\r\n }\r\n )\r\n )\r\n\r\n this.bulkClaimSubs.add(\r\n this.roleSelectForm.get('role').valueChanges.subscribe(\r\n (rIdx: number) => {\r\n if (rIdx > -1) {\r\n this.requirements = this.roles[rIdx].requirements;\r\n this.selectedRole = this.roles[rIdx];\r\n\r\n this.roleSelectForm.setControl('bulkClaims', this.fb.array(\r\n this.requirements.map(\r\n (bc: JobRoleRequirement) => {\r\n if (!this.levelCache[bc.disciplineId]) {\r\n this.bulkClaimSubs.add(\r\n this.claimService.getFuncAreaClaimLevels(bc.disciplineId).subscribe(\r\n (cl: Array) => {\r\n this.levelCache[bc.disciplineId] = cl;\r\n this.claimService.bulkClaimLevelCache.next(this.levelCache);\r\n }\r\n )\r\n )\r\n }\r\n return this.fb.group(\r\n {\r\n disciplineId: bc.disciplineId,\r\n includeInScoring: false,\r\n rating: [{value: -1, disabled: true}],\r\n roleName: `${bc.disciplineName} / ${bc.skillName}`,\r\n additionalComments: [{value: '', disabled: true}]\r\n }\r\n )\r\n }\r\n )\r\n ))\r\n }\r\n\r\n }\r\n )\r\n )\r\n\r\n this.bulkClaimSubs.add(\r\n this.roleSelectForm.get('person').valueChanges.subscribe(\r\n p => this.roleSelectForm.get('personName').setValue(this.people.find(person => person.id === Number(p)).displayName)\r\n )\r\n )\r\n\r\n }\r\n\r\n ngOnDestroy() {\r\n this.bulkClaimSubs.unsubscribe();\r\n }\r\n\r\n getRoleId(roleIdx: number): number {\r\n return roleIdx > -1 ? this.roles[roleIdx].id : -1;\r\n }\r\n\r\n onSubmitClick() {\r\n this.claimService.bulkClaimSummary.next(this.roleSelectForm.value);\r\n this.router.navigate(['mydata/claims/bulk/summary']);\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
Create Bulk Claim
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
Selected Role
\r\n
{{selectedRole | json}}
\r\n
\r\n
\r\n
\r\n 0\" [bulkClaimContent]=\"requirements\" [bcgForm2]=\"roleSelectForm.get('bulkClaims')\">\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
Form Data
\r\n
{{roleSelectForm.value | json}}
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
","export class ClaimAction {\r\n claimStatusActionSetId: number;\r\n id: number;\r\n name: string;\r\n description: string;\r\n resultingClaimStatus: string;\r\n resultingClaimStatusId: number;\r\n requireEvidence: boolean;\r\n}\r\n","import { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { ClaimService } from './claim.service';\r\nimport { AuthService } from 'app/core/auth.service';\r\n\r\n@Component({\r\n selector: 'esqep-claim-activity-summary', // tslint:disable-line: component-selector\r\n templateUrl: './claim-activity-summary.component.html',\r\n styleUrls: ['./claim-activity-summary.component.scss']\r\n})\r\nexport class ClaimActivitySummaryComponent implements OnDestroy, OnInit {\r\n\r\n subscriptions = new Subscription;\r\n claimActivitySummary: Array = [];\r\n claimantActivitySummary: Array = [];\r\n verifierActivitySummary: Array = [];\r\n isLoading = true;\r\n\r\n categoryItemCountMessageMap = {\r\n '=0': '0 items',\r\n '=1': '1 item',\r\n 'other': '# items'\r\n };\r\n\r\n constructor(private authService: AuthService, private claimService: ClaimService, private router: Router) { }\r\n\r\n ngOnInit() {\r\n this.subscriptions.add(\r\n this.authService.userDetailSubj.subscribe(\r\n p => {\r\n if (p.id) {\r\n this.getClaimActivitySummary();\r\n }\r\n }\r\n )\r\n )\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.unsubscribe();\r\n }\r\n onNewSubmissionClick() {\r\n this.router.navigate(['/claim/new']);\r\n }\r\n\r\n onActivitySummaryItemClick(itemIndex: number) {\r\n this.claimService.activityListData = this.claimActivitySummary[itemIndex];\r\n this.router.navigate(['/submissions', this.claimActivitySummary[itemIndex]['categoryCode']]);\r\n }\r\n\r\n onRefreshClick() {\r\n this.claimActivitySummary = [];\r\n this.getClaimActivitySummary();\r\n }\r\n\r\n getClaimActivitySummary() {\r\n this.isLoading = true;\r\n this.subscriptions.add(\r\n this.claimService.getClaimActivitySummary(this.authService.me.id).subscribe(\r\n (cas: Array) => {\r\n cas.sort( (a, b) => { return a['categorySortOrder'] - b['categorySortOrder']});\r\n this.claimantActivitySummary = []\r\n this.verifierActivitySummary = []\r\n this.claimActivitySummary = cas;\r\n this.claimActivitySummary.forEach(\r\n (e, i) => {\r\n if (e['categoryForClaimant']) {\r\n this.claimantActivitySummary.push({...e, 'index': i})\r\n }\r\n }\r\n )\r\n // this.verifierActivitySummary = this.claimActivitySummary.map(\r\n // (e, i) => { if (e['categoryForClaimant']) {return {...e, 'index': i}}}\r\n // )\r\n this.claimActivitySummary.forEach(\r\n (e, i) => {\r\n if (!e['categoryForClaimant']) {\r\n this.verifierActivitySummary.push({...e, 'index': i})\r\n }\r\n }\r\n )\r\n this.isLoading = false;\r\n }\r\n )\r\n );\r\n }\r\n\r\n}\r\n","\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'claimActor'\r\n})\r\nexport class ClaimActorPipe implements PipeTransform {\r\n\r\n transform(value: string, args?: any): string {\r\n let actorName = '';\r\n switch (value) {\r\n case 'A':\r\n actorName = 'Verifier';\r\n break;\r\n case 'C':\r\n actorName = 'Claimant';\r\n break;\r\n case 'S':\r\n actorName = 'Auto-Verifier';\r\n break;\r\n default:\r\n actorName = 'Unknown';\r\n }\r\n return actorName;\r\n }\r\n\r\n}\r\n","import { Injectable, OnDestroy } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivate, NavigationExtras, Router, RouterStateSnapshot } from '@angular/router';\r\n\r\nimport { Observable, of, Subscription, throwError } from 'rxjs';\r\nimport { catchError, mergeMap } from 'rxjs/operators';\r\n\r\nimport { AlertService, AlertData, AlertLevels } from 'app/core/alert.service';\r\nimport { AuthService } from '../core/auth.service';\r\nimport { Logger, LogLevel } from '../core/config.service';\r\nimport { ClaimService } from './claim.service';\r\nimport { PersonService } from 'app/person/person.service';\r\n\r\n@Injectable()\r\nexport class ClaimDetailGuard implements CanActivate, OnDestroy {\r\n\r\n subscriptions: Subscription = new Subscription();\r\n\r\n exceptionData = {\r\n 'PERSON_BY_GUID': {\r\n level: AlertLevels.ERROR,\r\n code: 'CDG-001',\r\n message: 'Error retrieving user details'\r\n } as AlertData,\r\n 'IS_CLAIMANT': {\r\n level: AlertLevels.ERROR,\r\n code: 'CDG-002',\r\n message: 'Error validating user as claimant'\r\n } as AlertData,\r\n 'IS_VERIFIER': {\r\n level: AlertLevels.ERROR,\r\n code: 'CDG-003',\r\n message: 'Error validating user as verifier'\r\n } as AlertData,\r\n };\r\n\r\n constructor(\r\n private alertService: AlertService,\r\n private authService: AuthService,\r\n private claimService: ClaimService,\r\n private personService: PersonService,\r\n private router: Router\r\n ) { }\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable {\r\n\r\n const navigationExtras: NavigationExtras = {\r\n queryParams: { 'redirectUrl': route.url}\r\n };\r\n\r\n // Logger(`claim-detail-guard: route.params.claimId=${route.params.claimId} user.oid=${this.authService.userGUID}`, LogLevel.VERBOSE);\r\n\r\n if (route.url[0].path !== 'claim') {\r\n this.router.navigate(['/home']);\r\n return of(false);\r\n }\r\n if (!route.params['claimId']) {\r\n return of(true);\r\n }\r\n if (!this.authService.isAuthenticated) {\r\n return of(false);\r\n }\r\n\r\n const personFromUUID = this.personService.getPersonByUUID(this.authService.userGUID).pipe(\r\n catchError( err => { return throwError(err); })\r\n );\r\n const userIsVerifier = personFromUUID.pipe(\r\n mergeMap( person => {\r\n return this.claimService.isClaimAssessor(route.params.claimId, person.id);\r\n }\r\n ),\r\n catchError( err => {\r\n return throwError(err); }\r\n )\r\n );\r\n const userIsClaimant = personFromUUID.pipe(\r\n mergeMap( person => {\r\n return this.claimService.isClaimClaimant(route.params.claimId, person.id);\r\n }\r\n ),\r\n catchError( err => {\r\n return throwError(err); }\r\n )\r\n );\r\n\r\n if ( route.url[2].path === 'assessor') {\r\n this.subscriptions.add(\r\n userIsVerifier.subscribe(\r\n isAllowed => {\r\n if (!isAllowed) {\r\n Logger(`Not authorised to view Claim Id:${route.params.claimId} as verifier`, LogLevel.INFO);\r\n this.router.navigate(['/exception/not_auth']);\r\n }\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.IS_VERIFIER, err);\r\n }\r\n )\r\n );\r\n return userIsVerifier;\r\n } else if ( route.url[2].path === 'claimant') {\r\n this.subscriptions.add(\r\n userIsClaimant.subscribe(\r\n isAllowed => {\r\n if (!isAllowed) {\r\n Logger(`Not authorised to view Claim Id:${route.params.claimId} as claimant`, LogLevel.INFO);\r\n this.router.navigate(['/exception/not_auth']);\r\n }\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.IS_CLAIMANT, err);\r\n }\r\n )\r\n );\r\n return userIsClaimant;\r\n } else {\r\n this.router.navigate(['/home']);\r\n return of(false);\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.unsubscribe();\r\n }\r\n\r\n}\r\n","import { Component, Input, OnChanges, OnDestroy } from '@angular/core';\r\nimport { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';\r\n\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { ApiException } from '../core/api-exception';\r\n\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { ClaimService } from './claim.service';\r\n\r\n\r\n@Component({\r\n selector: 'ug-claim-document',\r\n templateUrl: './claim-document.component.html',\r\n styleUrls: ['./claim-document.component.css']\r\n})\r\nexport class ClaimDocumentComponent implements OnChanges, OnDestroy {\r\n\r\n/* JB 20170626 - Begin\r\n** Attempt to force onchanges() when reclick view in IE/Edge */\r\n private _claimId: number;\r\n private _docId: number;\r\n\r\n @Input() set claimId(value) {\r\n this._claimId = value;\r\n }\r\n @Input() set docId(value) {\r\n this._docId = value;\r\n }\r\n get claimId() {\r\n return this._claimId;\r\n }\r\n get docId() {\r\n return this._docId;\r\n }\r\n/* JB 20170626 - End */\r\n\r\n showDoc = false;\r\n showImg = false;\r\n isMS = false;\r\n dataSrc: SafeResourceUrl;\r\n fileUrl: SafeResourceUrl;\r\n fileType: string;\r\n\r\n exceptionData = {\r\n 'CLAIM_DOC': {\r\n level: AlertLevels.ERROR,\r\n code: 'CDC-001',\r\n message: 'Error retrieving claim document'\r\n } as AlertData,\r\n };\r\n\r\n claimDocSubs = new Subscription();\r\n\r\n constructor( private alertService: AlertService, private claimService: ClaimService, private sanitizer: DomSanitizer) { }\r\n\r\n ngOnChanges() {\r\n console.log('Doc Id = ' + this.docId);\r\n if (!this.docId && !this.claimId) { return; }\r\n this.dataSrc = this.sanitizer.bypassSecurityTrustResourceUrl(this.claimService.getClaimDocUrl(this.claimId, this.docId));\r\n\r\n this.claimDocSubs = this.claimService.getClaimDoc(this.claimId, this.docId)\r\n .subscribe(\r\n (cd) => {\r\n let tempUrl = '';\r\n const blob = new Blob([cd], {type: cd.type});\r\n this.fileType = blob.type;\r\n if (blob.type === 'application/pdf' || blob.type === 'application/msword') {\r\n this.showImg = false;\r\n // if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n // window.navigator.msSaveOrOpenBlob(blob);\r\n // this.isMS = true;\r\n // } else {\r\n // tempUrl = window.URL.createObjectURL(blob);\r\n // this.isMS = false;\r\n // }\r\n tempUrl = window.URL.createObjectURL(blob);\r\n this.isMS = false;\r\n } else if (blob.type === 'image/jpeg' || blob.type === 'image/png') {\r\n this.showImg = true;\r\n tempUrl = window.URL.createObjectURL(blob);\r\n }\r\n // if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n // window.navigator.msSaveOrOpenBlob(blob);\r\n // } else {\r\n // tempUrl = window.URL.createObjectURL(blob);\r\n // // var objectUrl = URL.createObjectURL(blob);\r\n // // window.open(objectUrl);\r\n // }\r\n // const tempUrl = window.URL.createObjectURL(blob);\r\n console.log('Temp URL = ' + tempUrl);\r\n this.fileUrl = this.sanitizer.bypassSecurityTrustResourceUrl(tempUrl);\r\n console.log('Sanitized URL = ' + this.fileUrl);\r\n // const jReader = new FileReader();\r\n // jReader.addEventListener('loadend', function() {\r\n // const dataSrc = jReader.result.toString();\r\n // console.log(dataSrc);\r\n // // setDataSrc(dataSrc);\r\n // localStorage.setItem('myDoc', JSON.stringify(dataSrc));\r\n // });\r\n // jReader.readAsDataURL(blob);\r\n // console.log('dummy');\r\n },\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.CLAIM_DOC, err);\r\n },\r\n () => {\r\n console.log('Got Document');\r\n this.showDoc = !this.isMS;\r\n this.docId = undefined;\r\n }\r\n // this.dataSrc = this.sanitizer.bypassSecurityTrustResourceUrl(JSON.parse(localStorage.get('myDoc')));\r\n // console.log(this.dataSrc); }\r\n );\r\n// https://stackoverflow.com/questions/22938194/xmlhttp-request-is-raising-an-access-denied-error\r\n\r\n }\r\n\r\n ngOnDestroy() {\r\n this.claimDocSubs.unsubscribe();\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
Document preview
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
Unable to display PDF document inline
\r\n

The selected document will be opened in your default PDF viewer.

\r\n

\r\n If you are using the Microsoft Edge browser your default PDF viewer may also be Edge. \r\n In this case choose Open to view the file in a new tab or Save to save to disk and then open with an alternative PDF viewer.\r\n

\r\n
\r\n

To view PDF documents inline use an alternative browser such as Firefox or Chrome

\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, Input, OnChanges, OnDestroy } from '@angular/core';\r\n\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { ClaimService } from './claim.service';\r\n\r\nimport { ApiException } from '../core/api-exception';\r\nimport { ClaimDocument } from './claim-document';\r\n\r\n@Component({\r\n selector: 'ug-claim-file-list',\r\n templateUrl: './claim-file-list.component.html',\r\n styleUrls: ['./claim-file-list.component.css']\r\n})\r\nexport class ClaimFileListComponent implements OnChanges, OnDestroy {\r\n\r\n @Input() claimId: number;\r\n claimDocumentList: Array;\r\n // dataSrc: SafeResourceUrl;\r\n showDoc = false;\r\n selectedDocIdx: number = -1;\r\n docClaimId: number;\r\n docDocId: number;\r\n isMS = false;\r\n\r\n exceptionData = {\r\n 'CLAIM_DOCS': {\r\n level: AlertLevels.ERROR,\r\n code: 'CFL-001',\r\n message: 'Error retrieving claim documents'\r\n } as AlertData,\r\n };\r\n\r\n claimDocSubs = new Subscription();\r\n\r\n constructor(private alertService: AlertService, private claimService: ClaimService ) {\r\n // if ( window.navigator && window.navigator.msSaveOrOpenBlob ) { this.isMS = true; }\r\n }\r\n\r\n ngOnChanges() {\r\n if (!this.claimId) { return; }\r\n this.claimDocSubs = this.claimService.getClaimDocs(this.claimId)\r\n .subscribe(\r\n (cd) => this.claimDocumentList = cd,\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.CLAIM_DOCS, err);\r\n }\r\n );\r\n\r\n }\r\n\r\n onViewClick(claimId: number, docId: number, docIdx: number) {\r\n this.docClaimId = claimId;\r\n this.docDocId = docId;\r\n this.selectedDocIdx = docIdx;\r\n }\r\n\r\n onHideClick( docId: number) {\r\n this.showDoc = false;\r\n this.selectedDocIdx = -1;\r\n }\r\n\r\n ngOnDestroy() {\r\n this.claimDocSubs.unsubscribe();\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
Attached Documents
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Date / TimeFilenameDocument Actions
No documents have been uploaded for this claim
{{claimDocument.createDatetime | date:'medium'}}{{claimDocument.filename}}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n","import { Component, Input, OnChanges, OnDestroy } from '@angular/core';\r\n\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { ClaimService } from './claim.service';\r\n\r\nimport { ApiException } from '../core/api-exception';\r\nimport { Claim } from '../claim/claim';\r\nimport { ClaimHistory } from './claim-history';\r\n\r\n@Component({\r\n selector: 'ug-claim-history',\r\n templateUrl: './claim-history.component.html',\r\n styleUrls: ['./claim-history.component.css']\r\n})\r\nexport class ClaimHistoryComponent implements OnChanges, OnDestroy {\r\n\r\n @Input() claimHistoryList: Array;\r\n @Input() claim: Claim;\r\n @Input() claimRowVersion: number; // Force change detection to run after claim update\r\n\r\n exceptionData = {\r\n 'CLAIM_HISTORY': {\r\n level: AlertLevels.ERROR,\r\n code: 'CHI-001',\r\n message: 'Error retrieving claim history'\r\n } as AlertData,\r\n };\r\n\r\n claimHistorySubs = new Subscription();\r\n\r\n constructor(private alertService: AlertService, private claimService: ClaimService) { }\r\n\r\n ngOnChanges() {\r\n if (this.claim && this.claim['id']) {\r\n this.claimHistorySubs = this.claimService.getClaimHistory(this.claim.id)\r\n .subscribe(\r\n (ch) => this.claimHistoryList = ch,\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.CLAIM_HISTORY, err);\r\n }\r\n );\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.claimHistorySubs.unsubscribe();\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
Claim History
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Date / TimeStatusUpdated byActing asComment
{{claimHistory.updateDatetime | date:'medium'}}{{claimHistory.statusText}}{{claimHistory.updatePersonFamilyGivenName}}\r\n {{claimHistory.initiatorType | claimActor }}{{claimHistory.comment}}
\r\n
\r\n
\r\n
\r\n","export class ClaimLevel {\r\n id: number;\r\n name: string;\r\n description: string;\r\n levelCode: string;\r\n selfAssessed: boolean;\r\n claimLevelSetId: number;\r\n sortOrder: number;\r\n approvalLevel: number;\r\n}\r\n","import { Component, Input, OnChanges, OnDestroy, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormControl, FormGroup } from '@angular/forms'\r\nimport { Router } from '@angular/router';\r\n\r\n// import { Moment } from 'moment';\r\nimport * as moment from 'moment';\r\n\r\nimport { Subscription, Observable, of } from 'rxjs';\r\n\r\nimport { Claim } from './claim';\r\n\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { AuthService } from 'app/core/auth.service';\r\nimport { ClaimService } from './claim.service';\r\nimport { finalize } from 'rxjs/operators';\r\n\r\n\r\nconst ALL_TEXT = '';\r\n\r\n@Component({\r\n selector: 'ug-claim-list',\r\n templateUrl: './claim-list.component.html',\r\n styleUrls: ['./claim-list.component.scss']\r\n})\r\nexport class ClaimListComponent implements OnChanges, OnDestroy, OnInit {\r\n\r\n isLoading = true;\r\n @Input() cardTitle = 'Claims List';\r\n @Input()\r\n personId: number;\r\n @Input()\r\n assessorPersonId: number;\r\n // @Input()\r\n // claimMetaStatus: string;\r\n claimList: Array;\r\n\r\n compDimensionLookup = {\r\n APPLICATION: 'Skill',\r\n KNOWLEDGE: 'Knowledge'\r\n };\r\n\r\n filtersEnabled = false;\r\n filterListStatus = [];\r\n filterListLevel = [];\r\n filterListAssessor = [];\r\n filterListClaimant = [];\r\n filterListCompDimension: Array = [];\r\n filterListIntervals: Array<{intervalName: string, offsetValue: moment.Moment }> = [];\r\n\r\n filterControls: FormGroup;\r\n\r\n verifierView = false;\r\n get claimantView(): boolean {\r\n return !this.verifierView;\r\n }\r\n\r\n exceptionData = {\r\n 'CLAIM': {\r\n level: AlertLevels.ERROR,\r\n code: 'CLS-001',\r\n message: 'Error retrieving claim'\r\n } as AlertData,\r\n };\r\n\r\n claimsSubs = new Subscription();\r\n\r\n constructor(\r\n private alertService: AlertService,\r\n private authService: AuthService,\r\n private claimService: ClaimService,\r\n private fb: FormBuilder,\r\n private router: Router\r\n ) {\r\n this.createFilterControls();\r\n this.buildFilterListIntervals();\r\n }\r\n\r\n createFilterControls() {\r\n this.filterControls = this.fb.group(\r\n {\r\n actionedDateRange: [null],\r\n createDateRange: [null],\r\n compDimension: [null],\r\n status: [null],\r\n level: [null],\r\n counterparty: [null]\r\n }\r\n );\r\n }\r\n\r\n buildFilterListIntervals() {\r\n this.filterListIntervals.push({\r\n intervalName: 'last week',\r\n offsetValue: moment(0, 'HH').subtract(1, 'weeks')\r\n });\r\n this.filterListIntervals.push({\r\n intervalName: 'last 2 weeks',\r\n offsetValue: moment(0, 'HH').subtract(2, 'weeks')\r\n });\r\n this.filterListIntervals.push({\r\n intervalName: 'last month',\r\n offsetValue: moment(0, 'HH').subtract(1, 'months')\r\n });\r\n this.filterListIntervals.push({\r\n intervalName: 'last 6 months',\r\n offsetValue: moment(0, 'HH').subtract(6, 'months')\r\n });\r\n this.filterListIntervals.push({\r\n intervalName: 'last year',\r\n offsetValue: moment(0, 'HH').subtract(1, 'years')\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n if (!this.claimService.activityListData) {\r\n this.router.navigate(['/home']);\r\n }\r\n this.cardTitle = this.claimService.activityListData['categoryName']\r\n this.claimList = this.claimService.activityListData['claimList'].sort(\r\n (a, b) => {\r\n const aHasNotification = this.hasNotification(a);\r\n const bHasNotification = this.hasNotification(b);\r\n let returnValue = 0;\r\n if ( aHasNotification && !bHasNotification ) {\r\n returnValue = -1;\r\n } else if (!aHasNotification && bHasNotification) {\r\n returnValue = 1;\r\n } else {\r\n returnValue = a.id - b.id;\r\n }\r\n return returnValue;\r\n }\r\n );\r\n this.verifierView = ['VERIFY', 'VERIFIED'].includes(this.claimService.activityListData['categoryCode']);\r\n this.personId = this.authService.me.id;\r\n this.buildFilterLists(this.claimList);\r\n this.isLoading = false;\r\n }\r\n\r\n ngOnChanges() {}\r\n\r\n onClaimDetailClick(selectedAssessorPersonId: number, selectedPersonId: number, claim: Claim) {\r\n console.log(`Claim Clicked: Assessor Person Id=${selectedAssessorPersonId}, Person Id=${selectedPersonId}, Claim Id=${claim.id}`);\r\n let notificationObs: Observable;\r\n if (this.hasNotification(claim)) {\r\n notificationObs = this.claimService.clearClaimNotifications(claim.id, this.personId, this.verifierView ? 'C' : 'A');\r\n } else {\r\n notificationObs = of(null);\r\n }\r\n this.claimsSubs.add(\r\n notificationObs\r\n .pipe(\r\n finalize(\r\n () => {\r\n if (this.verifierView) {\r\n this.router.navigate(['/claim', claim.id, 'assessor']);\r\n } else {\r\n this.router.navigate(['/claim', claim.id, 'claimant']);\r\n }\r\n }\r\n )\r\n )\r\n .subscribe(\r\n () => {\r\n this.removeFromNotificationList(claim.id);\r\n },\r\n (err) => {}\r\n )\r\n );\r\n }\r\n\r\n private removeFromNotificationList(claimId: number) {\r\n const notificationIndex = this.claimService.activityListData['notificationClaimIdList'].findIndex(\r\n n => {\r\n return n['claimId'] === claimId;\r\n }\r\n );\r\n if (notificationIndex !== -1) {\r\n this.claimService.activityListData['notificationClaimIdList'].splice(notificationIndex, 1);\r\n }\r\n }\r\n\r\n addClaim(personId: number) {\r\n this.router.navigate(['/claim']);\r\n }\r\n\r\n buildFilterLists(claimList: Array) {\r\n // this.filterListStatus = [...new Set(claimList.map(item => item.statusText))];\r\n this.filterListStatus = this.makeSet(claimList.map(item => item.statusText));\r\n this.filterListStatus.sort();\r\n\r\n // this.filterListLevel = [...new Set(claimList.map(item => item.claimLevelName))];\r\n this.filterListLevel = this.makeSet(claimList.map(item => item.claimLevelName));\r\n this.filterListLevel.sort();\r\n\r\n // this.filterListAssessor = [...new Set(claimList.map(item => item.assessorName))];\r\n this.filterListAssessor = this.makeSet(claimList.map(item => item.assessorName));\r\n this.filterListAssessor.sort();\r\n\r\n // this.filterListClaimant = [...new Set(claimList.map(item => item.claimantName))];\r\n this.filterListClaimant = this.makeSet(claimList.map(item => item.claimantName));\r\n this.filterListClaimant.sort();\r\n\r\n this.filterListCompDimension = this.makeSet(claimList.map(item => item.competencyDimensionName));\r\n // this.filterListCompDimension = this.makeSet(claimList.map(\r\n // item => this.compDimensionLookup[item.competencyDimension] || item.competencyDimension)\r\n // );\r\n this.filterListCompDimension.sort();\r\n }\r\n\r\n showClaim(claim: Claim) {\r\n return (\r\n !this.filtersEnabled ||\r\n (!this.filterControls.get('level').value || this.filterControls.get('level').value === claim.claimLevelName) &&\r\n (!this.filterControls.get('status').value || this.filterControls.get('status').value === claim.statusText) &&\r\n (!this.filterControls.get('counterparty').value ||\r\n (this.claimantView && this.filterControls.get('counterparty').value === claim.assessorName) ||\r\n (this.verifierView && this.filterControls.get('counterparty').value === claim.claimantName)\r\n ) &&\r\n (\r\n !this.filterControls.get('createDateRange').value ||\r\n !claim.createDatetime ||\r\n this.filterControls.get('createDateRange').value.format() < claim.createDatetime\r\n ) &&\r\n (\r\n !this.filterControls.get('actionedDateRange').value ||\r\n !claim.lastActionDatetime ||\r\n this.filterControls.get('actionedDateRange').value.format() < claim.lastActionDatetime\r\n ) &&\r\n (!this.filterControls.get('compDimension').value || this.filterControls.get('compDimension').value === claim.competencyDimensionName)\r\n );\r\n }\r\n\r\n hasNotification(claim: Claim) {\r\n return this.claimService.activityListData['notificationClaimIdList'].map(nc => { return nc.claimId; }).includes(claim.id);\r\n }\r\n\r\n onNotificationButtonClick(rowIndex: number) {\r\n console.log('Notification button clicked: ' + rowIndex);\r\n this.clearNotification(this.claimList[rowIndex].id);\r\n }\r\n\r\n clearNotification(claimId: number) {\r\n this.claimsSubs.add(\r\n this.claimService.clearClaimNotifications(claimId, this.personId, this.verifierView ? 'C' : 'A').subscribe(\r\n () => {\r\n this.removeFromNotificationList(claimId);\r\n }\r\n )\r\n );\r\n }\r\n\r\n makeSet(itemList: Array) {\r\n const newSet = [];\r\n for (const item of itemList) {\r\n if (newSet.indexOf(item) === -1) {\r\n newSet.push(item);\r\n }\r\n }\r\n return newSet.sort();\r\n }\r\n\r\n toggleFilters() {\r\n this.filtersEnabled = !this.filtersEnabled;\r\n }\r\n\r\n trackByFn(index: any, item: any) {\r\n return index;\r\n }\r\n\r\n ngOnDestroy() {\r\n this.claimsSubs.unsubscribe();\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
{{cardTitle}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n Filter by:\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
IdDimensionCompetencyLevelStatusVerifierClaimantCreatedLast Actioned
\r\n New\r\n {{claim.id}}{{claim.competencyDimensionName}}{{claim.disciplineName}} - {{claim.skillName}}{{claim.claimLevelName}}{{claim.statusText}}{{claim.assessorName}}{{claim.claimantName}}\r\n {{claim.createDatetime | date}}\r\n \r\n {{claim.lastActionDatetime | date}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\nimport { PublishedClaimsComponent } from '../claim/published-claims.component';\r\n\r\nimport { AuthGuard } from '../auth.guard';\r\nimport { SecurityRoleGuard } from 'app/core/security-role.guard';\r\nimport { ClaimDetailGuard } from './claim-detail.guard';\r\nimport { MetaClaimGuard } from 'app/claim/meta-claim.guard';\r\n\r\nimport { ClaimListComponent } from './claim-list.component';\r\nimport { RouteSecurityRole } from 'app/core/menus';\r\nimport { BulkClaimComponent } from './bulk-claim.component';\r\nimport { BulkClaimSummaryComponent } from './bulk-claim-summary.component';\r\nimport { MsalGuard } from '@azure/msal-angular';\r\n\r\nconst routes: Routes = [\r\n {path: 'claim/:claimantId/published', component: PublishedClaimsComponent, canActivate: [MsalGuard]},\r\n {\r\n path: 'mydata/claims/published',\r\n component: PublishedClaimsComponent,\r\n canActivate: [MsalGuard, SecurityRoleGuard],\r\n data: {minimumRole: RouteSecurityRole['MY-DATA_PUBLISHED-CLAIMS']}\r\n },\r\n {\r\n path: 'mydata/claims/bulk',\r\n component: BulkClaimComponent,\r\n canActivate: [MsalGuard, SecurityRoleGuard],\r\n data: {minimumRole: RouteSecurityRole['MY-DATA_BULK-CLAIM']}\r\n },\r\n {\r\n path: 'mydata/claims/bulk/summary',\r\n component: BulkClaimSummaryComponent,\r\n canActivate: [MsalGuard, SecurityRoleGuard],\r\n data: {minimumRole: RouteSecurityRole['MY-DATA_BULK-CLAIM']}\r\n },\r\n {path: 'submissions/:category', component: ClaimListComponent, canActivate: [MsalGuard]}\r\n ];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n providers: [ClaimDetailGuard, MetaClaimGuard]\r\n})\r\nexport class ClaimRoutingModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { AssessorModule } from '../assessor/assessor.module';\r\nimport { ControlsModule } from '../controls/controls.module';\r\nimport { ClaimRoutingModule } from './claim-routing.module';\r\nimport { SkillModule } from '../skill/skill.module';\r\n\r\nimport { ClaimService } from './claim.service';\r\n\r\nimport { ClaimDocumentComponent } from './claim-document.component';\r\nimport { ClaimFileListComponent } from './claim-file-list.component';\r\nimport { ClaimHistoryComponent } from './claim-history.component';\r\nimport { ClaimListComponent } from './claim-list.component';\r\nimport { PublishedClaimsComponent } from './published-claims.component';\r\n\r\nimport { ClaimActorPipe } from './claim-actor.pipe';\r\nimport { HighlightMandatoryDirective } from '../core/highlight-mandatory.directive';\r\nimport { ClaimActivitySummaryComponent } from './claim-activity-summary.component';\r\nimport { BulkClaimComponent } from './bulk-claim.component';\r\nimport { BulkClaimGridComponent } from './bulk-claim-grid.component';\r\nimport { BulkClaimSummaryComponent } from './bulk-claim-summary.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n AssessorModule,\r\n ControlsModule,\r\n SkillModule,\r\n ClaimRoutingModule,\r\n ],\r\n declarations: [\r\n ClaimActorPipe,\r\n ClaimDocumentComponent,\r\n ClaimFileListComponent,\r\n ClaimHistoryComponent,\r\n ClaimListComponent,\r\n HighlightMandatoryDirective,\r\n PublishedClaimsComponent,\r\n ClaimActivitySummaryComponent,\r\n BulkClaimComponent,\r\n BulkClaimGridComponent,\r\n BulkClaimSummaryComponent,\r\n ],\r\n exports: [\r\n ClaimActorPipe,\r\n ClaimDocumentComponent,\r\n ClaimFileListComponent,\r\n ClaimHistoryComponent,\r\n ClaimListComponent,\r\n HighlightMandatoryDirective,\r\n PublishedClaimsComponent,\r\n ClaimActivitySummaryComponent,\r\n BulkClaimComponent,\r\n BulkClaimGridComponent,\r\n BulkClaimSummaryComponent,\r\n ],\r\n providers: [\r\n ClaimService,\r\n ]\r\n})\r\nexport class ClaimModule { }\r\n","import { Injectable, OnDestroy } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\n\r\nimport { Observable , Subscription , BehaviorSubject, throwError } from 'rxjs';\r\nimport { catchError, map } from 'rxjs/operators';\r\n\r\nimport { environment } from '../../environments/environment';\r\n\r\nimport { Claim } from './claim';\r\nimport { ClaimAction } from './claim-action';\r\nimport { ClaimDocument } from './claim-document';\r\nimport { ClaimEvidence } from './claim-evidence';\r\nimport { ClaimHistory } from './claim-history';\r\nimport { ClaimLevel } from './claim-level';\r\nimport { PublishedClaim } from './published-claim';\r\n\r\nexport interface SharedInfo {\r\n [sharedDataType: string]: {\r\n sharedInfoId?: number;\r\n personId?: number;\r\n createTimestamp?: string;\r\n uniqueId?: string;\r\n sharedInfoData: Array;\r\n };\r\n}\r\n\r\nexport interface SharedInfoResponse {\r\n [sharedDataType: string]: string;\r\n}\r\n\r\nconst apiServerUri = environment.apiUrl;\r\n\r\n@Injectable()\r\nexport class ClaimService implements OnDestroy {\r\n\r\n createClaimData = {};\r\n eviFiles = [];\r\n newClaim = new Claim();\r\n claimLevelFeeds = {}; // : Array>> = [];\r\n claimLevelsSubs = new Subscription();\r\n\r\n bulkClaimSummary: BehaviorSubject = new BehaviorSubject({});\r\n bulkClaimLevelCache: BehaviorSubject = new BehaviorSubject({});\r\n\r\n private _activityListData: any;\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n getClaimLevelsFeed(disciplineId: number): BehaviorSubject> {\r\n if (!this.claimLevelFeeds[disciplineId]) {\r\n this.claimLevelFeeds[disciplineId] = new BehaviorSubject>([]);\r\n this.claimLevelsSubs.add(\r\n this.getFuncAreaClaimLevels(disciplineId).subscribe(\r\n cl => this.claimLevelFeeds[disciplineId].next(cl)\r\n )\r\n );\r\n }\r\n return this.claimLevelFeeds[disciplineId];\r\n }\r\n\r\n getClaimsAsAssessor(assessorId: number, type: string): Observable> {\r\n return this.http.get(\r\n `${apiServerUri}/claims/assessor/${assessorId}/${type === 'PUBLISHED' ? 'published' : 'open'}`,\r\n ).pipe(\r\n map( resp => { return resp['claims'] || {}; } ),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getClaimsAsClaimant(claimantId: number): Observable> {\r\n return this.http.get(\r\n `${apiServerUri}/claims/claimant/${claimantId}`,\r\n ).pipe(\r\n map( resp => { return resp['claims'] || {}; } ),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getPublishedClaims(claimantId: number): Observable {\r\n return this.http.get(\r\n `${apiServerUri}/claims/claimant/${claimantId}/published`\r\n ).pipe(\r\n map( resp => { return resp || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getClaim(claimId: number): Observable {\r\n return this.http.get(\r\n `${apiServerUri}/claim/${claimId}`,\r\n ).pipe(\r\n map( resp => {\r\n return resp['claim'] || {};\r\n }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getClaimActions(claimId: number, initiatorType: string): Observable> {\r\n return this.http.get(\r\n `${apiServerUri}/claim/${claimId}/actions/initiator/${initiatorType}`,\r\n ).pipe(\r\n map( resp => {return resp['claimActions'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getClaimEvidence(claimId: number): Observable> {\r\n return this.http.get(\r\n `${apiServerUri}/claims/${claimId}/evidence`,\r\n ).pipe(\r\n map( resp => {return resp['claimEvidence'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getClaimDocs(claimId: number): Observable> {\r\n return this.http.get(\r\n `${apiServerUri}/claim/${claimId}/doc`,\r\n ).pipe(\r\n map( resp => {return resp['data'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getClaimDoc(claimId: number, docId: number): Observable {\r\n return this.http.get(\r\n `${apiServerUri}/claim/${claimId}/doc/${docId}`,\r\n {responseType: 'blob'}\r\n ).pipe(\r\n map( resp => {\r\n return new Blob([resp], {type: resp.type} );\r\n } ),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getClaimDocUrl(claimId: number, docId: number): string {\r\n return `${apiServerUri}/claim/${claimId}/doc2/${docId}.pdf`;\r\n }\r\n\r\n getClaimHistory(claimId: number): Observable> {\r\n return this.http.get(\r\n `${apiServerUri}/claims/${claimId}/history`,\r\n ).pipe(\r\n map( resp => {return resp['claimHistory'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getFuncAreaClaimLevels(funcAreaId: number): Observable> {\r\n return this.http.get(\r\n `${apiServerUri}/claims/func-area-levels/${funcAreaId}`,\r\n ).pipe(\r\n map( resp => { return resp['claimsLevels'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getClaimLevel(claimLevelId: number): Observable {\r\n return this.http.get(\r\n `${apiServerUri}/claims/levels/${claimLevelId}`,\r\n ).pipe(\r\n map( resp => { return resp['claimLevel'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getClaimActivitySummary(personId: number): Observable {\r\n return this.http.get(\r\n `${apiServerUri}/submissions/person/${personId}/activity-summary`,\r\n ).pipe(\r\n map( resp => { return resp['submissionsActivitySummary'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n clearClaimNotifications(claimId: number, personId: number, origActorType: string) {\r\n return this.http.put(\r\n `${apiServerUri}/submissions/${claimId}/notifications-by-person/${personId}/by-originator/${origActorType}/clear`,\r\n {}\r\n ).pipe(\r\n catchError( err => { return throwError(err); })\r\n )\r\n }\r\n\r\n createClaim(newClaimData?: any): Observable {\r\n const claimFormData = new FormData();\r\n if (this.createClaimData['assessorId']) {\r\n claimFormData.append('assessorId', this.createClaimData['assessorId']);\r\n }\r\n claimFormData.append('claimantId', this.createClaimData['claimantId']);\r\n claimFormData.append('claimLevelId', this.createClaimData['claimLevelId']);\r\n claimFormData.append('personId', this.createClaimData['personId']);\r\n claimFormData.append('skillId', this.createClaimData['skillId']);\r\n claimFormData.append('evidenceDescription', this.createClaimData['evidenceDescription']);\r\n if (this.eviFiles[0]) {\r\n claimFormData.append('evidenceFile', this.eviFiles[0], this.eviFiles[0].name);\r\n }\r\n\r\n return this.http.post(\r\n `${apiServerUri}/claims/create`,\r\n claimFormData,\r\n ).pipe(\r\n map( resp => {return resp['claim'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n createClaim2(createClaimData: any): Observable {\r\n const claimFormData = new FormData();\r\n\r\n // if (createClaimData['detail']['levelAndVerifier']['verifier']['selectedVerifier']) {\r\n // claimFormData.append('assessorId', createClaimData['detail']['levelAndVerifier']['verifier']['id']);\r\n // }\r\n if (!createClaimData['detail']['levelAndVerifier']['level']['selfAssessed']) {\r\n claimFormData.append('assessorId', createClaimData['detail']['levelAndVerifier']['verifier']['selectedVerifier']['assessorId']);\r\n }\r\n claimFormData.append('claimantId', createClaimData['detail']['claimant']['id']);\r\n claimFormData.append('claimLevelId', createClaimData['detail']['levelAndVerifier']['level']['id']);\r\n claimFormData.append('personId', createClaimData['detail']['claimant']['id']);\r\n claimFormData.append('skillId', createClaimData['detail']['competency']['competencyDetail']['id']);\r\n claimFormData.append('evidenceDescription', createClaimData['detail']['evidence']['statementText']);\r\n if (createClaimData['detail']['evidence']['evidenceFiles'].length > 0) {\r\n claimFormData.append(\r\n 'evidenceFile',\r\n createClaimData['detail']['evidence']['evidenceFiles'][0],\r\n createClaimData['detail']['evidence']['evidenceFiles'][0].name\r\n );\r\n }\r\n\r\n // return this.http.post(\r\n // `${apiServerUri}/claims/create`,\r\n // claimFormData,\r\n // ).pipe(\r\n // map( resp => {return resp['claim'] || {}; }),\r\n // catchError( err => { return throwError(err); })\r\n // );\r\n\r\n const claimData: any = {}\r\n\r\n if (createClaimData['detail']['levelAndVerifier']['verifier'] ) {\r\n claimData['assessorId'] = createClaimData['detail']['levelAndVerifier']['verifier']['selectedVerifier']['assessorId'];\r\n } else {\r\n claimData['assessorId'] = null;\r\n }\r\n claimData['claimantId'] = createClaimData['detail']['claimant']['id'];\r\n claimData['claimLevelId'] = createClaimData['detail']['levelAndVerifier']['level']['id'];\r\n claimData['personId'] = createClaimData['detail']['claimant']['id'];\r\n claimData['skillId'] = createClaimData['detail']['competency']['competencyDetail']['id'];\r\n claimData['evidenceDescription'] = createClaimData['detail']['evidence']['statementText'];\r\n\r\n const headers = new HttpHeaders().set('Content-Type', 'application/json');\r\n return this.http.post(\r\n `${apiServerUri}/claims/create`,\r\n JSON.stringify({claim: claimData}),\r\n { headers: headers }\r\n ).pipe(\r\n map( resp => {return resp['claim'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n modifyClaim(claimData: any): Observable {\r\n const headers = new HttpHeaders().set('Content-Type', 'application/json');\r\n return this.http.put(\r\n `${apiServerUri}/claim/${claimData.claim.id}/modify`,\r\n JSON.stringify({claimData: claimData}),\r\n { headers: headers }\r\n ).pipe(\r\n map( resp => {return resp['claim'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n isClaimAssessor(claimId: number, assessorId: number): Observable {\r\n return this.http.get(\r\n `${apiServerUri}/claim/${claimId}/person-role`,\r\n ).pipe(\r\n map(r => {\r\n return r['personRoles']['verifier'] || false;\r\n }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n isClaimClaimant(claimId: number, claimantId: number): Observable {\r\n return this.http.get(\r\n `${apiServerUri}/claim/${claimId}/person-role`,\r\n ).pipe(\r\n map(r => {\r\n return r['personRoles']['claimant'] || false;\r\n }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n createPublishedClaimsShare(personId: number, publishedClaimsData: SharedInfo) {\r\n const headers = new HttpHeaders().set('Content-Type', 'application/json');\r\n return this.http.post(\r\n `${apiServerUri}/claims/claimant/${personId}/published/share`,\r\n JSON.stringify(publishedClaimsData),\r\n { headers: headers }\r\n ).pipe(\r\n map( (resp: SharedInfoResponse) => { return resp; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n completeSMClaims(skillId: number, initiatorId: number, users: number[], scheduleTraining: boolean = false, dueDate: Date = null, expiryDate:Date = null ) {\r\n const payload = {\r\n completions: {\r\n skillId: skillId,\r\n initiatorId: initiatorId,\r\n users: users,\r\n scheduleTraining: scheduleTraining,\r\n dueDate: dueDate,\r\n expiryDate: expiryDate\r\n }\r\n }\r\n const headers = new HttpHeaders().set('Content-Type', 'application/json');\r\n return this.http.post(\r\n `${apiServerUri}/claims/sm-complete-items`, JSON.stringify(payload), {headers: headers}\r\n ).pipe(\r\n map( resp => { return resp; }),\r\n catchError( err => { return throwError(err); })\r\n )\r\n }\r\n\r\n set activityListData(value: any) {\r\n this._activityListData = value;\r\n }\r\n\r\n get activityListData(): any {\r\n return this._activityListData;\r\n }\r\n\r\n ngOnDestroy() {\r\n this.claimLevelsSubs.unsubscribe();\r\n }\r\n\r\n}\r\n","export class Claim {\r\n id: number;\r\n assessorId: number;\r\n assessorName: string;\r\n claimantId: number;\r\n claimantName: string;\r\n claimLevelId: number;\r\n claimLevelName: string;\r\n competencyDimensionId: number;\r\n competencyDimensionName: string;\r\n createDatetime: string;\r\n disciplineId: number;\r\n disciplineName: string;\r\n isOpen: boolean;\r\n isPrivate: boolean;\r\n isPublished: boolean;\r\n lastActionDatetime: string;\r\n lastActionName: string;\r\n rowVersion: number;\r\n selfAssessed: boolean;\r\n skillId: number;\r\n skillName: string;\r\n status: string;\r\n statusId: number;\r\n statusText: string;\r\n\r\n canEdit() {\r\n // console.log(`!this.isOpen: ${!this.isOpen}, !this.isPrivate: ${!this.isPrivate}`);\r\n // console.log(`!(!this.isOpen || !this.isPrivate): ${!(!this.isOpen || !this.isPrivate)}`);\r\n // return !(!(!this.isOpen || !this.isPrivate)); // TODO: WTF?!?!\r\n return ( this.isOpen === undefined || this.isOpen) && (this.isPrivate === undefined || this.isPrivate);\r\n }\r\n}\r\n","import { Injectable, OnDestroy } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree } from '@angular/router';\r\n\r\nimport { Observable , Subscription , of } from 'rxjs';\r\nimport { map, mergeMap, combineLatest, concat, takeLast } from 'rxjs/operators';\r\n\r\nimport { AuthGuard } from 'app/auth.guard';\r\nimport { ClaimDetailGuard } from 'app/claim/claim-detail.guard';\r\nimport { MsalGuard } from '@azure/msal-angular';\r\n\r\n@Injectable()\r\nexport class MetaClaimGuard implements CanActivate, OnDestroy {\r\n subscriptions = new Subscription();\r\n\r\n constructor(private authGuard: MsalGuard, private claimDetailGuard: ClaimDetailGuard) {}\r\n\r\n canActivate(\r\n next: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot\r\n ): Observable {\r\n\r\n const authCanActivate = this.authGuard.canActivate(next, state);\r\n const claimDetailCanActivate = this.claimDetailGuard.canActivate(next, state);\r\n\r\n return authCanActivate.pipe(\r\n concat(claimDetailCanActivate),\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.unsubscribe();\r\n }\r\n}\r\n","import { Component, OnDestroy, OnInit } from '@angular/core';\r\n\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { AuthService } from '../core/auth.service';\r\nimport { ClaimService, SharedInfo, SharedInfoResponse } from './claim.service';\r\nimport { ConfigService } from '../core/config.service';\r\n\r\nimport { PublishedClaim } from './published-claim';\r\nimport { Person } from '../person/person';\r\n\r\n@Component({\r\n selector: 'ug-published-claims',\r\n templateUrl: './published-claims.component.html',\r\n styleUrls: ['./published-claims.component.css']\r\n})\r\nexport class PublishedClaimsComponent implements OnDestroy, OnInit {\r\n\r\n publishedClaims: Array;\r\n retrievedTimeStamp: string;\r\n shareButtonDisabled = true;\r\n sharedInfoUniqueId: string;\r\n sharedUrl: string;\r\n\r\n exceptionData = {\r\n 'PUB_CLAIMS': {\r\n level: AlertLevels.ERROR,\r\n code: 'PCL-001',\r\n message: 'Error retrieving published claims'\r\n } as AlertData,\r\n 'SHARE_PUB_CLAIMS': {\r\n level: AlertLevels.ERROR,\r\n code: 'PCL-002',\r\n message: 'Error creating share for published claims'\r\n } as AlertData,\r\n };\r\n\r\n appName = this.configService.title;\r\n\r\n userDetailSubs = new Subscription();\r\n publishedClaimsSubs = new Subscription();\r\n publishedShare = new Subscription();\r\n\r\n constructor(\r\n private alertService: AlertService,\r\n public authService: AuthService,\r\n private claimService: ClaimService,\r\n private configService: ConfigService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.userDetailSubs = this.authService.userDetailSubj.subscribe(\r\n (p: Person) => {\r\n if (p.id) {\r\n this.publishedClaimsSubs = this.claimService.getPublishedClaims(p.id).subscribe(\r\n (pc: SharedInfo) => {\r\n this.publishedClaims = pc['publishedClaims'].sharedInfoData;\r\n this.retrievedTimeStamp = pc['publishedClaims'].createTimestamp;\r\n },\r\n err => this.alertService.createAlert2(this.exceptionData.PUB_CLAIMS, err)\r\n );\r\n this.shareButtonDisabled = false;\r\n }\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n this.userDetailSubs.unsubscribe();\r\n this.publishedClaimsSubs.unsubscribe();\r\n this.publishedShare.unsubscribe();\r\n }\r\n\r\n onShareButtonClick() {\r\n this.shareButtonDisabled = true;\r\n const shareData: SharedInfo = { 'publishedClaims': {\r\n createTimestamp: this.retrievedTimeStamp,\r\n personId: this.authService.me.id,\r\n sharedInfoData: this.publishedClaims\r\n }\r\n };\r\n console.log(JSON.stringify(shareData));\r\n this.publishedShare = this.claimService.createPublishedClaimsShare(this.authService.me.id, shareData).subscribe(\r\n (r: SharedInfoResponse) => {\r\n console.log(r);\r\n this.sharedInfoUniqueId = r['sharedInfoUniqueId'];\r\n this.sharedUrl = `${this.configService.shareServerUri}/${this.sharedInfoUniqueId}`;\r\n },\r\n e => {\r\n this.alertService.createAlert2(this.exceptionData.SHARE_PUB_CLAIMS, e);\r\n this.shareButtonDisabled = false;\r\n }\r\n );\r\n }\r\n\r\n}\r\n","\r\n
\r\n \r\n
{{appName}}
\r\n
\r\n
Published Claims for: {{authService.me.displayName}}
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Competency DimensionCompetencyLevelPublication DateExpiry Date
{{pubClaim.dimension}}{{pubClaim.skillName}}{{pubClaim.claimLevel}} {{pubClaim.selfVerified === true ? '[Self-verified]' : ''}}{{pubClaim.publishedDate}}{{pubClaim.expiresDate || 'n/a'}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Number of claims: {{publishedClaims?.length}}\r\n
\r\n
\r\n \r\n Snapshot generated at: {{retrievedTimeStamp | date:'medium'}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Share this report
\r\n
\r\n
\r\n

\r\n Clicking the Share button will generate a unique link that may be used by anyone to view this snapshot of published claims.\r\n

\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n Link here: {{sharedUrl}}\r\n
\r\n
\r\n
\r\n
","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { JobFamilySelectControlComponent } from './job-family-select-control.component';\r\nimport { TabNavControlComponent } from './tab-nav-control.component';\r\nimport { TextFilterControlComponent } from './text-filter-control.component';\r\nimport { ListStatusComponent } from './list-status.component';\r\nimport { SpinnerComponent } from 'app/controls/spinner.component';\r\nimport { SpinnerService } from 'app/controls/spinner.service';\r\nimport { WarnUnsavedComponent } from './warn-unsaved.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule\r\n ],\r\n declarations: [\r\n JobFamilySelectControlComponent,\r\n ListStatusComponent,\r\n SpinnerComponent,\r\n TabNavControlComponent,\r\n TextFilterControlComponent,\r\n WarnUnsavedComponent\r\n ],\r\n exports: [\r\n JobFamilySelectControlComponent,\r\n ListStatusComponent,\r\n SpinnerComponent,\r\n TabNavControlComponent,\r\n TextFilterControlComponent,\r\n WarnUnsavedComponent\r\n ],\r\n providers: [\r\n SpinnerService\r\n ]\r\n})\r\nexport class ControlsModule { }\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { FormArray, FormBuilder, FormControl, FormGroup } from '@angular/forms';\r\n\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { catchError, flatMap, map } from 'rxjs/operators';\r\n\r\nimport { FuncArea } from '../skill/func-area';\r\n\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { SkillService } from '../skill/skill.service';\r\n\r\n@Component({\r\n selector: 'ug-job-family-select-control',\r\n templateUrl: './job-family-select-control.component.html',\r\n styleUrls: ['./job-family-select-control.component.css']\r\n})\r\nexport class JobFamilySelectControlComponent implements OnInit {\r\n filterFormArray: FormArray;\r\n filterFormGroup: FormGroup;\r\n\r\n parentJobFamily: Array;\r\n childJobFamily = {};\r\n jobFamilyList = {};\r\n jobFamilyTypeList = {};\r\n\r\n currentJobFamilyId: number;\r\n // selectedJobFamily: FuncArea;\r\n selectedJobFamilyIdx = -1;\r\n\r\n @Input() selectedJobFamily: FuncArea;\r\n @Output() selectedJobFamilyChange = new EventEmitter();\r\n // @Output() jobFamilyChange: EventEmitter = new EventEmitter();\r\n\r\n exceptionData = {\r\n 'FUNC_AREA': {\r\n level: AlertLevels.ERROR,\r\n code: 'JFC-001',\r\n message: 'Error retrieving functional area'\r\n } as AlertData,\r\n 'CHILD_FUNC_AREAS': {\r\n level: AlertLevels.ERROR,\r\n code: 'JFC-002',\r\n message: 'Error retrieving child functional areas'\r\n } as AlertData,\r\n };\r\n\r\n constructor(private fb: FormBuilder, private alertService: AlertService, private skillService: SkillService) {\r\n this.filterFormArray = new FormArray([]);\r\n this.filterFormGroup = this.fb.group({\r\n filterControls: this.filterFormArray\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.parentJobFamily = [];\r\n this.skillService.getFuncArea(0)\r\n .pipe(\r\n map( (jobFamilies: Array) => {\r\n this.parentJobFamily.push(jobFamilies[0]);\r\n // this.childJobFamily[0] = [];\r\n // this.jobFamilyTypeList[0] = '';\r\n this.filterFormArray.push(new FormControl());\r\n this.filterFormArray.controls[0].setValue(0);\r\n return jobFamilies[0];\r\n }),\r\n flatMap( jobFamily => this.skillService.getChildFuncAreas(jobFamily.id)),\r\n catchError( err => { return throwError(err); })\r\n )\r\n .subscribe(\r\n (childJobFamilies) => {\r\n this.childJobFamily[0] = childJobFamilies;\r\n this.jobFamilyTypeList[0] = childJobFamilies[0].funcAreaTypeName;\r\n },\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.FUNC_AREA, err);\r\n },\r\n );\r\n }\r\n\r\n onSelectChange(filterIdx: number) {\r\n console.log('OnSelectChange filterIdx=' + filterIdx);\r\n while (this.filterFormArray.length > filterIdx + 1) {\r\n this.filterFormArray.removeAt(filterIdx + 1);\r\n this.selectedJobFamilyIdx = -1;\r\n }\r\n this.parentJobFamily.length = filterIdx + 1;\r\n const selectedControlIdx = this.filterFormArray.controls[filterIdx].value;\r\n this.selectedJobFamily = this.childJobFamily[filterIdx][selectedControlIdx];\r\n const selectedJobFamilyId = this.selectedJobFamily.id;\r\n // const selectedJobFamilyId = this.filterFormArray.controls[filterIdx].value;\r\n this.currentJobFamilyId = selectedJobFamilyId;\r\n console.log(selectedJobFamilyId);\r\n // this.jobFamilyChange.emit(this.selectedJobFamily);\r\n this.selectedJobFamilyChange.emit(this.selectedJobFamily);\r\n this.skillService.getFuncArea(selectedJobFamilyId)\r\n .subscribe(\r\n (pjf: Array) => {\r\n // if (pjf[0].funcAreaTypeName !== 'Discipline') {\r\n if (!['Discipline', 'Curriculum Section'].includes(pjf[0].funcAreaTypeName)) {\r\n this.parentJobFamily.push(pjf[0]);\r\n if (!this.jobFamilyTypeList[filterIdx + 1]) {this.jobFamilyTypeList[filterIdx + 1] = ''; }\r\n this.jobFamilyList[pjf[0].id] = pjf[0];\r\n }\r\n },\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.FUNC_AREA, err);\r\n }\r\n );\r\n this.skillService.getChildFuncAreas(selectedJobFamilyId)\r\n .subscribe(\r\n (cjf: Array) => {\r\n if (cjf.length > 0) {\r\n this.childJobFamily[filterIdx + 1] = cjf;\r\n // this.filterJobFamily({parentId: cjf[0].parentFuncAreaId, discId: 0 });\r\n this.filterFormArray.push(new FormControl);\r\n this.filterFormArray.controls[filterIdx + 1].setValue(0);\r\n this.childJobFamily[filterIdx + 1] = cjf;\r\n this.jobFamilyTypeList[filterIdx + 1] = cjf[0].funcAreaTypeName;\r\n cjf.forEach(element => {\r\n this.jobFamilyList[element.id] = element;\r\n });\r\n } else {\r\n // this.filterJobFamily({parentId: this.parentJobFamily[filterIdx].id, discId: selectedJobFamilyId });\r\n }\r\n },\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.CHILD_FUNC_AREAS, err);\r\n }\r\n );\r\n // this.selectedJobFamilyChange.emit(this.selectedJobFamily);\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n Filter by:\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n","import { Component, Input, OnChanges } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ug-list-status',\r\n templateUrl: './list-status.component.html',\r\n styleUrls: ['./list-status.component.css']\r\n})\r\nexport class ListStatusComponent implements OnChanges {\r\n\r\n private _listLength = 0;\r\n private _emptyListMessage: string;\r\n private _isLoading = true;\r\n @Input()\r\n set listLength(value) {\r\n this._listLength = value;\r\n };\r\n get listLength() {\r\n return this._listLength;\r\n }\r\n @Input() emptyListMessage: string;\r\n @Input()\r\n set isLoading(value) {\r\n this._isLoading = value;\r\n if (this.listLength < 1) {\r\n if (this.isLoading) {\r\n this.listStatusText = 'Loading. Please wait';\r\n } else {\r\n this.listStatusText = this.emptyListMessage;\r\n }\r\n } else {\r\n this.listStatusText = '';\r\n }\r\n };\r\n get isLoading() {\r\n return this._isLoading;\r\n }\r\n listStatusText = '...';\r\n\r\n constructor() {}\r\n\r\n ngOnChanges() {}\r\n\r\n get showListStatus() {\r\n return this.isLoading || this.listLength < 1;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n {{listStatusText}}\r\n
\r\n
\r\n
","import { Injectable } from '@angular/core';\r\nimport { HttpEvent, HttpErrorResponse, HttpInterceptor, HttpHandler, HttpRequest, HttpResponse } from '@angular/common/http';\r\n\r\nimport { SpinnerService } from '../controls/spinner.service';\r\n\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { catchError, map, finalize } from 'rxjs/operators';\r\n\r\n@Injectable()\r\nexport class SpinnerInterceptor implements HttpInterceptor {\r\n constructor(private spinnerService: SpinnerService) {}\r\n\r\n intercept(req: HttpRequest, next: HttpHandler ): Observable> {\r\n if (req instanceof HttpRequest) {\r\n this.spinnerService.add(req.url);\r\n };\r\n\r\n return next.handle(req).pipe(\r\n finalize(\r\n () => {\r\n this.spinnerService.remove(req.url);\r\n }\r\n )\r\n );\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\nimport { SpinnerService } from '../controls/spinner.service';\r\n\r\n@Component({\r\n selector: 'ug-spinner',\r\n templateUrl: './spinner.component.html',\r\n styleUrls: ['./spinner.component.scss']\r\n})\r\nexport class SpinnerComponent implements OnInit {\r\n\r\n constructor(private spinnerService: SpinnerService) { }\r\n\r\n get showSpinner(): boolean {\r\n return this.spinnerService.showSpinner;\r\n }\r\n get spinnerCount(): number {\r\n return this.spinnerService.count;\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","
\r\n \r\n
\r\n
\r\n\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class SpinnerService {\r\n\r\n private get openRequestCount() {\r\n return this.urlList.length;\r\n }\r\n\r\n // private set openRequestCount(value: number) {} // Dummy setter during bug investigation\r\n private urlList: Array = [];\r\n constructor() { }\r\n\r\n add(url: string) {\r\n // this.openRequestCount += 1;\r\n this.urlList.push(url);\r\n }\r\n\r\n remove(url) {\r\n // this.openRequestCount -= 1;\r\n // if (this.openRequestCount < 0) { this.openRequestCount = 0; }\r\n const itemIndex = this.urlList.findIndex( item => {\r\n return item === url;\r\n });\r\n if (itemIndex !== -1) {\r\n this.urlList.splice(itemIndex, 1);\r\n }\r\n }\r\n\r\n reset() {\r\n // this.openRequestCount = 0;\r\n this.urlList.length = 0;\r\n }\r\n\r\n inProgressUrls() {\r\n return JSON.stringify(this.urlList);\r\n }\r\n\r\n get count() {\r\n return this.openRequestCount;\r\n }\r\n\r\n get showSpinner() {\r\n return ( this.openRequestCount > 0 ? true : false);\r\n }\r\n\r\n\r\n\r\n}\r\n","import { Component, EventEmitter, Input, OnChanges, OnInit, Output } from '@angular/core';\r\n\r\nimport { NavigationService } from '../core/navigation.service';\r\nimport { Subscription } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'ug-tab-nav-control',\r\n templateUrl: './tab-nav-control.component.html',\r\n styleUrls: ['./tab-nav-control.component.css']\r\n})\r\nexport class TabNavControlComponent implements OnInit {\r\n\r\n // @Input() currentTabIndex: number;\r\n // @Input() activeTabIndex: number;\r\n // @Output() activeTabIndexChange = new EventEmitter();\r\n @Input() tabCount: number;\r\n // showPrev: boolean;\r\n // showNext: boolean;\r\n\r\n tabIndex: number;\r\n tabIndexSubs: Subscription;\r\n // tabIndexSubs = this.navigationService.tabIndex.subscribe(\r\n // ti => {\r\n // console.log('New tab index=' + ti);\r\n // this.tabIndex = ti;\r\n // }\r\n // );\r\n\r\n showPrev(): boolean {\r\n // get showPrev(): boolean {\r\n // return this.activeTabIndex > 0;\r\n // console.log('showPrev() tabIndex=' + this.tabIndex);\r\n return this.tabIndex > 0; // ? true : null;\r\n }\r\n showNext(): boolean {\r\n // get showNext(): boolean {\r\n // return this.activeTabIndex < this.tabCount - 1;\r\n // console.log('showNext() tabIndex=' + this.tabIndex);\r\n return this.tabIndex < (this.tabCount - 1); // ? true : null;\r\n }\r\n\r\n constructor(private navigationService: NavigationService) { }\r\n\r\n ngOnInit() {\r\n this.tabIndexSubs = this.navigationService.tabIndex.subscribe(\r\n ti => {\r\n console.log('New tab index=' + ti);\r\n this.tabIndex = ti;\r\n }\r\n );\r\n // this.showPrev = this.currentTabIndex > 0;\r\n // this.showNext = this.currentTabIndex < this.tabCount - 1;\r\n }\r\n\r\n // ngOnChanges() {\r\n // this.showPrev = this.activeTabIndex > 0;\r\n // this.showNext = this.activeTabIndex < this.tabCount - 1;\r\n // }\r\n\r\n onPrevClick() {\r\n // if ( this.activeTabIndex > 0 ) {\r\n // this.activeTabIndex -= 1;\r\n // }\r\n\r\n if (this.navigationService.currentTabIndex > 0) {\r\n this.navigationService.prevTab();\r\n }\r\n\r\n // this.activeTabIndexChange.emit(this.activeTabIndex);\r\n\r\n // this.showPrev = this.activeTabIndex > 0;\r\n // this.activeTabIndexChange.emit(this.currentTabIndex - 1);\r\n // console.log(`Prev click: activeTabIndex=${this.activeTabIndex}`);\r\n }\r\n\r\n onNextClick() {\r\n // if (this.activeTabIndex < this.tabCount - 1) {\r\n // this.activeTabIndex += 1;\r\n // }\r\n\r\n if (this.navigationService.currentTabIndex < this.tabCount - 1) {\r\n this.navigationService.nextTab();\r\n }\r\n\r\n // this.activeTabIndexChange.emit(this.activeTabIndex);\r\n\r\n // this.showNext = this.activeTabIndex < this.tabCount - 1;\r\n // this.activeTabIndexChange.emit(this.currentTabIndex + 1);\r\n // console.log(`Next click: activeTabIndex=${this.activeTabIndex}`);\r\n }\r\n\r\n}\r\n","
\r\n \r\n \r\n \r\n
\r\n","import { Component, EventEmitter, Input, OnChanges, OnDestroy, OnInit, Output, SimpleChanges } from '@angular/core';\r\nimport { FormControl, FormGroup } from '@angular/forms';\r\nimport { debounceTime, distinctUntilChanged } from 'rxjs/operators';\r\nimport { Subscription } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'ug-text-filter-control',\r\n templateUrl: './text-filter-control.component.html',\r\n styleUrls: ['./text-filter-control.component.css']\r\n})\r\nexport class TextFilterControlComponent implements OnDestroy, OnInit, OnChanges {\r\n\r\n @Input() filterText: string;\r\n @Input() ugDisabled = false;\r\n @Input() placeholderText = 'Begin typing to filter results'\r\n @Output() filterTextChange = new EventEmitter();\r\n\r\n filterGroup = new FormGroup(\r\n {\r\n filterControl: new FormControl('')\r\n }\r\n );\r\n textFilterControlSubs = new Subscription();\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n this.filterGroup.get('filterControl').setValue(this.filterText);\r\n if (this.ugDisabled) {\r\n this.filterGroup.disable();\r\n }\r\n this.textFilterControlSubs.add(\r\n this.filterGroup.get('filterControl').valueChanges.pipe(\r\n debounceTime(100),\r\n distinctUntilChanged()\r\n ).subscribe(\r\n ft => this.filterTextChange.emit(this.filterGroup.get('filterControl').value)\r\n )\r\n )\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n this.filterGroup.get('filterControl').setValue(this.filterText);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.textFilterControlSubs.unsubscribe();\r\n }\r\n\r\n onResetClick() {\r\n // this.filterGroup.get('filterControl').reset();\r\n this.filterGroup.get('filterControl').setValue('');\r\n }\r\n\r\n}\r\n","
\r\n
\r\n \r\n \r\n
\r\n
\r\n","import { Component, EventEmitter, Input, OnChanges, Output } from '@angular/core';\r\nimport { Modal } from 'bootstrap';\r\nimport { Subject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'esqep-warn-unsaved', // tslint:disable-line: component-selector\r\n templateUrl: './warn-unsaved.component.html',\r\n styleUrls: ['./warn-unsaved.component.scss']\r\n})\r\nexport class WarnUnsavedComponent implements OnChanges {\r\n\r\n @Input() showDialog = false;\r\n @Input() exitWithoutSaving$: Subject;\r\n @Output() exit: EventEmitter = new EventEmitter();\r\n @Output() goBack: EventEmitter = new EventEmitter();\r\n\r\n constructor() { }\r\n\r\n ngOnChanges() {\r\n if (this.showDialog) {\r\n const unsavedModal = new Modal(document.getElementById('unsavedWarningModalTitle'));\r\n unsavedModal.show();\r\n }\r\n }\r\n\r\n exitUnsaved() {\r\n this.exitWithoutSaving$.next(true);\r\n this.exit.emit(true);\r\n }\r\n\r\n goBackUnsaved() {\r\n this.exitWithoutSaving$.next(false);\r\n this.goBack.emit(true);\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
You have unsaved changes
\r\n
\r\n
\r\n

Are you sure you want to leave this screen without saving your changes?

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot, Router, RouterStateSnapshot } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\n\r\nimport { AuthService } from 'app/core/auth.service';\r\n\r\nimport { ExceptionTypes } from 'app/core/exception.component';\r\n\r\n@Injectable()\r\nexport class AdminGuard implements CanActivate {\r\n\r\n constructor(private authService: AuthService, private router: Router) {}\r\n\r\n canActivate(\r\n next: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot): Observable | Promise | boolean {\r\n if (!this.authService.hasAdminRole) {\r\n this.router.navigate(['exception', ExceptionTypes[ExceptionTypes.NOT_AUTH]]);\r\n return false;\r\n }\r\n return true;\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { AuthService } from './auth.service';\r\nimport { Logger, LogLevel } from '../core/config.service';\r\n\r\n@Component({\r\n selector: 'ug-adresponse',\r\n templateUrl: './adresponse.component.html',\r\n styleUrls: ['./adresponse.component.css']\r\n})\r\nexport class OAuthCallbackComponent implements OnInit {\r\n\r\n constructor(\r\n private router: Router,\r\n private authService: AuthService,\r\n ) { }\r\n\r\n ngOnInit() {\r\n if (this.authService.isAuthenticated) {\r\n const storedUrl = sessionStorage.getItem('esqep.login.redirect');\r\n if (storedUrl) {\r\n Logger(`Retrieved url from storage: ${storedUrl}`, LogLevel.VERBOSE);\r\n sessionStorage.removeItem('esqep.login.redirect');\r\n this.router.navigateByUrl(storedUrl);\r\n } else {\r\n this.router.navigate(['home']);\r\n }\r\n }\r\n }\r\n}\r\n","
\r\n

Please stand by...

\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { trigger, state, style, animate, transition } from '@angular/animations';\r\n\r\nimport { Alert } from './alert';\r\n\r\nimport { AlertLevels, AlertService } from './alert.service';\r\n\r\n@Component({\r\n selector: 'ug-alert',\r\n templateUrl: './alert.component.html',\r\n styleUrls: ['./alert.component.css'],\r\n animations: [\r\n trigger('fadeShrinkInOut', [\r\n state('inOut', style({height: '*', opacity: '*'})),\r\n transition('* => void', [\r\n style({height: '*', opacity: '*'}),\r\n animate(250, style({height: 0, opacity: 0}))\r\n ]),\r\n transition('void => *', [\r\n style({height: 0, opacity: 0}),\r\n animate(150, style({height: '*', opacity: 1}))\r\n ])\r\n ])\r\n ]\r\n})\r\nexport class AlertComponent implements OnInit {\r\n\r\n constructor(private alertService: AlertService) { }\r\n\r\n ngOnInit() { }\r\n\r\n onAlertDismiss(alertId: number) {\r\n this.alertService.dimsissAlert(alertId);\r\n }\r\n\r\n get alerts(): Array {\r\n return this.alertService.alerts;\r\n }\r\n\r\n getAlertCountdown(alertIndex): string {\r\n let alertCountdownMessage = '';\r\n if (this.alerts[alertIndex].secondsUntilDismissed) {\r\n alertCountdownMessage = ` (${this.alerts[alertIndex].secondsUntilDismissed}s)`;\r\n }\r\n return alertCountdownMessage;\r\n }\r\n\r\n getAlertBadgeClass(alertIndex: number): string {\r\n let alertBadgeClass = '';\r\n switch (this.alertService.alerts[alertIndex].type) {\r\n case AlertLevels.ERROR:\r\n alertBadgeClass = 'bg-danger';\r\n break;\r\n case AlertLevels.WARNING:\r\n alertBadgeClass = 'bg-warning';\r\n break;\r\n case AlertLevels.INFO:\r\n alertBadgeClass = 'bg-info';\r\n break;\r\n case AlertLevels.SUCCESS:\r\n alertBadgeClass = 'bg-success';\r\n break;\r\n default:\r\n alertBadgeClass = 'bg-secondary';\r\n }\r\n return alertBadgeClass;\r\n }\r\n}\r\n","
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {{alert.typeName}}\r\n
\r\n
\r\n
\r\n {{alert.timestamp | date:'medium'}}\r\n
\r\n \r\n
[{{alert.code}}] {{alert.message | titlecase}}
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n","import { Injectable, OnDestroy } from '@angular/core';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\n\r\nimport { Alert } from './alert';\r\n\r\n// import { APP} from '../../version.js';\r\nimport { environment } from 'environments/environment';\r\n\r\nexport enum AlertLevels {\r\n ERROR,\r\n WARNING,\r\n INFO,\r\n SUCCESS,\r\n DEBUG\r\n};\r\n\r\nexport interface AlertData {\r\n level: number;\r\n message: string;\r\n code: string;\r\n}\r\n\r\nexport const alertConfig: {\r\n [level: number]: {\r\n name: string,\r\n log: (msg: string) => void,\r\n autoDismissSeconds?: number}\r\n } = {\r\n [AlertLevels.ERROR]: {\r\n name: 'ERROR',\r\n log: (msg: string) => window.console && console.error(msg),\r\n autoDismissSeconds: null\r\n },\r\n [AlertLevels.WARNING]: {\r\n name: 'WARNING',\r\n log: (msg: string) => window.console && console.warn(msg),\r\n autoDismissSeconds: null\r\n },\r\n [AlertLevels.INFO]: {\r\n name: 'INFO',\r\n log: (msg: string) => window.console && console.info(msg), // tslint:disable-line\r\n autoDismissSeconds: null\r\n },\r\n [AlertLevels.SUCCESS]: {\r\n name: 'SUCCESS',\r\n log: (msg: string) => window.console && console.log(msg),\r\n autoDismissSeconds: 10\r\n },\r\n [AlertLevels.DEBUG]: {\r\n name: 'DEBUG',\r\n log: (msg: string) => window.console && console.log(msg),\r\n autoDismissSeconds: null\r\n }\r\n};\r\n\r\n@Injectable()\r\nexport class AlertService implements OnDestroy {\r\n _alerts: Map = new Map();\r\n alertTimers: Map = new Map();\r\n nextAlertId = 1;\r\n\r\n constructor() { }\r\n\r\n // clog = (msg, lvl) => { this.configService.logging.newMsg2( `${this.constructor.name}: ${msg}`, lvl); };\r\n\r\n get alerts(): Array {\r\n return Array.from(this._alerts.values());\r\n }\r\n\r\n ngOnDestroy() {\r\n for (const alertTimer of this.alertTimers.values()) {\r\n clearInterval(alertTimer);\r\n }\r\n }\r\n\r\n createAlert(alertType: number, message: string, code: string, response?: HttpErrorResponse) {\r\n const alert = new Alert();\r\n alert.id = this.nextAlertId++;\r\n alert.type = alertType;\r\n switch (alertType) {\r\n case AlertLevels.SUCCESS:\r\n alert.typeName = 'Success';\r\n alert.className = {'alert-success': true};\r\n break;\r\n case AlertLevels.INFO:\r\n alert.typeName = 'Information';\r\n alert.className = {'alert-info': true};\r\n break;\r\n case AlertLevels.WARNING:\r\n alert.typeName = 'Warning';\r\n alert.className = {'alert-warning': true};\r\n break;\r\n case AlertLevels.ERROR:\r\n alert.typeName = 'Error';\r\n alert.className = {'alert-danger': true};\r\n break;\r\n default:\r\n alert.typeName = '';\r\n alert.className = {'alert-secondary': true};\r\n }\r\n if (message && code) {\r\n alert.message = message;\r\n alert.code = code;\r\n if (response) {\r\n alert.message = alert.message + ` (${response.statusText}: Status=${response.status})`;\r\n }\r\n } else if (response) {\r\n alert.code = (response.status || -1).toString();\r\n alert.message = response.statusText || 'Unknown Error';\r\n }\r\n alert.timestamp = Date.now();\r\n if (alert.type === AlertLevels.SUCCESS) {\r\n alert.secondsUntilDismissed = 10;\r\n }\r\n this._alerts.set(alert.id, alert);\r\n if (alertConfig[alertType].autoDismissSeconds) {\r\n alert.secondsUntilDismissed = alertConfig[alertType].autoDismissSeconds;\r\n this.alertTimers.set(alert.id, setInterval(\r\n () => {\r\n alert.secondsUntilDismissed--;\r\n if (alert.secondsUntilDismissed <= 0) {\r\n clearInterval(this.alertTimers.get(alert.id));\r\n this._alerts.delete(alert.id);\r\n this.alertTimers.delete(alert.id);\r\n }\r\n }\r\n , 1000)\r\n );\r\n }\r\n this.log(alert.type, alert.message);\r\n }\r\n\r\n dimsissAlert(alertId: number) {\r\n clearInterval(this.alertTimers.get(alertId));\r\n this._alerts.delete(alertId);\r\n this.alertTimers.delete(alertId);\r\n }\r\n\r\n createAlert2(ad: AlertData, err?: HttpErrorResponse) {\r\n this.createAlert(ad.level, ad.message, ad.code, err);\r\n }\r\n\r\n log(level: number, message: string) {\r\n if (window.console) {\r\n alertConfig[level].log(\r\n // `${new Date().toUTCString()}|${this.configService.appVersion}|${alertConfig[level].name}: ${message}`\r\n `${new Date().toUTCString()}|${APP_VERSION}-${environment.envName}|${alertConfig[level].name}: ${message}`\r\n );\r\n }\r\n }\r\n\r\n}\r\n","export class Alert {\r\n type: number;\r\n typeName: string;\r\n className: any;\r\n message: string;\r\n code: string;\r\n timestamp: number;\r\n secondsUntilDismissed?: number;\r\n id: number;\r\n}\r\n","// https://blogs.msdn.microsoft.com/premier_developer/2017/04/26/using-adal-with-angular2/\r\n// https://stackoverflow.com/questions/40044892/how-to-load-adal-js-in-webpack-inside-angular-2-azure-ad\r\n// FAQs: https://github.com/AzureAD/azure-activedirectory-library-for-js/wiki/FAQs\r\n\r\n// IMPORTANT: Need to allow 3rd party cookies from login.microsoft.com for token renewal\r\n\r\n// /// \r\n\r\n// TODO: https://docs.microsoft.com/en-gb/azure/active-directory/develop/tutorial-v2-angular-auth-code\r\n\r\nimport { Injectable, OnDestroy } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';\r\n\r\nimport { BehaviorSubject, bindCallback, throwError, Subject, interval, Subscription, Observable, ReplaySubject } from 'rxjs';\r\nimport { switchMap, map, catchError, filter } from 'rxjs/operators';\r\n\r\nimport { Person } from '../person/person';\r\nimport { SecurityRole } from './security-role';\r\n\r\nimport { ConfigService, Logger, LogLevel } from './config.service';\r\nimport { environment } from '../../environments/environment';\r\nimport { MsalBroadcastService, MsalService } from '@azure/msal-angular';\r\nimport { AccountInfo } from '@azure/msal-browser';\r\nimport { EventMessage, EventType } from '@azure/msal-browser';\r\n\r\n// import 'expose-loader?AuthenticationContext!../../../node_modules/adal-angular/lib/adal.js';\r\n\r\n// const createAuthContextFn: adal.AuthenticationContextStatic = AuthenticationContext;\r\n// function logger(msg, lvl): void { this.configService.logging.newMsg( `${this.constructor.name}: ${msg}`, lvl); };\r\n\r\nexport enum SecurityRoleKey {\r\n User = 'SECURITY_ROLE_USER',\r\n Verifier = 'SECURITY_ROLE_VERIFIER',\r\n Admin = 'SECURITY_ROLE_ADMIN',\r\n Superuser = 'SECURITY_ROLE_SUPERUSER'\r\n}\r\n\r\nexport const SecurityRoleConfig = {};\r\n\r\nconst apiServerUri = environment.apiUrl;\r\n\r\n@Injectable()\r\nexport class AuthService implements OnDestroy {\r\n\r\n // private context: adal.AuthenticationContext;\r\n diagShow = false;\r\n\r\n authenticationStatusSubj = new BehaviorSubject(false);\r\n adminStatusSubj = new BehaviorSubject(false);\r\n inUserGroupSubj = new BehaviorSubject(false);\r\n userDetailSubj = new BehaviorSubject(new Person() );\r\n authTimeoutSubj = new Subject();\r\n inactiveSecondsCount = new Subject();\r\n\r\n authServiceSubs = new Subscription();\r\n userPhotoUrlSubj = new BehaviorSubject('');\r\n\r\n securityRolesSubj = new ReplaySubject>(1);\r\n personSecurityRoleSubj = new ReplaySubject(1);\r\n securityRoleLookupSubj = new ReplaySubject(1);\r\n personIsManagerRoleSubj = new ReplaySubject(1);\r\n\r\n private _userSecurityRole = new SecurityRole();\r\n private _userSecurityRoleLookup: {[role_identifier: string]: SecurityRole} = {};\r\n private _userSecurityRoles: Array = [];\r\n\r\n // clog = (msg, lvl) => { this.configService.logging.newMsg( `${this.constructor.name}: ${msg}`, lvl); };\r\n\r\n constructor(\r\n private configService: ConfigService,\r\n private http: HttpClient,\r\n private sanitizer: DomSanitizer,\r\n private msalService: MsalService,\r\n private msalBroadcastService: MsalBroadcastService\r\n ) {\r\n this.authServiceSubs.add(\r\n this.authTimeoutSubj.pipe(\r\n switchMap( (val) => interval(1000))\r\n )\r\n .subscribe(\r\n (secondsElapsed) => {\r\n this.inactiveSecondsCount.next(secondsElapsed);\r\n },\r\n )\r\n );\r\n\r\n // this.context = new createAuthContextFn(configService.adalConfig);\r\n // // Logging = configService.logging;\r\n // const token = this.context.getCachedToken(environment.clientId);\r\n // if (token !== null && token.length > 0) {\r\n // this.loginSucceeded();\r\n // }\r\n }\r\n\r\n ngOnDestroy() {\r\n console.log('Auth Service OnDestroy');\r\n this.authServiceSubs.unsubscribe();\r\n }\r\n\r\n loginSucceeded() {\r\n this.isAuthenticated = true;\r\n // this.inUserGroup = (this.userInfo?.idTokenClaims['groups'] || []).some(\r\n // g => environment.userGroups.map( ug => {return ug.id}).includes(g)\r\n // );\r\n this.inUserGroup = true;\r\n this.hasAdminRole = (this.userInfo?.idTokenClaims['roles'] || []).includes('Admin');\r\n\r\n // this.inUserGroup = (this.userInfo.profile['groups'] || []).some(\r\n // g => environment.userGroups.map( ug => {return ug.id}).includes(g)\r\n // );\r\n // this.inUserGroup = true;\r\n // this.hasAdminRole = (this.userInfo.profile['roles'] || []).includes('Admin');\r\n }\r\n\r\n loginFailed() {\r\n this.isAuthenticated = false;\r\n this.inUserGroup = false;\r\n this.hasAdminRole = false;\r\n }\r\n\r\n logoutSucceeded() {\r\n this.isAuthenticated = false;\r\n this.inUserGroup = false;\r\n this.hasAdminRole = false;\r\n }\r\n\r\n login() {\r\n // this.context.login();\r\n // this.msalService.loginRedirect();\r\n this.msalService.loginPopup();\r\n }\r\n\r\n logout() {\r\n // this.context.config.postLogoutRedirectUri = window.location.origin + '/login';\r\n // this.context.logOut();\r\n this.msalService.logout();\r\n }\r\n\r\n timeoutLogout() {\r\n // this.context.config.postLogoutRedirectUri = window.location.origin + '/logged-out/timeout';\r\n // this.context.logOut();\r\n this.msalService.logout();\r\n }\r\n\r\n handleAuthCallback(): boolean {\r\n // TODO: This should allow for a logout operation and call logoutSucceeded()\r\n // Net effect is the same as a failed login so works OK but...\r\n // this.context.handleWindowCallback();\r\n Logger('auth.service: After context.handleWindowCallback()', LogLevel.VERBOSE);\r\n // const authCallbackSuccessful = (\r\n // !!this.context.getCachedUser() &&\r\n // !!this.context.getCachedToken(this.configService.adalConfig.clientId)\r\n // );\r\n\r\n const authCallbackSuccessful = (!!this.msalService.instance.getTokenCache() && !!this.msalService.instance.getActiveAccount());\r\n\r\n if (authCallbackSuccessful) {\r\n this.loginSucceeded();\r\n } else {\r\n this.loginFailed();\r\n }\r\n return authCallbackSuccessful;\r\n }\r\n\r\n storeUserPersonDetail(person: Person) {\r\n this.userDetailSubj.next(person);\r\n this.personIsManagerRoleSubj.next(person.watchOfficerOrAbove)\r\n }\r\n\r\n storeUserPhoto(photo: Blob) {\r\n let photoUrl = '';\r\n if (photo.type === 'image/jpeg' || photo.type === 'image/png') {\r\n photoUrl = window.URL.createObjectURL(photo);\r\n this.userPhotoUrlSubj.next(this.sanitizer.bypassSecurityTrustResourceUrl(photoUrl));\r\n }\r\n }\r\n\r\n storeUserSecurityRole(securityRole: SecurityRole) {\r\n this._userSecurityRole = securityRole;\r\n }\r\n\r\n getSecurityRoles(): Observable> {\r\n return this.http.get<{'securityRoles': Array}>(\r\n `${apiServerUri}/security/roles`\r\n ).pipe(\r\n map( resp => {\r\n const sr = resp.securityRoles;\r\n // this._userSecurityRoleLookup = sr.reduce( (m, r) => { m[r.roleIdentifier] = r; return m; }, {});\r\n return sr;\r\n }),\r\n catchError( err => { return throwError(err); })\r\n )\r\n }\r\n\r\n populateSecurityRoles() {\r\n this.authServiceSubs.add(\r\n this.getSecurityRoles().subscribe(\r\n sr => {\r\n this._userSecurityRoles = sr;\r\n this.securityRolesSubj.next(sr);\r\n this._userSecurityRoleLookup = sr.reduce( (m, r) => { m[r.roleIdentifier] = r; return m; }, {});\r\n this.securityRoleLookupSubj.next(this._userSecurityRoleLookup);\r\n },\r\n err => {}\r\n )\r\n )\r\n }\r\n\r\n get userSecurityRoles(): Array {\r\n return this._userSecurityRoles\r\n }\r\n get userSecurityRoleLookup() {\r\n return this._userSecurityRoleLookup\r\n }\r\n\r\n get me(): Person {\r\n return this.userDetailSubj.getValue();\r\n }\r\n\r\n get myPhotoUrl(): SafeResourceUrl {\r\n return this.userPhotoUrlSubj.getValue();\r\n }\r\n\r\n // public get userInfo(): adal.User {\r\n // return this.context.getCachedUser() || ({} as adal.User);\r\n // }\r\n\r\n public get userInfo(): AccountInfo {\r\n // return this.msalService.instance.getActiveAccount();\r\n return this.msalService.instance.getAllAccounts()[0];\r\n }\r\n\r\n public get isAuthenticated() {\r\n return this.authenticationStatusSubj.getValue();\r\n }\r\n public set isAuthenticated(value: boolean) {\r\n // if (this.authenticationStatusSubj.getValue() !== value) {\r\n // this.authenticationStatusSubj.next(value);\r\n // }\r\n this.authenticationStatusSubj.next(value);\r\n }\r\n\r\n public get inUserGroup(): boolean {\r\n return this.inUserGroupSubj.getValue();\r\n }\r\n public set inUserGroup(value: boolean) {\r\n if (this.inUserGroupSubj.getValue() !== value) {\r\n this.inUserGroupSubj.next(value);\r\n }\r\n }\r\n\r\n public get hasAdminRole(): boolean {\r\n return this.adminStatusSubj.getValue();\r\n }\r\n public set hasAdminRole(value: boolean) {\r\n if (this.adminStatusSubj.getValue() !== value) {\r\n this.adminStatusSubj.next(value);\r\n }\r\n }\r\n\r\n public get userGUID(): string {\r\n // return (this.userInfo.profile || {})['oid'];\r\n return this.userInfo?.localAccountId;\r\n }\r\n\r\n public get userUPN(): string {\r\n // return (this.userInfo.profile || {})['upn'];\r\n return this.userInfo?.username;\r\n }\r\n\r\n public get userSecurityRole(): SecurityRole {\r\n return this._userSecurityRole\r\n }\r\n\r\n getResourceForEndpoint(url: string): string {\r\n // return this.context.getResourceForEndpoint(url);\r\n return '';\r\n }\r\n\r\n public acquireToken() {\r\n const _this = this; // save outer this for inner function\r\n\r\n let errorMessage: string;\r\n return bindCallback(acquireTokenInternal, function (token: string) {\r\n if (!token && errorMessage) {\r\n throwError(errorMessage);\r\n }\r\n return token;\r\n })();\r\n\r\n function acquireTokenInternal(cb: any): string {\r\n let s = '';\r\n\r\n // _this.context.acquireToken(_this.configService.adalConfig.clientId, (error: string, tokenOut: string) => {\r\n // if (error) {\r\n // _this.context.error('Error when acquiring token', error);\r\n // errorMessage = error;\r\n // cb(null);\r\n // } else {\r\n // cb(tokenOut);\r\n // s = tokenOut;\r\n // }\r\n // });\r\n return s;\r\n }\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\n\r\nexport interface CanComponentDeactivate {\r\n canDeactivate: () => Observable | Promise | boolean;\r\n }\r\n\r\n @Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CanDeactivateGuard implements CanDeactivate {\r\n canDeactivate(component: CanComponentDeactivate): Observable | Promise | boolean {\r\n return component.canDeactivate ? component.canDeactivate() : true;\r\n }\r\n}\r\n","import { Injectable, isDevMode } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\n\r\nimport { environment } from '../../environments/environment';\r\n\r\nexport enum LogLevel {\r\n ERROR,\r\n WARNING,\r\n INFO,\r\n VERBOSE\r\n}\r\n\r\nexport function Logger(msg, lvl): void {\r\n const configService: ConfigService = new ConfigService();\r\n // configService.logging.newMsg( `${this.constructor.name}: ${msg}`, lvl);\r\n configService.logging.newMsg(msg, lvl);\r\n};\r\n// export function Logger(): void {}\r\n\r\n@Injectable()\r\nexport class ConfigService {\r\n private _componentName = '';\r\n public logging = {\r\n level: environment.loggingLevel,\r\n levelMap: {\r\n 'ERROR': {\r\n level: 0,\r\n log: (msg) => console.error(msg)\r\n },\r\n 'WARNING': {\r\n level: 1,\r\n log: (msg) => console.warn(msg)\r\n },\r\n 'INFO': {\r\n level: 2,\r\n log: (msg) => console.info(msg) //tslint:disable-line\r\n },\r\n 'VERBOSE': {\r\n level: 3,\r\n log: (msg) => console.log(msg)\r\n }\r\n },\r\n re: /\\w*-([A-Z]*):\\s/,\r\n newMsg: ( msg: string, msgLevel: string | number) => {\r\n let numericMsgLevel = LogLevel.VERBOSE;\r\n if (typeof(msgLevel) === 'string') {\r\n numericMsgLevel = LogLevel['msgLevel'] || LogLevel.VERBOSE;\r\n } else if (typeof(msgLevel) === 'number') {\r\n numericMsgLevel = msgLevel;\r\n }\r\n const logComponentName = `[${this._componentName || 'Unknown Component'}] `;\r\n this.logging.log(\r\n // `${new Date().toUTCString()}:${this.appVersion}-${LogLevel[numericMsgLevel]} [${this._componentName || 'Unknown Component'}] ${msg}`,\r\n `${new Date().toUTCString()}:${this.appVersion}-${LogLevel[numericMsgLevel]} ${LogLevel[numericMsgLevel]==='VERBOSE' ? logComponentName : ''}${msg}`,\r\n numericMsgLevel\r\n );\r\n },\r\n log: (msg: string, msgLevel?: number) => {\r\n if (window.console) {\r\n let msgLevelDesc = 'INFO';\r\n if (msgLevel) {\r\n msgLevelDesc = LogLevel[msgLevel];\r\n } else {\r\n msgLevelDesc = this.logging.re.exec(msg)[1] || 'VERBOSE';\r\n }\r\n if (this.logging.levelMap[msgLevelDesc].level <= this.logging.level) {\r\n this.logging.levelMap[msgLevelDesc].log(msg);\r\n }\r\n }\r\n }\r\n };\r\n\r\n public title = 'eSQEP';\r\n\r\n // public inactivity_timeout_warning_seconds = 10;\r\n // public inactivity_timeout_countdown_seconds = 20;\r\n // public inactivity_timeout_logout_seconds = 40;\r\n public inactivity_timeout_warning_seconds = 600;\r\n public inactivity_timeout_countdown_seconds = 300;\r\n public inactivity_timeout_logout_seconds = 1500;\r\n\r\n constructor() {}\r\n\r\n public get appVersion(): string {\r\n return APP_VERSION + '-' + environment.envName;\r\n };\r\n\r\n public get adalConfig(): any {\r\n return {\r\n tenant: environment.tenantId,\r\n clientId: environment.clientId,\r\n redirectUri: window.location.origin + '/adresponse',\r\n navigateToLoginRequestUrl: false,\r\n endpoints: [\r\n { [ environment.clientUrl ]: environment.clientId }\r\n ],\r\n postLogoutRedirectUri: window.location.origin + '/adresponse',\r\n expireOffsetSeconds: 600,\r\n };\r\n }\r\n\r\n public get shareServerUri(): string {\r\n return environment.shareUrl;\r\n }\r\n\r\n public get apiServerUri(): string {\r\n return environment.apiUrl;\r\n }\r\n\r\n public get devMode(): boolean {\r\n return isDevMode();\r\n }\r\n\r\n public set componentName(value: string) {\r\n this._componentName = value;\r\n }\r\n\r\n public get excludeExternalInactivePeople() {\r\n return environment['excludeExternalInactivePeople'] || false\r\n }\r\n\r\n public get blurNames() {\r\n return environment['blurNames'] || false\r\n }\r\n\r\n public get skillMatrixHeadings(): Array {\r\n return environment.skillMatrixHeadings;\r\n }\r\n\r\n public get clientLogoAsset(): string {\r\n return environment.clientLogoAsset;\r\n }\r\n\r\n public get navbarBgClass(): string {\r\n return environment.navbarBgClass || 'bg-dark';\r\n }\r\n\r\n public get skillMatrixFaId(): number {\r\n return environment.skillMatrixFaId || 48;\r\n }\r\n\r\n}\r\n\r\n// TODO: https://angular.io/guide/dependency-injection#dependency-injection-tokens\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\n// import { MsalGuard } from '@azure/msal-angular';\r\n\r\nimport { ExceptionComponent } from './exception.component';\r\nimport { HomeComponent } from './home.component';\r\nimport { LoggedOutComponent } from './logged-out.component';\r\nimport { LoginComponent } from './login.component';\r\nimport { OAuthCallbackComponent } from './adresponse.component';\r\nimport { PrivacyPolicyComponent } from '../core/privacy-policy.component';\r\nimport { TestComponent } from '../core/test.component';\r\n\r\nimport { AuthGuard } from '../auth.guard';\r\nimport { OAuthCallbackHandler } from './oauth-callback.guard';\r\nimport { MsalGuard, MsalRedirectComponent } from '@azure/msal-angular';\r\n\r\nconst routes: Routes = [\r\n // {path: 'adresponse', component: OAuthCallbackComponent, canActivate: [OAuthCallbackHandler]},\r\n {path: 'adresponse', component: MsalRedirectComponent}, // , canActivate: [OAuthCallbackHandler]},\r\n {path: 'exception/:type', component: ExceptionComponent},\r\n {path: 'home', component: HomeComponent, canActivate: [MsalGuard]},\r\n {path: 'legal/privacy', component: PrivacyPolicyComponent},\r\n {path: 'login', component: LoginComponent}, // canActivate: [AuthGuard]},\r\n {path: 'logged-out/:reason', component: LoggedOutComponent},\r\n {path: 'test', component: TestComponent},\r\n ];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n providers: [OAuthCallbackHandler]\r\n})\r\nexport class CoreRoutingModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { ClaimModule } from '../claim/claim.module';\r\nimport { ControlsModule } from '../controls/controls.module';\r\nimport { DashboardModule } from '../dashboard/dashboard.module';\r\nimport { OrgUnitModule } from '../org-unit/org-unit.module';\r\nimport { PersonModule } from '../person/person.module';\r\nimport { SkillModule } from '../skill/skill.module';\r\nimport { CoreRoutingModule } from './core-routing.module';\r\n\r\nimport { AlertComponent } from './alert.component';\r\nimport { ExceptionComponent } from './exception.component';\r\nimport { HomeComponent } from './home.component';\r\nimport { LoggedOutComponent } from './logged-out.component';\r\nimport { LoginComponent } from './login.component';\r\nimport { NavbarMenuComponent } from './navbar-menu.component';\r\nimport { OAuthCallbackComponent } from './adresponse.component';\r\nimport { TestComponent } from './test.component';\r\nimport { PrivacyPolicyComponent } from './privacy-policy.component';\r\n\r\nimport { AuthService } from 'app/core/auth.service';\r\nimport { AlertService } from 'app/core/alert.service';\r\nimport { ConfigService } from 'app/core/config.service';\r\nimport { NavigationService } from './navigation.service';\r\nimport { UitoolsService } from './uitools.service';\r\n\r\nimport { AdminGuard } from 'app/core/admin.guard';\r\nimport { JobRoleModule } from 'app/job-role/job-role.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ClaimModule,\r\n ControlsModule,\r\n DashboardModule,\r\n FormsModule,\r\n JobRoleModule,\r\n OrgUnitModule,\r\n PersonModule,\r\n SkillModule,\r\n CoreRoutingModule,\r\n ],\r\n declarations: [\r\n OAuthCallbackComponent,\r\n HomeComponent,\r\n AlertComponent,\r\n ExceptionComponent,\r\n TestComponent,\r\n PrivacyPolicyComponent,\r\n LoginComponent,\r\n LoggedOutComponent,\r\n NavbarMenuComponent,\r\n ],\r\n exports: [\r\n OAuthCallbackComponent,\r\n HomeComponent,\r\n AlertComponent,\r\n ExceptionComponent,\r\n TestComponent,\r\n PrivacyPolicyComponent,\r\n LoginComponent,\r\n LoggedOutComponent,\r\n NavbarMenuComponent,\r\n ],\r\n providers: [\r\n AdminGuard,\r\n AuthService,\r\n AlertService,\r\n ConfigService,\r\n NavigationService,\r\n UitoolsService\r\n ]\r\n})\r\nexport class CoreModule { }\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\n\r\nimport { AuthService } from '../core/auth.service';\r\nimport { SpinnerService } from 'app/controls/spinner.service';\r\n\r\nexport enum ExceptionTypes {\r\n NOT_AUTH,\r\n NOT_USER\r\n};\r\n\r\nexport enum ExceptionActions {\r\n LOGOUT,\r\n HOME\r\n}\r\n\r\n@Component({\r\n selector: 'ug-exception',\r\n templateUrl: './exception.component.html',\r\n styleUrls: ['./exception.component.css']\r\n})\r\n\r\nexport class ExceptionComponent implements OnInit {\r\n\r\n exceptionActions = ExceptionActions;\r\n\r\n @Input()\r\n exceptionType: number;\r\n\r\n exceptionConfig = {\r\n [ExceptionTypes.NOT_AUTH]: {\r\n title: 'Not authorised',\r\n description: 'You do not have permission to view the page that you requested',\r\n actions: [ this.exceptionActions.LOGOUT, this.exceptionActions.HOME]\r\n },\r\n [ExceptionTypes.NOT_USER]: {\r\n title: 'Not a valid user',\r\n description: `\r\n Although you have been successfully authenticated, you have not been enabled as a user of this system.\r\n Contact your system administrator to request user access.\r\n `,\r\n actions: [ this.exceptionActions.LOGOUT]\r\n }\r\n };\r\n\r\n constructor(\r\n private router: Router,\r\n private authService: AuthService,\r\n private route: ActivatedRoute,\r\n private spinnerService: SpinnerService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.spinnerService.reset(); // Cancel outstanding spinner. TODO: Should handle in spinner itself?\r\n if (!this.exceptionType) {\r\n this.exceptionType = ExceptionTypes[this.route.snapshot.paramMap.get('type').toUpperCase()];\r\n }\r\n }\r\n\r\n home() {\r\n this.router.navigate(['home']);\r\n }\r\n\r\n logout() {\r\n this.authService.logout();\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n I'm afraid I can't do that \r\n
\r\n
\r\n
{{exceptionConfig[exceptionType].title}}
\r\n

{{exceptionConfig[exceptionType].description}}

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n","import { Directive, ElementRef, Input, OnChanges, Renderer2 } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[ugHighlightMandatory]'\r\n})\r\nexport class HighlightMandatoryDirective implements OnChanges {\r\n @Input() ugHighlightMandatory: string;\r\n @Input() ugHiglightDisabled = false;\r\n constructor(private renderer: Renderer2, private el: ElementRef) { }\r\n\r\n ngOnChanges() {\r\n // if (this.ugHighlightMandatory === '' || this.ugHighlightMandatory === null) {\r\n if ((this.ugHighlightMandatory || '').length === 0 && !this.ugHiglightDisabled) {\r\n this.renderer.addClass(this.el.nativeElement, 'text-danger');\r\n } else {\r\n this.renderer.removeClass(this.el.nativeElement, 'text-danger');\r\n }\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\nimport { AuthService } from './auth.service';\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { ConfigService } from '../core/config.service';\r\nimport { PersonService } from '../person/person.service';\r\nimport { SpinnerService } from '../controls/spinner.service';\r\n\r\nimport { ApiException } from '../core/api-exception';\r\nimport { Person } from '../person/person';\r\n\r\n@Component({\r\n selector: 'ug-home',\r\n templateUrl: './home.component.demo.html',\r\n styleUrls: ['./home.component.css']\r\n})\r\nexport class HomeComponent implements OnInit {\r\n person = new Person();\r\n activeTabIndex = 0;\r\n logging: any;\r\n showStatusSummData = false;\r\n\r\n exceptionData = {\r\n 'PERSON_UUID': {\r\n level: AlertLevels.ERROR,\r\n code: 'HMC-001',\r\n message: 'Error retrieving user person details'\r\n } as AlertData,\r\n };\r\n\r\n constructor(\r\n public authService: AuthService,\r\n private alertService: AlertService,\r\n private configService: ConfigService,\r\n private personService: PersonService,\r\n private spinnerService: SpinnerService\r\n ) {\r\n this.logging = configService.logging;\r\n // this.logging.newMsg('User Info from JWT:' + JSON.stringify(this.authService.userInfo), 'VERBOSE');\r\n this.authService.authenticationStatusSubj.subscribe(\r\n status => {\r\n this.logging.newMsg('Home component ngOnInit isSignedIn=' + this.isSignedIn, 'VERBOSE');\r\n }\r\n );\r\n }\r\n\r\n get isSignedIn(): boolean {\r\n return this.authService.isAuthenticated;\r\n }\r\n\r\n get userGUID(): string {\r\n return this.authService.userGUID;\r\n }\r\n\r\n get userUPN(): string {\r\n return this.authService.userUPN;\r\n }\r\n\r\n get me(): Person {\r\n return this.authService.me;\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n My Submissions Summary\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\n\r\nimport { AuthService } from './auth.service';\r\n\r\n@Component({\r\n selector: 'esqep-logged-out', // tslint:disable-line: component-selector\r\n templateUrl: './logged-out.component.html',\r\n styleUrls: ['./logged-out.component.css']\r\n})\r\nexport class LoggedOutComponent implements OnInit {\r\n\r\n loggedOutText = 'You have been logged out';\r\n constructor(private authService: AuthService, private route: ActivatedRoute) { }\r\n\r\n ngOnInit() {\r\n const loggedOutReason = this.route.snapshot.paramMap.get('reason').toUpperCase();\r\n if (loggedOutReason === 'TIMEOUT') {\r\n this.loggedOutText += ' due to inactivity';\r\n }\r\n }\r\n\r\n login() {\r\n this.authService.login();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n Logged out \r\n
\r\n
\r\n \r\n

\r\n {{loggedOutText}}. To log back in please click the login button below and follow instructions to authenticate your details using Microsoft Active Directory.\r\n

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { Router} from '@angular/router';\r\nimport { MsalService } from '@azure/msal-angular';\r\nimport { AuthService } from './auth.service';\r\nimport { ConfigService } from './config.service';\r\n\r\n@Component({\r\n selector: 'ug-login',\r\n templateUrl: './login.component.html',\r\n styleUrls: ['./login.component.css']\r\n})\r\nexport class LoginComponent implements OnInit {\r\n\r\n constructor(private msalService: MsalService, private configService: ConfigService, private router: Router) { }\r\n\r\n ngOnInit() {\r\n // if (this.authService.isAuthenticated) {\r\n // if (this.authService.instance. .isAuthenticated) {\r\n // this.router.navigate(['home']);\r\n // }\r\n }\r\n\r\n login() {\r\n // this.msalService.loginRedirect();\r\n this.msalService.loginPopup();\r\n }\r\n\r\n get loginBgClass(): string {\r\n return this.configService.navbarBgClass;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n Please log in \r\n
\r\n
\r\n \r\n

\r\n You are currently logged out. In order to continue please click the button below and follow instructions to authenticate your details using Microsoft Active Directory. \r\n

\r\n

Please note: this will temporarily redirect you to an external Microsoft site

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { DefaultUrlSerializer, UrlTree } from '@angular/router';\r\nimport { Injectable } from \"@angular/core\";\r\n\r\n@Injectable()\r\nexport class LowerCaseUrlSerializer extends DefaultUrlSerializer {\r\n parse(url:string):UrlTree {\r\n return super.parse(url.toLowerCase());\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree, Router } from '@angular/router';\r\nimport { Observable, of } from 'rxjs';\r\nimport { AuthService } from './auth.service';\r\nimport { map } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ManagementRoleGuard implements CanActivate {\r\n\r\n constructor( private authService: AuthService, private router: Router) {}\r\n\r\n canActivate(\r\n next: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot\r\n ): Observable | Promise | boolean | UrlTree {\r\n return this.authService.personIsManagerRoleSubj.pipe(\r\n map(\r\n m => {\r\n return m ? true : this.router.parseUrl('/exception/not_auth')\r\n }\r\n )\r\n )\r\n }\r\n}\r\n","import { SecurityRoleKey } from './auth.service';\r\nimport { SecurityRole } from './security-role';\r\nimport { MenuItem } from './menu-item';\r\n\r\nexport const menuConfig: Array = [\r\n {\r\n itemName: 'Home',\r\n itemIconClass: 'fas fa-home',\r\n itemRoute: '/home',\r\n itemHighlight: true,\r\n minSecurityRole: SecurityRoleKey.User,\r\n routeIdentifier: 'HOME',\r\n subMenu: null,\r\n },\r\n {\r\n itemName: 'My Data',\r\n minSecurityRole: SecurityRoleKey.User,\r\n routeIdentifier: 'MY-DATA',\r\n subMenu: [\r\n {\r\n itemName: 'Published Claims',\r\n itemRoute: '/mydata/claims/published',\r\n minSecurityRole: SecurityRoleKey.User,\r\n routeIdentifier: 'MY-DATA_PUBLISHED-CLAIMS'\r\n },\r\n {\r\n dividerAfter: true,\r\n itemName: 'Shared Links',\r\n itemRoute: '/mydata/shared-links/list',\r\n minSecurityRole: SecurityRoleKey.User,\r\n routeIdentifier: 'MY-DATA_SHARED-LINKS'\r\n },\r\n {\r\n // dividerAfter: true,\r\n itemName: 'Bulk Claim',\r\n itemRoute: '/mydata/claims/bulk',\r\n minSecurityRole: SecurityRoleKey.User,\r\n routeIdentifier: 'MY-DATA_BULK-CLAIM'\r\n },\r\n {\r\n hideItem: true,\r\n itemName: 'Bulk Claim Summary',\r\n itemRoute: '/mydata/claims/bulk/summary',\r\n minSecurityRole: SecurityRoleKey.User,\r\n routeIdentifier: 'MY-DATA_BULK-CLAIM'\r\n },\r\n {\r\n hideItem: true,\r\n itemName: 'My Profile',\r\n itemRoute: 'mydata/person-extended-detail',\r\n minSecurityRole: SecurityRoleKey.User,\r\n routeIdentifier: 'MY-DATA_PROFILE'\r\n }\r\n ]\r\n },\r\n {\r\n itemName: 'Analysis',\r\n minSecurityRole: SecurityRoleKey.User,\r\n routeIdentifier: 'ANALYSIS',\r\n subMenu: [\r\n {\r\n itemName: 'Dashboard',\r\n itemRoute: '/dashboard',\r\n minSecurityRole: SecurityRoleKey.User,\r\n routeIdentifier: 'ANALYSIS_DASHBOARD'\r\n },\r\n {\r\n itemName: 'Job Roles',\r\n itemRoute: '/job-role-analysis',\r\n minSecurityRole: SecurityRoleKey.Admin,\r\n routeIdentifier: 'ANALYSIS_JOB-ROLES'\r\n },\r\n {\r\n itemName: 'Competency and Skill Matrix Summary',\r\n itemRoute: '/competency-skill-matrix-summ',\r\n minSecurityRole: SecurityRoleKey.Admin,\r\n routeIdentifier: 'ANALYSIS_SKILL-MATRIX',\r\n },\r\n {\r\n itemName: 'Competency and Skill Matrix',\r\n itemRoute: '/competency-skill-matrix',\r\n minSecurityRole: SecurityRoleKey.User,\r\n routeIdentifier: 'ANALYSIS_SKILL-MATRIX',\r\n },\r\n {\r\n itemName: 'Role Matrix',\r\n itemRoute: '/job-role-matrix',\r\n minSecurityRole: SecurityRoleKey.User,\r\n routeIdentifier: 'ANALYSIS_SKILL-MATRIX',\r\n },\r\n {\r\n hideItem: true,\r\n itemName: 'Team Succession',\r\n itemRoute: '/team-succession',\r\n minSecurityRole: SecurityRoleKey.Admin,\r\n routeIdentifier: 'ANALYSIS_TEAM-SUCCESSION',\r\n dividerAfter: true\r\n },\r\n {\r\n hideItem: true,\r\n itemName: 'Performance Summary',\r\n itemRoute: '/performance-summ',\r\n minSecurityRole: SecurityRoleKey.Admin,\r\n routeIdentifier: 'ANALYSIS_PERF-SUMM',\r\n },\r\n {\r\n hideItem: true,\r\n itemName: 'Performance Management',\r\n itemRoute: '/performance-management',\r\n minSecurityRole: SecurityRoleKey.Admin,\r\n routeIdentifier: 'ANALYSIS_PERF-MGMT',\r\n }\r\n ],\r\n },\r\n {\r\n itemName: 'Admin',\r\n minSecurityRole: SecurityRoleKey.Admin,\r\n routeIdentifier: 'ADMIN',\r\n subMenu: [\r\n {\r\n dividerAfter: true,\r\n itemName: 'Import Users',\r\n itemRoute: '/graph/user-import',\r\n minSecurityRole: SecurityRoleKey.Admin,\r\n routeIdentifier: 'ADMIN_USER-IMPORT'\r\n },\r\n {\r\n dividerAfter: true,\r\n itemName: 'User Security Roles',\r\n itemRoute: '/user-security-roles',\r\n minSecurityRole: SecurityRoleKey.Admin,\r\n routeIdentifier: 'ADMIN_USER-SECURITY-ROLES'\r\n },\r\n {\r\n hideItem: false,\r\n itemName: 'Skills Matrix Divisions',\r\n itemRoute: '/skills-matrix-divisions',\r\n minSecurityRole: SecurityRoleKey.Admin,\r\n routeIdentifier: 'ADMIN_SM-DIVISIONS'\r\n },\r\n {\r\n itemName: 'Watch hierarchy',\r\n itemRoute: '/watch-hierarchy',\r\n minSecurityRole: SecurityRoleKey.Admin,\r\n routeIdentifier: 'ADMIN_WATCH-HIERARCHY'\r\n },\r\n {\r\n dividerAfter: true,\r\n itemName: 'Group subjects',\r\n itemRoute: '/group-subjects',\r\n minSecurityRole: SecurityRoleKey.Admin,\r\n routeIdentifier: 'ADMIN_GROUP-SUBJECTS'\r\n },\r\n {\r\n itemName: 'Job Grades',\r\n itemRoute: '/job-grades',\r\n minSecurityRole: SecurityRoleKey.Admin,\r\n routeIdentifier: 'ADMIN_JOB-GRADES'\r\n },\r\n {\r\n itemName: 'Job Families',\r\n itemRoute: '/job-families',\r\n minSecurityRole: SecurityRoleKey.Admin,\r\n routeIdentifier: 'ADMIN_JOB-FAMILIES'\r\n },\r\n {\r\n itemName: 'Job Roles',\r\n itemRoute: '/job-roles',\r\n minSecurityRole: SecurityRoleKey.Admin,\r\n routeIdentifier: 'ADMIN_JOB-ROLES'\r\n }\r\n ]\r\n },\r\n {\r\n itemName: 'Superuser',\r\n minSecurityRole: SecurityRoleKey.Superuser,\r\n routeIdentifier: 'SUPERUSER',\r\n subMenu: [\r\n {\r\n itemName: 'Security Roles',\r\n itemRoute: '/superuser/security-roles',\r\n minSecurityRole: SecurityRoleKey.Superuser,\r\n routeIdentifier: 'SUPERUSER_SECURITY-ROLES'\r\n }\r\n ]\r\n }\r\n ]\r\n\r\nexport const RouteSecurityRole: {[routeIdentifier: string]: string} = menuConfig.reduce( (m, r) => {\r\n if (r.routeIdentifier) {\r\n m[r.routeIdentifier] = r.minSecurityRole;\r\n }\r\n if (r.subMenu) {\r\n r.subMenu.reduce(\r\n (m1, r1) => {\r\n if (r1.routeIdentifier) {\r\n m1[r1.routeIdentifier] = r1.minSecurityRole;\r\n }\r\n return m1;\r\n }, m\r\n )\r\n }\r\n return m;\r\n}, {})\r\n","import { Component, Input, OnDestroy, OnInit } from '@angular/core';\r\n\r\nimport { AuthService } from './auth.service';\r\nimport { SecurityRole } from './security-role';\r\nimport { Subscription, combineLatest } from 'rxjs';\r\nimport { AlertService, AlertData, AlertLevels } from './alert.service';\r\n\r\nimport { menuConfig, RouteSecurityRole } from './menus';\r\nimport { MenuItem } from './menu-item';\r\n\r\n@Component({\r\n selector: 'esqep-navbar-menu', // tslint:disable-line: component-selector\r\n templateUrl: './navbar-menu.component.html',\r\n styleUrls: ['./navbar-menu.component.css']\r\n})\r\nexport class NavbarMenuComponent implements OnDestroy, OnInit {\r\n\r\n @Input() isSignedIn = false;\r\n @Input() inUserGroup = false;\r\n @Input() hasAdminRole = false;\r\n\r\n userSecurityRole: SecurityRole = new SecurityRole();\r\n personHasManagementPosition = false;\r\n\r\n private roleLookup: any;\r\n private navbarMenuSubs = new Subscription();\r\n menuLoading = false;\r\n\r\n exceptionData = {\r\n 'SECURITY_ROLES': {\r\n level: AlertLevels.ERROR,\r\n code: 'NVM-001',\r\n message: 'Unable to retrieve security roles'\r\n } as AlertData,\r\n }\r\n\r\n menuData = menuConfig;\r\n\r\n constructor(private alertService: AlertService, private authService: AuthService) {}\r\n\r\n ngOnInit() {\r\n // console.dir(RouteSecurityRole);\r\n this.menuLoading = true;\r\n this.navbarMenuSubs.add(\r\n combineLatest(\r\n this.authService.securityRoleLookupSubj, this.authService.personSecurityRoleSubj, this.authService.personIsManagerRoleSubj\r\n )\r\n .subscribe(\r\n ([srl, psr, pmp]) => {\r\n this.roleLookup = srl;\r\n this.userSecurityRole = psr;\r\n this.personHasManagementPosition = pmp;\r\n this.menuLoading = false;\r\n },\r\n err => this.alertService.createAlert2(this.exceptionData['SECURITY_ROLES'], err),\r\n )\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n this.navbarMenuSubs.unsubscribe();\r\n }\r\n\r\n // showMenuItem(minSecurityRole: string): boolean {\r\n // return this.roleLookup[minSecurityRole].securityLevel <= this.userSecurityRole.securityLevel;\r\n // }\r\n\r\n showMenuItem(menuItem: MenuItem): boolean {\r\n return !menuItem.hideItem && (\r\n this.roleLookup[menuItem.minSecurityRole].securityLevel <= this.userSecurityRole.securityLevel ||\r\n (menuItem.allowManagementPositionAccess && this.personHasManagementPosition)\r\n );\r\n }\r\n\r\n get menuReady(): boolean {\r\n return !this.menuLoading && this.isSignedIn && this.inUserGroup;\r\n }\r\n\r\n get menuSpinner(): boolean {\r\n return this.menuLoading && this.isSignedIn && this.inUserGroup;\r\n }\r\n\r\n getSubMenuItems(topMenuItem: MenuItem): Array {\r\n if (topMenuItem.subMenu) {\r\n return topMenuItem.subMenu.filter( sm => {return this.showMenuItem(sm)});\r\n }\r\n return [];\r\n }\r\n\r\n get visibleTopMenus(): MenuItem[] {\r\n return this.menuData.filter(mi => this.showMenuItem(mi));\r\n }\r\n\r\n getMenulistItemClass(menuItem: MenuItem): Array {\r\n let classArray = new Array();\r\n classArray = classArray.concat('nav-item');\r\n if (menuItem.itemHighlight) {\r\n classArray = classArray.concat('fw-bold');\r\n }\r\n // console.log(`menuItem.subMenu=${menuItem.subMenu}`)\r\n if (menuItem.subMenu !== null) {\r\n classArray = classArray.concat('dropdown')\r\n }\r\n // console.table(menuItem);\r\n // console.log(classArray);\r\n return classArray;\r\n }\r\n\r\n getMenuLinkItemClass(menuItem: MenuItem): Array {\r\n let classArray = new Array();\r\n classArray = classArray.concat('nav-link');\r\n if (menuItem.itemHighlight) {\r\n classArray = classArray.concat('fw-bold');\r\n }\r\n // console.log(`menuItem.subMenu=${menuItem.subMenu}`)\r\n if (menuItem.subMenu !== null) {\r\n classArray = classArray.concat('dropdown-toggle')\r\n }\r\n // console.table(menuItem);\r\n // console.log(classArray);\r\n return classArray;\r\n }\r\n}\r\n","\r\n\r\n\r\n","import { Injectable } from '@angular/core';\r\n\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class NavigationService {\r\n\r\n private tabIndexSource = new BehaviorSubject(0);\r\n\r\n tabIndex = this.tabIndexSource.asObservable();\r\n\r\n constructor() { }\r\n\r\n get currentTabIndex() {\r\n return this.tabIndexSource.getValue();\r\n }\r\n\r\n clickTab(tabIndex: number) {\r\n this.tabIndexSource.next(tabIndex);\r\n }\r\n\r\n prevTab() {\r\n this.tabIndexSource.next(this.currentTabIndex - 1);\r\n }\r\n\r\n nextTab() {\r\n this.tabIndexSource.next(this.currentTabIndex + 1);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot, Router, RouterStateSnapshot } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\n\r\nimport { AuthService } from './auth.service';\r\nimport { ConfigService, Logger, LogLevel } from 'app/core/config.service';\r\n\r\n@Injectable()\r\nexport class OAuthCallbackHandler implements CanActivate {\r\n constructor(private router: Router, private authService: AuthService, private configService: ConfigService) {}\r\n\r\n canActivate(\r\n next: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot): Observable | Promise | boolean {\r\n\r\n console.log('OauthCallbackHandler ActivatedRouteSnapshot:');\r\n console.dir(next);\r\n console.log('OauthCallbackHandler RouterStateSnapshot:');\r\n console.dir(state);\r\n\r\n if (this.authService.handleAuthCallback()) {\r\n const returnUrl = next.queryParams['returnUrl'];\r\n if (!returnUrl) {\r\n // const storedUrl = sessionStorage.getItem('esqep.login.redirect');\r\n // if (storedUrl) {\r\n // Logger(`Retrieved url from storage: ${storedUrl}`, LogLevel.VERBOSE);\r\n // sessionStorage.removeItem('esqep.login.redirect');\r\n // this.router.navigate([storedUrl]);\r\n // } else {\r\n // this.router.navigate(['home']);\r\n // }\r\n // this.router.navigate(['home']);\r\n } else {\r\n this.router.navigate([returnUrl], {queryParams: next.queryParams });\r\n }\r\n return true;\r\n } else {\r\n console.log('%c OAuthCallbackHandler navigated to login', 'color:green; font-weight:bold;');\r\n this.router.navigate(['login']);\r\n return false;\r\n }\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\nimport { AuthService } from '../core/auth.service';\r\nimport { ConfigService } from '../core/config.service';\r\n\r\n@Component({\r\n selector: 'ug-privacy-policy',\r\n templateUrl: './privacy-policy.component.html',\r\n styleUrls: ['./privacy-policy.component.css']\r\n})\r\nexport class PrivacyPolicyComponent implements OnInit {\r\n\r\n dataCollectionConsent: boolean;\r\n dataSharingConsent: boolean;\r\n\r\n constructor(public authService: AuthService, public configService: ConfigService) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","
\r\n
\r\n

Privacy Policy

\r\n

We take the protection and privacy of your data seriously.

\r\n

The {{configService.title}} app is used by your employer to support their business processes including \r\n those such as:

\r\n
    \r\n
  • managing deployment of workers to projects or into corporate roles;
  • \r\n
  • demonstrating that workers deployed are suitably qualified and experienced to be \r\n considered competent in the role the worker is assigned;
  • \r\n
\r\n

To achieve this {{configService.title}} asks you, the user, to enter relevant skills, competency and \r\n qualifications information. You may opt to upload evidence in support of this, such as \r\n educational certificates.

\r\n

Your data, including uploaded files, is stored on a secure file server in line with GDPR \r\n requirements.

\r\n

You are able to decide what skills, qualifications and related files you want to enter and use in \r\n {{configService.title}}. At any time, you may amend or delete such data.

\r\n

We do not share your data with third parties other than your employer. Your employer may \r\n be required to demonstrate to third parties, such as Regulatory Bodies or clients. Your \r\n employer can provide you with further details of how they may use these details.

\r\n

{{configService.title}} does not have automatic decision-making functionality.

\r\n

Need to have the following opt-in consents, which the user is asked to opt into when they first \r\n use {{configService.title}}. The user can choose to opt out of any of these at a later point in time.

\r\n

{{configService.title}} will store your data in line with your employer’s policy for record retention for \r\n this type of data, for their legitimate needs.

\r\n

Needs to contain wording that explains what data the app gets from its data source and that \r\n if a user wants to change consent for those aspects that they need to do so within the \r\n source system. Similarly, if that data needs up dating then the user needs to make the \r\n changes at source.

\r\n

If you have any concerns regarding data privacy and protection, please contact your \r\n employer’s DPO at: XXXXXX@abdef.com

\r\n
Glossary of terms
\r\n
\r\n
Term 1
\r\n
Definition 1
\r\n
Term 2
\r\n
Definition 2
\r\n
\r\n May need to add a disclaimer that we may be required to share data in some legal circumstances.\r\n
\r\n
\r\n
\r\n
Opt-ins and Consent
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, Router } from '@angular/router';\r\n\r\nimport { Observable, combineLatest, of } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\n\r\nimport { AuthService } from './auth.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SecurityRoleGuard implements CanActivate {\r\n\r\n constructor( private authService: AuthService, private router: Router) {}\r\n\r\n canActivate(\r\n next: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot): Observable | Promise | boolean {\r\n if (next.data['minimumRole']) {\r\n return combineLatest(\r\n this.authService.securityRoleLookupSubj,\r\n this.authService.personSecurityRoleSubj\r\n ).pipe(\r\n map(\r\n ([securityRoleLookup, personSecurityRole]) => {\r\n const requiredSecurityRole = securityRoleLookup[next.data['minimumRole']];\r\n const allowAccess = requiredSecurityRole && (personSecurityRole.securityLevel >= requiredSecurityRole.securityLevel);\r\n if (!allowAccess) {\r\n this.router.navigate(['/exception/not_auth'])\r\n };\r\n return allowAccess;\r\n }\r\n )\r\n )\r\n } else {\r\n console.log('CONFIG ERROR: minimum role not defined for this route');\r\n return of(false);\r\n }\r\n }\r\n}\r\n","export class SecurityRole {\r\n roleIdentifier: string;\r\n id: number;\r\n name: string;\r\n description: string;\r\n securityLevel: number;\r\n canImpersonate: boolean;\r\n maxImpersonationLevel: number;\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\nimport { TextFilterControlComponent } from '../controls/text-filter-control.component';\r\nimport { KnowledgeSelectComponent } from '../skill/knowledge-select.component';\r\n\r\nimport { Skill } from '../skill/skill';\r\n\r\n@Component({\r\n selector: 'ug-test',\r\n templateUrl: './test.component.html',\r\n styleUrls: ['./test.component.css']\r\n})\r\nexport class TestComponent implements OnInit {\r\n\r\n selectedCompAttr = new Skill();\r\n filter = '';\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n changed(newValue) {\r\n console.log(newValue);\r\n }\r\n\r\n}\r\n","
\r\n
\r\n \r\n
\r\n {{selectedCompAttr | json}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport {\r\n HttpRequest,\r\n HttpHandler,\r\n HttpEvent,\r\n HttpInterceptor\r\n} from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { AuthService } from './auth.service';\r\n\r\n@Injectable()\r\nexport class TimeoutInterceptor implements HttpInterceptor {\r\n\r\n constructor(private authService: AuthService) {}\r\n\r\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\r\n this.authService.authTimeoutSubj.next(true);\r\n return next.handle(request);\r\n }\r\n}\r\n","import { HttpHandler } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\n\r\nimport { Collapse, Modal, Tab} from 'bootstrap';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UitoolsService {\r\n\r\n constructor() { }\r\n\r\n public toggleModal(modalElementId: string) {\r\n Modal.getOrCreateInstance(modalElementId).toggle();\r\n }\r\n\r\n public toggleCollapseById(collapseElementId: string) {\r\n Collapse.getOrCreateInstance(collapseElementId).toggle();\r\n }\r\n\r\n public toggleCollapseByClass(collapseClass: string) {\r\n const collapseTarget = document.getElementsByClassName(collapseClass);\r\n Array.from(collapseTarget).forEach( ct => {\r\n try {\r\n const bsCollapse = Collapse.getOrCreateInstance(ct);\r\n bsCollapse.toggle();\r\n } catch {\r\n console.log('Error');\r\n }\r\n })\r\n }\r\n\r\n public showTab(tabElementId: string) {\r\n const bsTab = Tab.getInstance(tabElementId);\r\n if (bsTab) {\r\n bsTab.show();\r\n }\r\n // Tab.getOrCreateInstance(tabElementId).show();\r\n }\r\n\r\n}\r\n","import { Component, OnDestroy, OnInit } from '@angular/core';\r\n\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\n\r\nimport { DashboardService } from '../dashboard/dashboard.service';\r\n\r\nimport { ChartStackedBarHorizComponent } from '../dashboard/chart-stacked-bar-horiz.component';\r\nimport { json, formatPrefix } from 'd3';\r\n\r\n@Component({\r\n selector: 'ug-analysis-dashboard',\r\n templateUrl: './analysis-dashboard.component.html',\r\n styleUrls: ['./analysis-dashboard.component.scss']\r\n})\r\nexport class AnalysisDashboardComponent implements OnDestroy, OnInit {\r\n\r\n chartDataArray: Array = [];\r\n chartKeys: Array = [];\r\n\r\n dashboardChartId: string;\r\n dashboardChartCategoryName: string;\r\n\r\n activeDbChartItemIndex: number;\r\n fetchingData = false;\r\n\r\n showDataFlags: Array = [];\r\n\r\n dashboardChartList = [\r\n {\r\n name: 'Status vs Discipline',\r\n id: 'statusVsDiscipline',\r\n description: 'This chart shows a breakdown of claim status distribution for each discipline',\r\n yCategoryName: 'Discipline',\r\n colorClasses: 'bg-primary text-light',\r\n getData: () => { return this.dashboardService.getClaimStatusVsDiscipline(); }\r\n },\r\n {\r\n name: 'Status vs Skill',\r\n id: 'statusVsSkill',\r\n description: 'This chart shows a breakdown of claim status distribution for each skill',\r\n yCategoryName: 'Skill',\r\n colorClasses: 'bg-primary text-light',\r\n getData: () => { return this.dashboardService.getClaimStatusVsSkill(); }\r\n },\r\n {\r\n name: 'Status vs Org Unit',\r\n id: 'statusVsOrgUnit',\r\n description: 'This chart shows a breakdown of claim status distribution for each organisation unit',\r\n yCategoryName: 'Organisation Unit',\r\n colorClasses: 'bg-primary text-light',\r\n getData: () => { return this.dashboardService.getClaimStatusVsOrgUnit(); }\r\n },\r\n {\r\n name: 'Level vs Discipline',\r\n id: 'levelVsDiscipline',\r\n description: 'This chart shows a breakdown of claim level distribution per claim level set for each discipline',\r\n yCategoryName: 'Discipline',\r\n colorClasses: 'bg-info text-light',\r\n getData: () => { return this.dashboardService.getClaimLevelVsDiscipline(); }\r\n },\r\n {\r\n name: 'Level vs Org Unit',\r\n id: 'levelVsOrgUnit',\r\n description: 'This chart shows a breakdown of claim level distribution per claim level set for each organisation unit',\r\n yCategoryName: 'Organisation Unit',\r\n colorClasses: 'bg-info text-light',\r\n getData: () => { return this.dashboardService.getClaimLevelVsOrgUnit(); }\r\n },\r\n ];\r\n\r\n private ngUnsubscribe: Subject = new Subject();\r\n\r\n constructor(private dashboardService: DashboardService) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n ngOnDestroy() {\r\n this.ngUnsubscribe.next(true);\r\n this.ngUnsubscribe.complete();\r\n }\r\n\r\n onDbChartItemClick(itemIndex: number) {\r\n if (this.fetchingData) { return; }\r\n this.fetchingData = true;\r\n console.log(`Clicked on ${this.dashboardChartList[itemIndex].name}`);\r\n this.activeDbChartItemIndex = itemIndex;\r\n this.dashboardChartList[itemIndex].getData()\r\n .pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n )\r\n .subscribe(\r\n r => {\r\n this.chartDataArray = [];\r\n this.showDataFlags = new Array(r.length).fill(false);\r\n for (const chartDataSet of r) {\r\n const chartData = [];\r\n let chartKeys = [];\r\n for (const dataRow of chartDataSet.groupSummary) {\r\n const chartRow = {};\r\n if (chartKeys.length === 0) {\r\n chartKeys = dataRow.itemSummary.map( s => s.itemName );\r\n }\r\n chartRow['category'] = dataRow.categoryName;\r\n for (const statusRow of dataRow.itemSummary) {\r\n chartRow[statusRow.itemName] = statusRow.count;\r\n }\r\n chartRow['total'] = dataRow.itemSummary.map(d1 => d1.count).reduce( (a, b) => a + b, 0);\r\n chartData.push(chartRow);\r\n }\r\n this.dashboardChartId = this.dashboardChartList[itemIndex].id;\r\n this.dashboardChartCategoryName = this.dashboardChartList[itemIndex].yCategoryName;\r\n console.log(JSON.stringify(chartData));\r\n this.chartDataArray.push(\r\n {\r\n data: chartData,\r\n keys: chartKeys,\r\n title: chartDataSet.groupName\r\n }\r\n );\r\n }\r\n this.fetchingData = false;\r\n }\r\n );\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n

Analysis Dashboard

\r\n
\r\n \r\n
\r\n
\r\n
{{dbChartItem.name}}
\r\n

\r\n

{{dbChartItem.description}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
= 0\">\r\n Click above to view chart\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

Fetching Data

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
= 0)\">\r\n
\r\n
\r\n \r\n Filter by:\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{chartData.title}} Chart {{i+1}} of {{chartDataArray.length}}\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, Input, OnChanges, ViewEncapsulation } from '@angular/core';\r\nimport * as d3 from 'd3';\r\n\r\nimport { DashboardService } from '../dashboard/dashboard.service';\r\n\r\n@Component({\r\n encapsulation: ViewEncapsulation.None, // Allow styles on injected elements\r\n selector: 'ug-chart-bar-horiz',\r\n templateUrl: './chart-bar-horiz.component.html',\r\n styleUrls: ['./chart-bar-horiz.component.css']\r\n})\r\nexport class ChartBarHorizComponent implements OnChanges {\r\n\r\n @Input()\r\n chartId: string;\r\n\r\n @Input()\r\n chartData: Array;\r\n\r\n chartHeight: number;\r\n\r\n constructor(public dashboardService: DashboardService) { }\r\n\r\n ngOnChanges() {\r\n\r\n if (!this.chartData) { return; }\r\n\r\n const statusList = this.chartData.map( d => { return d.label; });\r\n\r\n const barHeight = 50;\r\n const height = barHeight * this.chartData.length;\r\n const width = 540;\r\n const margin = 10;\r\n\r\n this.chartHeight = height;\r\n\r\n const x = d3.scaleLinear()\r\n .range([0, width]);\r\n const chart = d3.select('#' + this.chartId)\r\n .attr('width', width + 100)\r\n .style('margin', margin);\r\n\r\n const yScale = d3.scaleBand()\r\n .domain(statusList)\r\n .range([0, height]);\r\n const xScale = d3.scaleLinear()\r\n .domain([0, d3.max(this.chartData, function(d) { return d.value; })])\r\n .range([0, width]);\r\n\r\n x.domain([0, d3.max(this.chartData, function(d) { return d.value; })]);\r\n\r\n // chart.attr('viewBox', `-25 0 ${width + (2 * margin)} ${height + ( 2 * margin )}`);\r\n // chart.attr('viewBox', `-25 0 ${width + (2 * margin)} ${(height * 1.2) + ( 2 * margin )}`);\r\n chart.attr('viewBox', `-25 0 ${width} ${height * 1.2}`);\r\n\r\n chart.attr('height', height);\r\n\r\n const bar = chart.selectAll('g')\r\n .data(this.chartData)\r\n .enter()\r\n .append('g')\r\n .attr('class', 'bar')\r\n .attr('transform', function(d, i) { return `translate(0, ${i * barHeight})`; });\r\n bar.append('rect')\r\n .attr('width', function(d) { return x(d.value); })\r\n .attr('height', barHeight - 1 );\r\n bar.append('text')\r\n .attr('x', function(d) { return x(d.value) - 3; })\r\n .attr('y', barHeight / 3)\r\n .attr('dy', '.75em')\r\n .text(function(d) { return d.value; });\r\n\r\n const xAxis = d3.axisBottom(xScale)\r\n .tickSizeOuter(0)\r\n .tickArguments([d3.max(this.chartData, function(d) { return d.value; })]);\r\n const yAxis = d3.axisLeft(yScale);\r\n chart.append('g')\r\n .classed('x axis', true)\r\n .attr('transform', `translate(0, ${height})`)\r\n .call(xAxis);\r\n chart.append('g')\r\n .classed('y axis', true)\r\n .call(yAxis);\r\n }\r\n}\r\n","\r\n","import { AfterViewChecked, AfterViewInit, OnChanges, Component, Input, ViewEncapsulation } from '@angular/core';\r\n\r\nimport { DashboardService } from './dashboard.service';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport * as d3 from 'd3';\r\n\r\n@Component({\r\n encapsulation: ViewEncapsulation.None, // Allow styles on injected elements\r\n selector: 'ug-chart-clustered-bar',\r\n templateUrl: './chart-clustered-bar.component.html',\r\n styleUrls: ['./chart-clustered-bar.component.css']\r\n})\r\nexport class ChartClusteredBarComponent implements AfterViewInit, /*AfterViewChecked,*/ OnChanges { // , AfterViewInit {\r\n /** Use AfterViewChecked() to ensue all dynamic attributes are set up before\r\n * generating charts\r\n */\r\n\r\n @Input()\r\n chartId: string;\r\n\r\n @Input()\r\n chartIndex: number;\r\n\r\n @Input()\r\n chartData: Array;\r\n\r\n @Input()\r\n chartKeys: Array;\r\n\r\n @Input()\r\n categoryName: string;\r\n\r\n @Input()\r\n chartTitle: string;\r\n\r\n chartHeight: number;\r\n\r\n chartContainerElementId: string;\r\n\r\n chartDataFeed: BehaviorSubject = new BehaviorSubject(false);\r\n\r\n constructor(public dashboardService: DashboardService) { }\r\n\r\n ngOnChanges() {\r\n this.chartDataFeed.next(true);\r\n }\r\n\r\n ngAfterViewInit() {\r\n // this.dashboardService.dashboardDataFeed.subscribe(\r\n // statusSummary => {\r\n // console.log('statusSummaryFeed: ' + JSON.stringify(statusSummary));\r\n // }\r\n // );\r\n this.chartDataFeed.subscribe(\r\n status => {\r\n if ((this.chartData || []).length === 0) { return; }\r\n if ((this.chartKeys || []).length === 0) { return; }\r\n console.table(this.chartData);\r\n this.drawChart();\r\n }\r\n )\r\n }\r\n\r\n // ngAfterViewChecked() {\r\n\r\n // // https://stackoverflow.com/questions/45211408/making-a-grouped-bar-chart-using-d3-js\r\n // // https://bl.ocks.org/mbostock/3887051\r\n // // console.log('In clustered bar AfterViewChecked()');\r\n\r\n // if ((this.chartData || []).length === 0) { return; }\r\n // if ((this.chartKeys || []).length === 0) { return; }\r\n // // console.log('Chart Data: ' + JSON.stringify(this.chartData));\r\n // // console.log('Chart Keys: ' + JSON.stringify(this.chartKeys));\r\n\r\n // this.drawChart();\r\n // }\r\n\r\n\r\n private drawChart() {\r\n this.chartContainerElementId = this.chartId;\r\n d3.select('#' + this.chartContainerElementId).select('svg').remove();\r\n\r\n const d3ContainerNode = d3.select('#' + this.chartContainerElementId).node() as HTMLElement;\r\n\r\n // console.log('Width: ' + d3.select('#' + this.chartContainerElementId).node().getBoundingClientRect().width);\r\n console.log('Width: ' + d3ContainerNode.getBoundingClientRect().width);\r\n\r\n let availableWidth = d3ContainerNode.getBoundingClientRect().width -\r\n parseInt(window.getComputedStyle(document.getElementById(this.chartContainerElementId)).getPropertyValue('padding-left'), 10) -\r\n parseInt(window.getComputedStyle(document.getElementById(this.chartContainerElementId)).getPropertyValue('padding-right'), 10);\r\n\r\n // let availableWidth = (parseInt(d3.select('#' + this.chartContainerElementId).node().getBoundingClientRect().width, 10) -\r\n // parseInt(window.getComputedStyle(document.getElementById(this.chartContainerElementId)).getPropertyValue('padding-left'), 10) -\r\n // parseInt(window.getComputedStyle(document.getElementById(this.chartContainerElementId)).getPropertyValue('padding-right'), 10));\r\n\r\n if (availableWidth < 1000) {\r\n availableWidth = 1000;\r\n }\r\n\r\n const mql1200 = window.matchMedia('(max-width: 1200px)');\r\n const mql1600 = window.matchMedia('(max-width: 1600px)');\r\n if (mql1200.matches) { availableWidth = 1000}\r\n if (mql1600.matches) { availableWidth = 1400}\r\n\r\n console.log('Available Width: ' + availableWidth);\r\n\r\n // console.log('Width: ' + d3.select('#' + this.chartContainerElementId).node().getBoundingClientRect().width);\r\n\r\n const chartMargin = { top: 20, right: 200, bottom: 60, left: 500 };\r\n const maxChartTotal = d3.max(this.chartData, (d) => Math.max(d['role'], d['person']));\r\n\r\n chartMargin.left = 50 + (Math.max(...this.chartData.map(c => c.category.length)) * 5);\r\n\r\n availableWidth = (maxChartTotal * 40 / Math.pow(Math.log10(maxChartTotal), 2)) + chartMargin.left + chartMargin.right;\r\n\r\n console.log('Bounding Width: ' + d3ContainerNode.getBoundingClientRect().width);\r\n // console.log('Width: ' + d3.select('#' + this.chartContainerElementId).node().getBoundingClientRect().width);\r\n\r\n const keyHeight = this.chartKeys.length * 20;\r\n const dataHeight = this.chartData.length * 40;\r\n const chartWidth = availableWidth - chartMargin.left - chartMargin.right;\r\n const width = availableWidth - chartMargin.left - chartMargin.right;\r\n const chartHeight = keyHeight > dataHeight ? keyHeight : dataHeight;\r\n const height = keyHeight > dataHeight ? keyHeight : dataHeight;\r\n\r\n\r\n const chart = d3.select('#' + this.chartContainerElementId).append('svg')\r\n .attr('width', availableWidth)\r\n // .attr('width', width)\r\n .attr('height', chartHeight + chartMargin.top + chartMargin.bottom)\r\n // .style('margin', JSON.stringify(chartMargin))\r\n .style('margin-top', chartMargin.top)\r\n .style('margin-bottom', chartMargin.bottom)\r\n .style('margin-left', chartMargin.left)\r\n .style('margin-right', chartMargin.right)\r\n .attr('preserveAspectRatio', 'none');\r\n const g = chart.append('g').attr('transform', `translate(${chartMargin.left}, ${chartMargin.top})`);\r\n\r\n const y0 = d3.scaleBand()\r\n .rangeRound([0, height])\r\n .paddingInner(0.1);\r\n const y1 = d3.scaleBand()\r\n .padding(0.05);\r\n const x = d3.scaleLinear()\r\n .rangeRound([0, width]);\r\n const z = d3.scaleOrdinal(d3.schemeCategory10);\r\n\r\n const data = this.chartData;\r\n const keys = this.chartKeys;\r\n\r\n y0.domain(data.map(function (d) { return d.category; }));\r\n y1.domain(keys).rangeRound([0, y0.bandwidth()]);\r\n x.domain([0, d3.max(data, function (d) { return d3.max(keys, function (key) { return d[key]; }); })]).nice();\r\n\r\n g.append('g')\r\n .selectAll('g')\r\n .data(data)\r\n .enter().append('g')\r\n .attr('transform', function (d) { return `translate(0, ${y0(d.category)})`; })\r\n .selectAll('rect')\r\n .data(function (d) { return keys.map(function (key) { return { key: key, value: d[key] }; }); })\r\n .enter().append('rect')\r\n .attr('x', function (d) { return 0; })\r\n .attr('y', function (d) { return y1(d.key); })\r\n .attr('height', y1.bandwidth())\r\n .attr('width', function (d) { return x(d.value); })\r\n .attr('fill', function (d) { return z(d.key); });\r\n\r\n g.append('g')\r\n .attr('class', 'axis')\r\n .attr('transform', 'translate(0,' + height + ')')\r\n .call(d3.axisBottom(x)\r\n .tickFormat((d) => '').tickSize(0))\r\n .append('text')\r\n .attr('x', width / 2)\r\n .attr('y', 20)\r\n .attr('fill', '#000')\r\n .attr('font-weight', 'bold')\r\n .attr('text-anchor', 'center')\r\n .text('Level (relative)');\r\n\r\n g.append('g')\r\n .attr('class', 'axis')\r\n .call(d3.axisLeft(y0).ticks(null, 's'))\r\n .append('text')\r\n // rotated, so swap x & y\r\n .attr('x', 0 - (height / 2) + chartMargin.top)\r\n // .attr('x', -1 * (chartMargin.left + 20)) // Relative position to left margin\r\n .attr('y', 0 - chartMargin.left + 10) // Relative position to left margin\r\n .attr('dx', '0.32em')\r\n .attr('fill', '#000')\r\n .attr('font-weight', 'bold')\r\n .attr('text-anchor', 'center')\r\n .text('Skill')\r\n .attr('transform', 'rotate(-90)');\r\n\r\n const legend = g.append('g')\r\n .attr('font-family', 'sans-serif')\r\n .attr('font-size', 10)\r\n .attr('text-anchor', 'end')\r\n .attr('text-anchor', 'start')\r\n // .attr('transform', `translate(${chartWidth}, 0)`)\r\n // .attr('transform', `translate(40, 0)`)\r\n .selectAll('g')\r\n .data(keys.slice()) // .reverse())\r\n .enter().append('g')\r\n .attr('transform', function (d, i) { return `translate(0, ${i * 20})`; });\r\n\r\n legend.append('rect')\r\n .attr('x', width + 20)\r\n .attr('width', 19)\r\n .attr('height', 19)\r\n .attr('fill', z);\r\n\r\n legend.append('text')\r\n .attr('x', width + 40)\r\n .attr('y', 9.5)\r\n .attr('dy', '0.32em')\r\n .text(function (d) { return d; });\r\n }\r\n\r\n}\r\n","
\r\n","import { Component, OnInit, Input, AfterViewInit, ViewEncapsulation, OnChanges, HostBinding } from '@angular/core';\r\nimport * as d3 from 'd3';\r\nimport { CompletionTriggerKind } from 'typescript';\r\nimport { DashboardService } from './dashboard.service';\r\n\r\n@Component({\r\n encapsulation: ViewEncapsulation.None, // Allow styles on injected elements\r\n selector: 'ug-chart-donut',\r\n templateUrl: './chart-donut.component.html',\r\n styleUrls: ['./chart-donut.component.css']\r\n})\r\nexport class ChartDonutComponent implements OnChanges {\r\n\r\n @Input()\r\n chartId: string;\r\n\r\n @Input()\r\n chartData: Array;\r\n\r\n @Input()\r\n ringWidthPercent = 20;\r\n\r\n @Input()\r\n ringRadius = 70;\r\n\r\n \r\n constructor(private dashboardService: DashboardService) { }\r\n // @HostBinding('style.--esqep-percent-complete')\r\n // get _esqep_percent_complete() {\r\n // return this.chartData[0]['value'] || 0;\r\n // }\r\n\r\n ngOnChanges() {\r\n // if (!this.chartData) { return; }\r\n\r\n // console.log(`Donut chart for #${this.chartId}`)\r\n // console.table(this.chartData);\r\n\r\n try {\r\n const radius = this.ringRadius;\r\n const chartMargin = { top: 10, right: 10, bottom: 10, left: 10 };\r\n const width = (2 * radius) + chartMargin.left + chartMargin.right;\r\n const height = (2 * radius) + chartMargin.top + chartMargin.bottom;\r\n // const legendboxSide = 20;\r\n \r\n const colour = d3.scaleOrdinal(['red', 'green'])\r\n .domain(this.chartData.map( e => { return e.label; }));\r\n \r\n const chart = d3.select('#' + this.chartId).append('svg')\r\n .attr('width', width)\r\n .attr('height', height)\r\n .style('margin', JSON.stringify(chartMargin))\r\n .append('g')\r\n .attr('transform', `translate(${chartMargin.left + radius}, ${(chartMargin.top + radius)})`);\r\n \r\n const path: any = d3.arc()\r\n .outerRadius(radius)\r\n .innerRadius(radius - (radius * this.ringWidthPercent / 100));\r\n \r\n // const label = d3.arc()\r\n // .outerRadius(radius - 20)\r\n // .innerRadius(radius - 20);\r\n \r\n const pie = d3.pie()\r\n .value( (d: any) => { return d.value; })\r\n .sort(null);\r\n \r\n const arc = chart.selectAll('.arc')\r\n .data(pie(this.chartData))\r\n .enter().append('g')\r\n .attr('class', 'arc');\r\n \r\n arc.append('path')\r\n .attr('d', path)\r\n .style('fill', (d, i) => {return colour(this.chartData[i].label); }); // TODO: Seems like there should be a better way to do this\r\n \r\n // arc.append('text')\r\n // .attr('transform', (d: any) => { return `translate(${label.centroid(d)})`; })\r\n // .text( d => { return d.value > 0 ? (d.value * 100).toFixed(0) : null; });\r\n \r\n const percentCompleteLabel =\r\n this.chartData[1]['value'] || this.chartData[1]['value'] === 0 ? `${(this.chartData[1]['value'] * 100).toFixed(0)}%` : 'No data' \r\n chart.append('text')\r\n .attr('text-anchor', 'middle')\r\n .attr('fill', 'green')\r\n .style('font-size', '1.5em')\r\n .attr('dy', '.35em')\r\n .text(percentCompleteLabel)\r\n \r\n // const legend = chart.append('g')\r\n // .attr('text-anchor', 'start')\r\n // .attr('transform', `translate( ${radius}, ${radius * -1})`);\r\n \r\n // const li = legend.selectAll('g')\r\n // .data(this.chartData.map( e => { return e.label; }))\r\n // .enter().append('g')\r\n // .attr('transform', (d, i) => { return `translate(0, ${i * legendboxSide}) `; });\r\n \r\n // li.append('rect')\r\n // .attr('x', 20)\r\n // .attr('width', legendboxSide - 1)\r\n // .attr('height', legendboxSide - 1)\r\n // .attr('fill', (d) => {return colour(d); });\r\n \r\n // li.append('text')\r\n // .attr('x', (legendboxSide - 1 + 25))\r\n // .attr('y', (legendboxSide - 1) / 2 )\r\n // .attr('dy', '0.32em')\r\n // .text( (d) => d);\r\n \r\n }\r\n catch\r\n {\r\n console.error('Error drawing donut')\r\n }\r\n finally {}\r\n }\r\n\r\n\r\n progressStyle(percentComplete: number): any {\r\n return { 'width': `${percentComplete * 100}%` }\r\n }\r\n\r\n getChartScore(chartScore: number): string {\r\n // let scoreText = 'No Data';\r\n // if (chartScore !== null) {\r\n // scoreText = chartScore.toLocaleString('en', {style: 'percent', maximumFractionDigits: 1})\r\n // }\r\n // return scoreText;\r\n return this.dashboardService.getDisplayPercentage(chartScore);\r\n }\r\n\r\n get innerDonut() {\r\n const style: any = {};\r\n/*\r\n div[role=\"progressbar\"] {\r\n --size: 12rem;\r\n --fg: #369;\r\n --bg: #def;\r\n --pgPercentage: var(--value);\r\n animation: growProgressBar 3s 1 forwards;\r\n width: var(--size);\r\n height: var(--size);\r\n border-radius: 50%;\r\n display: grid;\r\n place-items: center;\r\n background:\r\n radial-gradient(closest-side, white 80%, transparent 0 99.9%, white 0),\r\n conic-gradient(var(--fg) calc(var(--pgPercentage) * 1%), var(--bg) 0)\r\n ;\r\n font-family: Helvetica, Arial, sans-serif;\r\n font-size: calc(var(--size) / 5);\r\n color: var(--fg);\r\n }\r\n\r\n div[role=\"progressbar\"]::before {\r\n counter-reset: percentage var(--value);\r\n content: counter(percentage) '%';\r\n }\r\n*/\r\n const score = this.chartData[1]['value'];\r\n style.animation = 'growProgressBar 3s 1 forwards';\r\n // style.width = '10rem';\r\n // style.height = '10rem';\r\n // style['border-radius'] = '50%';\r\n // style.display = 'grid';\r\n // style['place-items'] = 'center';\r\n style.background = `radial-gradient(closest-side, white 80%, transparent 0 100%), conic-gradient(var(--bs-white) 0.1%, var(--bs-green) 0.2% calc(${score} * 99.8%), var(--bs-white) calc(${score} * 99.8% + 0.2%) calc(${score} * 100%), var(--bs-red) 0)`;\r\n // style.color = '#369';\r\n style['--esqep-percent-complete'] = this.chartData[0]['value'];\r\n return style;\r\n }\r\n\r\n get outerDonut() {\r\n return '';\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n
{{getChartScore(chartData[1]['value'])}}
\r\n
\r\n\r\n

{{getChartScore(chartData[1]['value'])}}

\r\n\r\n","import { Component, Input, AfterViewInit, OnChanges, ViewEncapsulation } from '@angular/core';\r\nimport * as d3 from 'd3';\r\n\r\n@Component({\r\n encapsulation: ViewEncapsulation.None, // Allow styles on injected elements\r\n selector: 'ug-chart-pie',\r\n templateUrl: './chart-pie.component.html',\r\n styleUrls: ['./chart-pie.component.css']\r\n})\r\nexport class ChartPieComponent implements AfterViewInit {\r\n\r\n @Input()\r\n chartId: string;\r\n\r\n @Input()\r\n chartData: Array;\r\n\r\n @Input()\r\n ringWidthPercent = 50;\r\n\r\n constructor() { }\r\n\r\n ngAfterViewInit() {\r\n if (!this.chartData) { return; }\r\n console.table(this.chartData);\r\n\r\n const width = 400;\r\n const radius = 70;\r\n const chartMargin = { top: 10, right: 10, bottom: 10, left: 10 };\r\n const height = (2 * radius) + chartMargin.top + chartMargin.bottom;\r\n const legendboxSide = 20;\r\n\r\n const colour = d3.scaleOrdinal(d3.schemeCategory10)\r\n .domain(this.chartData.map( e => { return e.label; }));\r\n\r\n const chart = d3.select('#' + this.chartId).append('svg')\r\n .attr('width', width)\r\n .attr('height', height)\r\n .style('margin', JSON.stringify(chartMargin))\r\n // .attr('viewBox', `0 0 ${width + (2 * margin)} ${height + (2 * margin)}`)\r\n // .attr('viewBox', `${chartMargin.left} ${chartMargin.top} ${width - chartMargin.right} ${height - chartMargin.bottom}`)\r\n .append('g')\r\n .attr('transform', `translate(${chartMargin.left + radius}, ${(chartMargin.top + radius)})`);\r\n\r\n const path: any = d3.arc()\r\n .outerRadius(radius)\r\n .innerRadius(radius - (radius * this.ringWidthPercent / 100));\r\n\r\n const label = d3.arc()\r\n .outerRadius(radius - 20)\r\n .innerRadius(radius - 20);\r\n\r\n const pie = d3.pie()\r\n .value( (d: any) => { return d.value; });\r\n\r\n const arc = chart.selectAll('.arc')\r\n .data(pie(this.chartData))\r\n .enter().append('g')\r\n .attr('class', 'arc');\r\n\r\n arc.append('path')\r\n .attr('d', path)\r\n .style('fill', (d, i) => {return colour(this.chartData[i].label); }); // TODO: Seems like there should be a better way to do this\r\n\r\n arc.append('text')\r\n .attr('transform', (d: any) => { return `translate(${label.centroid(d)})`; })\r\n .text( d => { return d.value > 0 ? d.value : null; });\r\n\r\n const legend = chart.append('g')\r\n .attr('text-anchor', 'start')\r\n .attr('transform', `translate( ${radius}, ${radius * -1})`);\r\n\r\n const li = legend.selectAll('g')\r\n .data(this.chartData.map( e => { return e.label; }))\r\n .enter().append('g')\r\n .attr('transform', (d, i) => { return `translate(0, ${i * legendboxSide}) `; });\r\n\r\n li.append('rect')\r\n .attr('x', 20)\r\n .attr('width', legendboxSide - 1)\r\n .attr('height', legendboxSide - 1)\r\n .attr('fill', (d) => {return colour(d); });\r\n\r\n li.append('text')\r\n .attr('x', (legendboxSide - 1 + 25))\r\n .attr('y', (legendboxSide - 1) / 2 )\r\n .attr('dy', '0.32em')\r\n .text( (d) => d);\r\n }\r\n\r\n}\r\n","
0\" [attr.id]=\"chartId\" class=\"dashboard-chart\">
\r\n","import { AfterContentChecked, AfterViewChecked, AfterViewInit, Component, Input, ViewEncapsulation } from '@angular/core';\r\nimport * as d3 from 'd3';\r\n\r\nimport { DashboardService } from '../dashboard/dashboard.service';\r\n\r\n@Component({\r\n encapsulation: ViewEncapsulation.None, // Allow styles on injected elements\r\n selector: 'ug-chart-stacked-bar-horiz',\r\n templateUrl: './chart-stacked-bar-horiz.component.html',\r\n styleUrls: ['./chart-stacked-bar-horiz.component.css']\r\n})\r\nexport class ChartStackedBarHorizComponent implements AfterViewInit { // AfterContentChecked, AfterViewInit {\r\n /** Use AfterViewChecked() to ensue all dynamic attributes are set up before\r\n * generating charts\r\n */\r\n\r\n @Input()\r\n chartId: string;\r\n\r\n @Input()\r\n chartIndex: number;\r\n\r\n @Input()\r\n chartData: Array;\r\n\r\n @Input()\r\n chartKeys: Array;\r\n\r\n @Input()\r\n categoryName: string;\r\n\r\n @Input()\r\n chartTitle: string;\r\n\r\n @Input()\r\n showDataTable = false;\r\n\r\n chartHeight: number;\r\n\r\n chartContainerElementId: string;\r\n\r\n constructor(public dashboardService: DashboardService) { }\r\n\r\n ngAfterViewInit() {\r\n // this.dashboardService.dashboardDataFeed.subscribe(\r\n // statusSummary => {\r\n // console.log('statusSummaryFeed: ' + JSON.stringify(statusSummary));\r\n // }\r\n // );\r\n // }\r\n\r\n // ngAfterContentChecked() {\r\n // console.log('In stacked bar AfterViewInit()');\r\n\r\n if ( (this.chartData || []).length === 0 ) { return; }\r\n if ( (this.chartKeys || []).length === 0 ) { return; }\r\n // console.log('Chart Data: ' + JSON.stringify(this.chartData));\r\n // console.log('Chart Keys: ' + JSON.stringify(this.chartKeys));\r\n\r\n this.chartContainerElementId = 'chartContainer' + this.chartIndex;\r\n // this.chartContainerElementId = 'chartContainer';\r\n\r\n // d3.select('#' + this.chartId).remove();\r\n // d3.select('#chartContainer').select('svg').remove();\r\n d3.select('#' + this.chartContainerElementId).select('svg').remove();\r\n\r\n let availableWidth = (\r\n (d3.select('#' + this.chartContainerElementId).node() as HTMLElement).getBoundingClientRect().width -\r\n parseInt(window.getComputedStyle(document.getElementById(this.chartContainerElementId)).getPropertyValue('padding-left'), 10) -\r\n parseInt(window.getComputedStyle(document.getElementById(this.chartContainerElementId)).getPropertyValue('padding-right'), 10)\r\n );\r\n // let availableWidth = 0;\r\n\r\n if (availableWidth < 1000) { availableWidth = 1000; }\r\n\r\n const chartMargin = {top: 20, right: 200, bottom: 60, left: 300};\r\n\r\n const maxChartTotal = d3.max(this.chartData, (d) => d['total'] );\r\n availableWidth = (maxChartTotal * 60 / Math.pow(Math.log10(maxChartTotal), 2) ) + chartMargin.left + chartMargin.right;\r\n\r\n const keyHeight = this.chartKeys.length * 20;\r\n const dataHeight = this.chartData.length * 40;\r\n const chartWidth = availableWidth - chartMargin.left - chartMargin.right;\r\n const chartHeight = keyHeight > dataHeight ? keyHeight : dataHeight;\r\n\r\n const chart = d3.select('#' + this.chartContainerElementId).append('svg')\r\n // .attr('id', this.chartId)\r\n .attr('width', availableWidth)\r\n .attr('height', chartHeight + chartMargin.top + chartMargin.bottom)\r\n // .style('margin', JSON.stringify(chartMargin))\r\n .style('margin-top', chartMargin.top)\r\n .style('margin-bottom', chartMargin.bottom)\r\n .style('margin-left', chartMargin.left)\r\n .style('margin-right', chartMargin.right)\r\n // .attr('viewBox', `0 0 ${availableWidth} ${chartHeight + chartMargin.top + chartMargin.bottom}`)\r\n .attr('preserveAspectRatio', 'none');\r\n\r\n const g = chart.append('g').attr('transform', `translate(${chartMargin.left}, ${chartMargin.top})`);\r\n\r\n const x = d3.scaleLinear()\r\n .rangeRound([0, chartWidth]);\r\n\r\n const y = d3.scaleBand()\r\n .rangeRound([0, dataHeight])\r\n .paddingInner(0.05)\r\n .align(0.1);\r\n\r\n // const z = d3.scaleOrdinal(d3.schemeCategory20);\r\n const z = d3.scaleOrdinal(d3.schemeSet3);\r\n\r\n x.domain([0, d3.max(this.chartData, (d) => d['total'] )]).nice();\r\n y.domain(this.chartData.map( d => d['category']));\r\n z.domain(this.chartKeys);\r\n\r\n const stack = d3.stack()\r\n .keys(this.chartKeys)\r\n .order(d3.stackOrderNone)\r\n .offset(d3.stackOffsetNone);\r\n const seriesData = stack(this.chartData);\r\n\r\n g.append('g')\r\n .selectAll('g')\r\n .data(seriesData)\r\n .enter().append('g')\r\n .attr('fill', (d) => {\r\n return z(d.key);\r\n })\r\n .selectAll('rect')\r\n .data((d) => {\r\n return d;\r\n })\r\n .enter().append('rect')\r\n .attr('x', (d) => {\r\n return x(d[0]);\r\n })\r\n .attr('y', (d: any) => { return y(d.data.category); })\r\n .attr('width', (d) => { return x(d[1]) - x(d[0]); })\r\n .attr('height', y.bandwidth());\r\n\r\n g.append('g')\r\n .attr('class', 'axis')\r\n .attr('transform', 'translate(0,' + dataHeight + ')')\r\n // .call(d3.axisBottom(x).ticks(maxChartTotal, 'd'))\r\n .call(d3.axisBottom(x))\r\n .append('text')\r\n .attr('x', chartWidth / 2)\r\n .attr('y', chartMargin.bottom / 2 ) // Relative position to bottom margin\r\n .attr('dy', '0.32em')\r\n .attr('fill', '#000')\r\n .attr('font-weight', 'bold')\r\n .attr('text-anchor', 'middle')\r\n .text('Count');\r\n\r\n g.append('g')\r\n .attr('class', 'axis')\r\n .call(d3.axisLeft(y).ticks(null, 's'))\r\n .append('text')\r\n .attr('x', 0 - (chartHeight / 2))\r\n .attr('y', 0 - chartMargin.left + 20 ) // Relative position to bottom margin\r\n .attr('fill', '#000')\r\n .attr('font-weight', 'bold')\r\n .attr('text-anchor', 'middle')\r\n .text(this.categoryName)\r\n .attr('transform', 'rotate(-90)');\r\n\r\n const legend = g.append('g')\r\n .attr('font-family', 'sans-serif')\r\n .attr('font-size', 10)\r\n .attr('text-anchor', 'start')\r\n .attr('transform', `translate(${chartWidth}, 0)`)\r\n .selectAll('g')\r\n .data(this.chartKeys.slice())\r\n .enter().append('g')\r\n .attr('transform', (d, i) => { return `translate(0, ${i * 20}) `; });\r\n\r\n legend.append('rect')\r\n .attr('x', 20)\r\n .attr('width', 19)\r\n .attr('height', 19)\r\n .attr('fill', z);\r\n\r\n legend.append('text')\r\n .attr('x', 44)\r\n .attr('y', 9.5)\r\n .attr('dy', '0.32em')\r\n .text( (d) => d);\r\n }\r\n}\r\n","
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{categoryName}}{{statusDesc}}
{{chartRow.category}}{{chartRow[statusDesc]}}
\r\n
\r\n \r\n
\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\nimport { AnalysisDashboardComponent } from '../dashboard/analysis-dashboard.component';\r\nimport { SkillMatrixComponent } from '../dashboard/skill-matrix.component';\r\nimport { AuthGuard } from '../auth.guard';\r\nimport { SuccessionTeamComponent } from './succession-team.component';\r\nimport { SecurityRoleGuard } from 'app/core/security-role.guard';\r\nimport { RouteSecurityRole } from 'app/core/menus';\r\nimport { PerfMgmtComponent } from './perf-mgmt.component';\r\nimport { SkillMatrixSummaryComponent } from './skill-matrix-summary.component';\r\nimport { ManagementRoleGuard } from 'app/core/management-role.guard';\r\nimport { RoleMatrixComponent } from './role-matrix.component';\r\nimport { PerfSummaryComponent } from './perf-summary.component';\r\nimport { SkillsMatrixContentType } from './skill-matrix';\r\nimport { MsalGuard } from '@azure/msal-angular';\r\nimport { SkillTableComponent } from './skill-table/skill-table.component';\r\n\r\nconst routes: Routes = [\r\n {path: 'dashboard', component: AnalysisDashboardComponent, canActivate: [MsalGuard] },\r\n {path: 'competency-skill-matrix-summ', component: SkillMatrixSummaryComponent, canActivate: [MsalGuard, ManagementRoleGuard]},\r\n {path: 'competency-skill-matrix', component: SkillMatrixComponent, canActivate: [MsalGuard]},\r\n {path: 'competency-skill-table-efad', component: SkillTableComponent, canActivate: [MsalGuard], data: {trainingCategory: 'EFAD', title: 'EFAD', filterKey: 'EFAD'}},\r\n {path: 'competency-skill-table-ic', component: SkillTableComponent, canActivate: [MsalGuard], data: {trainingCategory: 'Ops - WO and Above', title: 'Incident Command', filterKey: 'Incident Command'}},\r\n {path: 'competency-skill-table-ct', component: SkillTableComponent, canActivate: [MsalGuard], data: {trainingCategory: 'MoC3612', title: 'Corporate Training', filterKey: 'Corporate Training'}},\r\n {\r\n path: 'job-role-matrix',\r\n component: SkillMatrixComponent,\r\n canActivate: [MsalGuard],\r\n data: {matrixType: SkillsMatrixContentType.jobRoles}\r\n },\r\n // {path: 'role-matrix', component: RoleMatrixComponent, canActivate: [AuthGuard]},\r\n {\r\n path: 'team-succession',\r\n component: SuccessionTeamComponent,\r\n canActivate: [MsalGuard, SecurityRoleGuard],\r\n data: {minimumRole: RouteSecurityRole['ANALYSIS_TEAM-SUCCESSION']}\r\n },\r\n {path: 'performance-summ', component: PerfSummaryComponent, canActivate: [MsalGuard, ManagementRoleGuard]},\r\n {path: 'performance-management', component: PerfMgmtComponent, canActivate: [MsalGuard]},\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class DashboardRoutingModule { }\r\n","import { Component, Input, OnChanges, OnDestroy, OnInit, ViewEncapsulation } from '@angular/core';\r\n\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { DashboardService } from '../dashboard/dashboard.service';\r\n\r\n@Component({\r\n encapsulation: ViewEncapsulation.None, // Allow styles on injected elements\r\n selector: 'ug-dashboard',\r\n templateUrl: './dashboard.component.html',\r\n styleUrls: ['./dashboard.component.css']\r\n})\r\nexport class DashboardComponent implements OnChanges, OnDestroy, OnInit {\r\n\r\n // Bar hierarchy http://mbostock.github.io/d3/talk/20111116/bar-hierarchy.html\r\n // Collapsible indented tree https://bl.ocks.org/mbostock/1093025\r\n\r\n @Input()\r\n personId: number;\r\n\r\n @Input()\r\n showChartData = true;\r\n\r\n chartDataArray: Array = [];\r\n pieChartDataArray: Array = [];\r\n statusSummarySubs = new Subscription();\r\n\r\n CHART_DISPLAY_BAR = 1;\r\n CHART_DISPLAY_PIE = 2;\r\n\r\n chartDisplayType: number = this.CHART_DISPLAY_BAR;\r\n\r\n fetchingData = true;\r\n\r\n exceptionData = {\r\n 'CLAIMANT_SUMM': {\r\n level: AlertLevels.ERROR,\r\n code: 'DBD-001',\r\n message: 'Error retrieving claimant status summary'\r\n } as AlertData,\r\n 'VERIFIER_SUMM': {\r\n level: AlertLevels.ERROR,\r\n code: 'DBD-002',\r\n message: 'Error retrieving verifier status summary'\r\n } as AlertData,\r\n };\r\n\r\n constructor(private alertService: AlertService, private dashboardService: DashboardService) { }\r\n\r\n ngOnChanges() {\r\n if (this.personId) {\r\n this.fetchingData = true;\r\n this.statusSummarySubs.unsubscribe(); // TODO:L Unsubs\r\n this.statusSummarySubs = this.dashboardService.getClaimStatusSummaryVsRole(this.personId).subscribe(\r\n r => {\r\n this.pieChartDataArray = r[0]['groupSummary'].map(\r\n e => {\r\n return { datasetName: e.categoryName, data: e.itemSummary.map(\r\n i => { return {label: i.itemName, value: i.count}; }\r\n )};\r\n }\r\n );\r\n\r\n const tempChartDataArray = [];\r\n for (const chartDataSet of r) {\r\n const chartData = [];\r\n let chartKeys = [];\r\n for (const dataRow of chartDataSet.groupSummary) {\r\n const chartRow = {};\r\n if (chartKeys.length === 0) {\r\n chartKeys = dataRow.itemSummary.map( s => s.itemName );\r\n }\r\n chartRow['category'] = dataRow.categoryName;\r\n for (const statusRow of dataRow.itemSummary) {\r\n chartRow[statusRow.itemName] = statusRow.count;\r\n }\r\n chartRow['total'] = dataRow.itemSummary.map(d1 => d1.count).reduce( (a, b) => a + b, 0);\r\n chartData.push(chartRow);\r\n }\r\n tempChartDataArray.push(\r\n {\r\n data: chartData,\r\n keys: chartKeys,\r\n title: chartDataSet.groupName\r\n }\r\n );\r\n }\r\n this.chartDataArray = tempChartDataArray;\r\n this.fetchingData = false;\r\n },\r\n (err) => {\r\n this.fetchingData = false;\r\n this.alertService.createAlert2(this.exceptionData.VERIFIER_SUMM, err);\r\n }\r\n );\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.statusSummarySubs.unsubscribe();\r\n }\r\n\r\n ngOnInit() {}\r\n\r\n}\r\n","
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
Status Summary ({{pieChartData.datasetName}})
\r\n
\r\n \r\n
\r\n

Scroll

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { AnalysisDashboardComponent } from './analysis-dashboard.component';\r\nimport { DashboardRoutingModule } from './dashboard-routing.module';\r\nimport { DashboardComponent } from './dashboard.component';\r\nimport { DashboardService } from '../dashboard/dashboard.service';\r\nimport { ChartPieComponent } from './chart-pie.component';\r\nimport { ChartBarHorizComponent } from './chart-bar-horiz.component';\r\nimport { ChartStackedBarHorizComponent } from './chart-stacked-bar-horiz.component';\r\nimport { ControlsModule } from '../controls/controls.module';\r\nimport { SkillMatrixComponent } from './skill-matrix.component';\r\nimport { SuccessionTeamComponent } from './succession-team.component';\r\nimport { PerfMgmtComponent } from './perf-mgmt.component';\r\nimport { PerfGridComponent } from './perf-grid.component';\r\nimport { SkillMatrixSummaryComponent } from './skill-matrix-summary.component';\r\nimport { ChartDonutComponent } from './chart-donut.component';\r\nimport { DonutRowCardComponent } from './donut-row-card.component';\r\nimport { RoleMatrixComponent } from './role-matrix.component';\r\nimport { PerfSummaryComponent } from './perf-summary.component';\r\nimport { PerfGridCardComponent } from './perf-grid-card.component';\r\nimport { MatrixDetailCellComponent } from './matrix-detail-cell.component';\r\nimport { SkillTableComponent } from './skill-table/skill-table.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ControlsModule,\r\n DashboardRoutingModule,\r\n FormsModule,\r\n ReactiveFormsModule\r\n ],\r\n declarations: [\r\n DashboardComponent,\r\n ChartPieComponent,\r\n ChartBarHorizComponent,\r\n ChartStackedBarHorizComponent,\r\n AnalysisDashboardComponent,\r\n SkillMatrixComponent,\r\n SuccessionTeamComponent,\r\n PerfMgmtComponent,\r\n PerfGridComponent,\r\n SkillMatrixSummaryComponent,\r\n ChartDonutComponent,\r\n DonutRowCardComponent,\r\n RoleMatrixComponent,\r\n PerfSummaryComponent,\r\n PerfGridCardComponent,\r\n MatrixDetailCellComponent,\r\n SkillTableComponent\r\n ],\r\n exports: [\r\n DashboardComponent,\r\n ChartPieComponent,\r\n ChartBarHorizComponent,\r\n ChartStackedBarHorizComponent,\r\n AnalysisDashboardComponent,\r\n SkillMatrixComponent,\r\n SuccessionTeamComponent,\r\n PerfMgmtComponent,\r\n PerfGridComponent,\r\n SkillMatrixSummaryComponent,\r\n ChartDonutComponent,\r\n DonutRowCardComponent,\r\n PerfSummaryComponent\r\n ],\r\n providers: [DashboardService]\r\n})\r\nexport class DashboardModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\n\r\nimport { Observable , BehaviorSubject, of, throwError } from 'rxjs';\r\nimport { catchError, map, last } from 'rxjs/operators';\r\n\r\nimport { environment } from 'environments/environment';\r\n\r\nimport { SkillMatrix0, Curriculum } from './skill-matrix-data';\r\nimport { PerfGridContent, PerfMgmtResponse } from './perf-grid-content';\r\nimport { perfGridContentMe, perfGridContentMember1, perfGridContentMember2, perfGridContentSalesAgent1, perfGridContentRecruitTeam1, perfGridContentSalesManager1, perfGridContentSoton201912, perfGridContentPeopleProjCoord1, perfGridContentPortsmouth201912 } from './perf-mgmt-data';\r\nimport { SkillsMatrix, SkillsMatrixContentType, SkillsMatrixCurricula, SkillsMatrixSubject } from './skill-matrix';\r\nimport { Watch } from './watch';\r\n\r\nimport watchData from './watchlist.2.json';\r\nimport { SkillsMatrixSummary } from './skill-matrix-summary';\r\nimport * as moment from 'moment';\r\nimport { StringMapWithRename } from '@angular/compiler/src/compiler_facade_interface';\r\nimport { TrainingSubjectCategories } from './training-subject-categories';\r\nimport { SkillTrainingSession } from 'app/skill/skill-training-session';\r\n\r\n\r\nexport abstract class PersonStatusSummary {\r\n personStatusSummary: Array<{statusCount: number; statusText: string; }>;\r\n}\r\n\r\nexport interface ClaimItemVsCategory {\r\n categoryId: number;\r\n categoryName: string;\r\n itemSummary: Array<{\r\n itemId?: number;\r\n itemName: string;\r\n count: number;\r\n }>;\r\n}\r\n\r\nexport interface ClaimCategoryVsGroup {\r\n groupId?: number;\r\n groupName?: string;\r\n groupSummary: Array;\r\n}\r\n\r\nexport interface ExpressClassUserObs {\r\n status: string;\r\n score: number;\r\n comment: string;\r\n externalId: number;\r\n}\r\n\r\nexport interface CsodExpressClassPayload {\r\n facilitatorUserId: number;\r\n userStatus: Array\r\n loId: string;\r\n}\r\n\r\nexport interface CsodExpressClassResponse {\r\n status: string;\r\n timestamp: Date;\r\n correlationId: string;\r\n data: {\r\n expressClassId: string;\r\n proxyId: number;\r\n usersSubmitted: number\r\n }\r\n}\r\n\r\nexport interface CsodLearningAssignmentUser {\r\n id: number;\r\n includeSubordinates: boolean;\r\n}\r\n\r\nexport interface CsodLearningAssignmentPayload {\r\n name: string;\r\n learningObjectIds: string[];\r\n users: CsodLearningAssignmentUser[];\r\n description: string;\r\n comments: string;\r\n assignmentStatus: string;\r\n dueDate?: Date;\r\n}\r\n\r\nexport interface CsodLearningAssignmentResponse {\r\n status: string;\r\n timestamp: string;\r\n assignment: {\r\n id: number;\r\n }\r\n}\r\n\r\nexport interface CsodSessionPart {\r\n PartName: string;\r\n PartLocation: string;\r\n PartStartDateTime: string;\r\n PartEndDateTime: string\r\n PartOccurrence: string;\r\n}\r\n\r\n\r\nexport interface CsodCreateSessionPayload {\r\n EventLoRef: string;\r\n Parts: CsodSessionPart[]\r\n}\r\n\r\nexport interface CsodCreateSessionResponseData {\r\n LOID: string;\r\n Provider_LO_ID: string;\r\n ProviderId: string;\r\n Result: string;\r\n Reason: string;\r\n}\r\n\r\nexport interface CsodCreateSessionResponseRecord {\r\n loId: string;\r\n reason: string;\r\n result: string;\r\n}\r\n\r\nexport interface CsodCreateSessionResponse {\r\n Validations: string;\r\n status: number;\r\n timeStamp: string;\r\n createdRecords: number;\r\n data: CsodCreateSessionResponseData[]\r\n records: CsodCreateSessionResponseRecord[]\r\n}\r\n\r\ninterface ClaimStatusVsDisciplineResponse {\r\n claimStatusVsDiscipline: Array;\r\n}\r\n\r\ninterface ClaimStatusVsSkillResponse {\r\n claimStatusVsSkill: Array;\r\n}\r\n\r\ninterface ClaimStatusVsOrgUnitResponse {\r\n claimStatusVsOrgUnit: Array;\r\n}\r\n\r\ninterface ClaimLevelVsDisciplineResponse {\r\n claimLevelVsDiscipline: Array;\r\n}\r\n\r\ninterface ClaimLevelVsOrgUnitResponse {\r\n claimLevelVsOrgUnit: Array;\r\n}\r\n\r\nconst apiServerUri = environment.apiUrl;\r\n\r\n\r\n@Injectable()\r\nexport class DashboardService {\r\n\r\n dashboardDataFeed: BehaviorSubject> = new BehaviorSubject>([]);\r\n\r\n mockCurricula: Array = [\r\n {name: 'SP12 MDU AND EQUIP', category: 'SAS', subjects: {}},\r\n {name: 'SP3 SW TECH', category: 'SAS', subjects: {}},\r\n {name: 'SP6 CSU O', category: 'SAS', subjects: {}},\r\n {name: 'SP6 TRU CH 0', category: 'SAS', subjects: {}},\r\n {name: 'SP6 WF U 0', category: 'SAS', subjects: {}},\r\n // {name: 'OS FI TIER 1', category: 'OS', subjects: {}},\r\n // {name: 'OS IRS', category: 'OS', subjects: {}},\r\n {name: 'IC CSRO', category: 'IC', subjects: {}},\r\n {name: 'IC GA-AM', category: 'IC', subjects: {}},\r\n {name: 'IC GA-CM', category: 'IC', subjects: {}},\r\n {name: 'IC GA-GM', category: 'IC', subjects: {}},\r\n {name: 'IC GA-SM', category: 'IC', subjects: {}},\r\n {name: 'EFAD', category: 'EFAD', subjects: {}},\r\n {name: 'EFAD INITIAL', category: 'EFAD', subjects: {}},\r\n {name: 'EFAD LGV', category: 'EFAD', subjects: {}},\r\n {name: 'EFAD LGV CAT C', category: 'EFAD', subjects: {}},\r\n {name: 'EFAD REFRESH', category: 'EFAD', subjects: {}},\r\n {name: 'CT SW FFR1', category: 'CORP', subjects: {}},\r\n {name: 'CT SW FR BO I', category: 'CORP', subjects: {}},\r\n {name: 'CT SW FR BO IN', category: 'CORP', subjects: {}},\r\n {name: 'CT SW FR BO R', category: 'CORP', subjects: {}},\r\n ]\r\n\r\n mockCurriculaSubjects: Array = [\r\n {skillName: 'Training Item 1', deepLinkUrl: '', learningObjectId: 'e23d934a-96df-4366-8a09-b021e7f77861', users: {}},\r\n {skillName: 'Training Item 2', deepLinkUrl: '', learningObjectId: '77ed1d70-0b69-41c4-bd95-1d5411297891', users: {}},\r\n {skillName: 'Training Item 3', deepLinkUrl: '', learningObjectId: 'f31d7dc3-0081-4d7f-b594-e66d8761e61b', users: {}},\r\n {skillName: 'Training Item 4', deepLinkUrl: '', learningObjectId: 'cfba52c8-5d50-46be-99eb-23e3684f787c', users: {}}\r\n ];\r\n\r\n // constructor(private http: HttpClient, @Inject('matrixType') private matrixType: SkillsMatrixContentType) { }\r\n constructor(private http: HttpClient) { }\r\n\r\n getClaimantStatusSummary(person_id: number): Observable {\r\n return this.http.get(`${apiServerUri}/people/${person_id}/status-summary/claimant`)\r\n .pipe(\r\n map( resp => { return resp['personStatusSummaryClaimant'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getVerifierStatusSummary(person_id: number): Observable {\r\n return this.http.get(`${apiServerUri}/people/${person_id}/status-summary/verifier`)\r\n .pipe(\r\n map( resp => { return resp['personStatusSummaryVerifier'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getClaimStatusSummaryVsRole(personId: number): Observable> {\r\n return this.http.get(`${apiServerUri}/people/${personId}/status-summary-vs-role`)\r\n .pipe(\r\n map( resp => {\r\n this.dashboardDataFeed.next(resp['claimStatusVsRole'] || []);\r\n return resp['claimStatusVsRole'] || [];\r\n }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getClaimStatusVsDiscipline(): Observable> {\r\n return this.http.get(`${apiServerUri}/dashboard/claim-status-vs-discipline`)\r\n .pipe(\r\n map(resp => { return resp['claimStatusVsDiscipline'] || []; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getClaimStatusVsSkill(): Observable> {\r\n return this.http.get(`${apiServerUri}/dashboard/claim-status-vs-skill`)\r\n .pipe(\r\n map(resp => { return resp['claimStatusVsSkill'] || []; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getClaimStatusVsOrgUnit(): Observable> {\r\n return this.http.get(`${apiServerUri}/dashboard/claim-status-vs-org-unit`)\r\n .pipe(\r\n map(resp => { return resp['claimStatusVsOrgUnit'] || []; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getClaimLevelVsDiscipline(): Observable> {\r\n return this.http.get(`${apiServerUri}/dashboard/claim-level-vs-discipline`)\r\n .pipe(\r\n map(resp => { return resp['claimLevelVsDiscipline'] || []; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getClaimLevelVsOrgUnit(): Observable> {\r\n return this.http.get(`${apiServerUri}/dashboard/claim-level-vs-org-unit`)\r\n .pipe(\r\n map(resp => { return resp['claimLevelVsOrgUnit'] || []; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getWatchList(): Observable> {\r\n return this.http.get(`${apiServerUri}/dashboard/skill-matrix/watch-list`)\r\n .pipe(\r\n map( resp => { return resp['watches'] || []}),\r\n catchError( err => { return throwError(err)})\r\n )\r\n }\r\n\r\n getSkillMatrix(fa: number, extraPeople: Array): Observable {\r\n let queryParams = ''\r\n extraPeople.forEach(\r\n (ep, i) => {\r\n queryParams += i === 0 ? '?' : '&';\r\n queryParams += `extra=${ep}`;\r\n }\r\n )\r\n return this.http.get(`${apiServerUri}/dashboard/skill-matrix/${fa}${queryParams}`)\r\n .pipe(\r\n map( resp => { return resp['skillsMatrix'] || {}}),\r\n // map( resp => { return resp || []}),\r\n catchError( err => { return throwError(err)})\r\n );\r\n }\r\n\r\n getSkillsMatrix(fa: number, personId: number, watchId: string, extraPeople: Array, trnCat?: string): Observable {\r\n let params: HttpParams = new HttpParams();\r\n if (trnCat) {\r\n params = params.append('trainingCategory', trnCat)\r\n } else {\r\n if (personId) {\r\n params = params.append('personId', `${personId}`);\r\n }\r\n if (watchId) {\r\n params = params.append('watchId', watchId);\r\n }\r\n }\r\n\r\n extraPeople.forEach(\r\n (ep) => {\r\n params = params.append('extraPersonId', ep);\r\n }\r\n )\r\n return this.http.get(`${apiServerUri}/dashboard/skill-matrix3`, {params: params})\r\n .pipe(\r\n map( resp => { return resp['skillsMatrix'] || {}}),\r\n catchError( err => { return throwError(err)})\r\n );\r\n }\r\n\r\n getMockSkillsMatrix(fa: number, personId: number, watchId: string, extraPeople: Array): Observable {\r\n let params: HttpParams = new HttpParams();\r\n if (personId) {\r\n params = params.append('personId', `${personId}`);\r\n }\r\n if (watchId) {\r\n params = params.append('watchId', watchId);\r\n }\r\n\r\n extraPeople.forEach(\r\n (ep) => {\r\n params = params.append('extraPersonId', ep);\r\n }\r\n )\r\n return this.http.get(`${apiServerUri}/dashboard/skill-matrix3`, {params: params})\r\n .pipe(\r\n map( resp => {\r\n const smData: SkillsMatrix = resp['skillsMatrix'];\r\n\r\n Object.keys(smData.users).forEach( u => {\r\n this.mockCurricula.forEach(mc => {\r\n if (!smData.users[u].currCats.some(x => x === mc.category) && Math.random() > 0.75) {\r\n smData.users[u].currCats.push(mc.category);\r\n }\r\n })\r\n })\r\n\r\n this.mockCurricula.forEach((mc, i) => {\r\n // if (mc.category === 'OS') {\r\n // return; // Omit OS for demo purposes\r\n // }\r\n const currKey = `${10000 + i}`;\r\n smData.curricula[currKey] = {name: mc.name, category: mc.category, subjects: mc.subjects}\r\n this.mockCurriculaSubjects.forEach((ms, j) => {\r\n const subjKey = `${20000 + j}`;\r\n smData.curricula[currKey].subjects[subjKey] = {\r\n skillName: ms.skillName, deepLinkUrl: ms.deepLinkUrl, learningObjectId: ms.learningObjectId, users: {}\r\n };\r\n\r\n Object.keys(smData.users).forEach((muk, k) => {\r\n let si: string = Math.random() > 0.25 ? '5' : '1';\r\n let dd: Date;\r\n let edd: Date;\r\n\r\n if (mc.category === 'IC' && si === '5') {\r\n dd = moment(0, 'HH').add(Math.random() * 6, 'months').toDate();\r\n\r\n const ed = moment(0, 'HH').add(Math.random() * 36, 'months');\r\n if (ed.diff(moment(0, 'HH'), 'months') >= 3) {\r\n si = '5';\r\n }\r\n if (ed.diff(moment(0, 'HH'), 'months') < 3) {\r\n si = '6';\r\n }\r\n if (ed.diff(moment(0, 'HH'), 'weeks') < 4) {\r\n si = '9';\r\n }\r\n if (ed.diff(moment(0, 'HH'), 'weeks') < 0) {\r\n si = '1'\r\n }\r\n\r\n edd = ed.toDate();\r\n }\r\n\r\n\r\n smData.curricula[currKey].subjects[subjKey].users[muk] = {\r\n statusId: si,\r\n claimId: null,\r\n dueDate: mc.category === 'IC' ? dd : null,\r\n expiryDate: mc.category === 'IC' ? edd : null\r\n }\r\n })\r\n\r\n })\r\n });\r\n\r\n return smData;\r\n }),\r\n catchError( err => { return throwError(err)})\r\n );\r\n }\r\n\r\n getJobRoleMatrix(fa: number, personId: number, watchId: string, extraPeople: Array): Observable {\r\n let params: HttpParams = new HttpParams();\r\n if (personId) {\r\n params = params.append('personId', `${personId}`);\r\n }\r\n if (watchId) {\r\n params = params.append('watchId', watchId);\r\n }\r\n\r\n extraPeople.forEach(\r\n (ep) => {\r\n params = params.append('extraPersonId', ep);\r\n }\r\n )\r\n // return this.http.get(`${apiServerUri}/dashboard/skill-matrix3`, {params: params})\r\n return this.http.get(`${apiServerUri}/dashboard/role-matrix`, {params: params})\r\n .pipe(\r\n map( resp => { return resp['skillsMatrix'] || {}}),\r\n catchError( err => { return throwError(err)})\r\n );\r\n }\r\n\r\n createCsodExpressClass(expressClassPayload: CsodExpressClassPayload ): Observable {\r\n // TODO: Move to separate service\r\n return this.http.post(`${apiServerUri}/functions/csod/express-class`, expressClassPayload)\r\n .pipe(\r\n map( (resp: CsodExpressClassResponse) => { return resp['expressClassResponse']}),\r\n catchError( err => { return throwError(err)})\r\n );\r\n }\r\n\r\n createCsodLearningAssignment(learningAssignmentPayload: CsodLearningAssignmentPayload ): Observable {\r\n // TODO: Move to separate service\r\n return this.http.post(`${apiServerUri}/functions/csod/learning-assignment`, learningAssignmentPayload)\r\n .pipe(\r\n map( (resp: CsodLearningAssignmentResponse) => { return resp['learningObjectAssigmnet'] }),\r\n catchError( err => { return throwError(err)})\r\n );\r\n }\r\n\r\n // createCsodSession(sessionPayload: CsodCreateSessionPayload ): Observable {\r\n createCsodSession(sessionPayload: CsodCreateSessionPayload ): Observable {\r\n // TODO: Move to separate service\r\n return this.http.post(`${apiServerUri}/functions/csod/create-lo/session`, sessionPayload)\r\n .pipe(\r\n map( (resp: CsodCreateSessionResponse) => { return resp['CreateLoSession']}),\r\n catchError( err => { return throwError(err)})\r\n );\r\n }\r\n\r\n getCurriculaCatSumm(personId: number): Observable> {\r\n return this.http.get(`${apiServerUri}/dashboard/curricula-cat-summ/${personId}`)\r\n .pipe(\r\n map( resp => { return resp['curriculaCatSummary'] || {}}),\r\n catchError( err => { return throwError(err)})\r\n );\r\n }\r\n\r\n getSkillsMatrixSummary(): Observable {\r\n return this.http.get(`${apiServerUri}/dashboard/skill-matrix-summ`)\r\n .pipe(\r\n map( (resp: SkillsMatrixSummary) => {return resp}),\r\n catchError( err => { return throwError(err)})\r\n )\r\n }\r\n\r\n getTrainingSubjectCategories(): Observable> {\r\n return this.http.get(`${apiServerUri}/dashboard/training-subject-categories`)\r\n .pipe(\r\n map( resp => { return resp['trainingSubjectCategories'] || []}),\r\n catchError( err => { return throwError(err) })\r\n )\r\n }\r\n\r\n getPerfSite(site: string, firstName: string, lastName: string): Observable {\r\n let params: HttpParams = new HttpParams();\r\n if (site) {params = params.append('site', site)}\r\n if (firstName) {params = params.append('firstName', firstName)}\r\n if (lastName) {params = params.append('lastName', lastName)}\r\n\r\n return this.http.get(`${apiServerUri}/performance/perf-area-location`, {params: params})\r\n .pipe(\r\n map( (resp: PerfGridContent) => {return resp}),\r\n catchError( err => { return throwError(err)})\r\n )\r\n }\r\n\r\n getPerfTeam(subSite: string, idOrfirstName: number | string, lastName?: string): Observable {\r\n let params: HttpParams = new HttpParams();\r\n if (subSite) {params = params.append('site', subSite)}\r\n if (typeof idOrfirstName === 'number') {\r\n params = params.append('personId', idOrfirstName.toString());\r\n } else {\r\n if (idOrfirstName) {params = params.append('firstName', idOrfirstName.toString())}\r\n if (lastName) {params = params.append('lastName', lastName)}\r\n }\r\n\r\n return this.http.get(`${apiServerUri}/performance/perf-site-team`, {params: params})\r\n .pipe(\r\n map( (resp: PerfGridContent) => {return resp}),\r\n catchError( err => { return throwError(err)})\r\n )\r\n }\r\n\r\n getPerfManager(site: string, personId: number) {\r\n let params: HttpParams = new HttpParams();\r\n params = params.append('personId', personId.toString());\r\n if (site) {params = params.append('site', site); }\r\n\r\n return this.http.get(`${apiServerUri}/performance/perf-site-team`, {params: params})\r\n .pipe(\r\n map( (resp: PerfGridContent) => {return resp}),\r\n catchError( err => { return throwError(err)})\r\n )\r\n\r\n }\r\n\r\n getPerfAgent(firstName: string, lastName: string): Observable\r\n getPerfAgent(personId: number): Observable\r\n getPerfAgent(p1: number | string, p2?: string): Observable {\r\n let params: HttpParams = new HttpParams();\r\n if (typeof p1 === 'number') {\r\n params = params.append('personId', p1.toString())\r\n } else {\r\n if (p1) {params = params.append('firstName', p1.toString())}\r\n if (p2) {params = params.append('lastName', p2)}\r\n }\r\n\r\n return this.http.get(`${apiServerUri}/performance/perf-agent`, {params: params})\r\n .pipe(\r\n map( (resp: PerfGridContent) => {return resp}),\r\n catchError( err => { return throwError(err)})\r\n )\r\n }\r\n\r\n getPerfRecruitTeam(roleName: string, personId: number) {\r\n let params: HttpParams = new HttpParams();\r\n params = params.append('personId', personId.toString());\r\n if (roleName) {params = params.append('site', roleName); }\r\n\r\n return this.http.get(`${apiServerUri}/performance/perf-recruit-team`, {params: params})\r\n .pipe(\r\n map( (resp: PerfGridContent) => {return resp}),\r\n catchError( err => { return throwError(err)})\r\n )\r\n\r\n }\r\n\r\n getPerfProjCoord(roleName: string, personId: number) {\r\n let params: HttpParams = new HttpParams();\r\n params = params.append('personId', personId.toString());\r\n if (roleName) {params = params.append('site', roleName); }\r\n\r\n return this.http.get(`${apiServerUri}/performance/perf-project-coord`, {params: params})\r\n .pipe(\r\n map( (resp: PerfGridContent) => {return resp}),\r\n catchError( err => { return throwError(err)})\r\n )\r\n\r\n }\r\n\r\n getPerfMgmtData(): PerfMgmtResponse {\r\n return {\r\n me: perfGridContentMe,\r\n team: [\r\n perfGridContentMember1,\r\n perfGridContentMember2,\r\n perfGridContentSalesAgent1,\r\n perfGridContentRecruitTeam1,\r\n perfGridContentSalesManager1,\r\n perfGridContentPeopleProjCoord1,\r\n perfGridContentPortsmouth201912,\r\n perfGridContentSoton201912\r\n ]\r\n } as PerfMgmtResponse\r\n }\r\n\r\n getDisplayPercentage(percentComplete: number): string {\r\n let scoreText = 'No Data';\r\n if (percentComplete !== null) {\r\n scoreText = percentComplete.toLocaleString('en', {style: 'percent', maximumFractionDigits: 1})\r\n }\r\n return scoreText;\r\n }\r\n\r\n IEStyle(calculatedHeight: number): any {\r\n /**\r\n * Supply an explicitly calculated height style attribute for IE browsers to overcome\r\n * scaling issues with SVG and the default height:auto in Bootstrap's .img-fluid class\r\n */\r\n let IESVGStyle = {};\r\n if (navigator.userAgent.indexOf('MSIE') !== -1 || navigator.userAgent.indexOf('Trident/') > 0) {\r\n IESVGStyle = { 'height': calculatedHeight };\r\n }\r\n return IESVGStyle;\r\n }\r\n\r\n}\r\n","import { Component, EventEmitter, OnInit, Input, Output } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ug-donut-row-card',\r\n templateUrl: './donut-row-card.component.html',\r\n styleUrls: ['./donut-row-card.component.css']\r\n})\r\nexport class DonutRowCardComponent implements OnInit {\r\n\r\n @Input() cardTitle = '';\r\n @Input() cardSubTitle = '';\r\n @Input() donutDataArray: Array = [];\r\n @Input() selectedCategoryIndex = -1;\r\n @Input() donutRadius = 70;\r\n @Input() fullHeight = false;\r\n @Input() loadingData = true;\r\n @Output() donutClick = new EventEmitter<{chartName: string, chartIndex: number}>();\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n // console.log(this.donutDataArray)\r\n }\r\n\r\n onCardClick(chartName: string, chartIndex: number) {\r\n this.selectedCategoryIndex = chartIndex;\r\n console.log(`Clicked on chart. chartname=${chartName}, chartIndex=${chartIndex}`);\r\n this.donutClick.emit({chartName: chartName, chartIndex: chartIndex})\r\n }\r\n\r\n get safeCardTitle() {\r\n return this.cardTitle.replace(/\\s+/g, '');\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
{{cardTitle}} {{cardSubTitle}}
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { SkillsMatrixCurricula, SkillsMatrixSubjectUser } from './skill-matrix';\r\n\r\n@Component({\r\n selector: 'ug-matrix-detail-cell',\r\n templateUrl: './matrix-detail-cell.component.html',\r\n styleUrls: ['./matrix-detail-cell.component.css']\r\n})\r\nexport class MatrixDetailCellComponent implements OnInit {\r\n\r\n statusColourMap = new Map(\r\n [\r\n ['1', 'bg-danger text-white'],\r\n ['2', 'bg-danger text-white'],\r\n ['3', 'bg-white text-danger'],\r\n ['4', 'bg-danger text-white'],\r\n ['5', 'bg-success text-white'],\r\n ['6', 'bg-warning text-white'],\r\n ['7', 'bg-danger text-white'],\r\n ['8', 'bg-info text-white'],\r\n ['9', 'bg-white text-danger']\r\n ]\r\n );\r\n statusSymbolMap = new Map(\r\n [\r\n ['1', 'fas fa-times-circle'],\r\n ['2', 'fas fa-times-circle'],\r\n ['3', 'fas fa-check-circle'],\r\n ['4', 'fas fa-times-circle'],\r\n ['5', 'fas fa-check-circle'],\r\n ['6', 'fas fa-check-circle'],\r\n ['7', 'fas fa-ellipsis-h'],\r\n ['8', 'fas fa-spinner fa-spin'],\r\n ['9', 'fas fa-exclamation-circle'],\r\n ]\r\n );\r\n\r\n @Input() currSubjectUser: SkillsMatrixSubjectUser;\r\n @Input() activeSubjectUser: boolean;\r\n @Output() matrixCellClicked: EventEmitter = new EventEmitter(false);\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {}\r\n\r\n get statusColourClass(): string {\r\n // if (this.currSubjectUser?.dueDate) {\r\n // console.log(`${this.currSubjectUser?.dueDate} ${new Date()}`);\r\n // }\r\n if (this.activeSubjectUser) {\r\n if (this.currSubjectUser?.statusId === '1' && new Date(this.currSubjectUser?.dueDate) > new Date()) {\r\n return this.statusColourMap.get('3')\r\n }\r\n if (this.currSubjectUser?.statusId === '5') {\r\n const trainingDuration = new Date(this.currSubjectUser?.expiryDate).valueOf() - new Date(this.currSubjectUser?.dueDate).valueOf();\r\n const timeToExpiry = new Date(this.currSubjectUser?.expiryDate).valueOf() - new Date().valueOf();\r\n if (timeToExpiry < 0) { return this.statusColourMap.get('1')}\r\n if (timeToExpiry / trainingDuration < 0.1) { return this.statusColourMap.get('9')}\r\n if (timeToExpiry / trainingDuration < 0.25) { return this.statusColourMap.get('6')}\r\n }\r\n }\r\n\r\n return this.activeSubjectUser ?\r\n (this.statusColourMap.get(this.currSubjectUser?.statusId) || 'bg-secondary text-white') :\r\n 'table-light'\r\n }\r\n\r\n get statusSymbolClass(): string {\r\n if (this.activeSubjectUser && this.currSubjectUser?.statusId === '1' && new Date(this.currSubjectUser?.dueDate) > new Date()) {\r\n return this.statusSymbolMap.get('3')\r\n }\r\n\r\n if (this.activeSubjectUser) {\r\n if (this.currSubjectUser?.statusId === '1' && new Date(this.currSubjectUser?.dueDate) > new Date()) {\r\n return this.statusColourMap.get('3')\r\n }\r\n if (this.currSubjectUser?.statusId === '5') {\r\n const trainingDuration = new Date(this.currSubjectUser?.expiryDate).valueOf() - new Date(this.currSubjectUser?.dueDate).valueOf();\r\n const timeToExpiry = new Date(this.currSubjectUser?.expiryDate).valueOf() - new Date().valueOf();\r\n if (timeToExpiry < 0) { return this.statusSymbolMap.get('1')}\r\n if (timeToExpiry / trainingDuration < 0.1) { return this.statusSymbolMap.get('9')}\r\n if (timeToExpiry / trainingDuration < 0.25) { return this.statusSymbolMap.get('6')}\r\n }\r\n }\r\n\r\n return this.activeSubjectUser ?\r\n this.statusSymbolMap.get(this.currSubjectUser?.statusId) || 'fas fa-question-circle' :\r\n 'fas fa-minus text-secondary'\r\n }\r\n\r\n onMatrixCellClick(): void {\r\n if (this.activeSubjectUser) {\r\n this.matrixCellClicked.emit(true);\r\n }\r\n }\r\n }\r\n","\r\n \r\n\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { PerfGridContent } from './perf-grid-content';\r\n\r\n@Component({\r\n selector: 'ug-perf-grid-card',\r\n templateUrl: './perf-grid-card.component.html',\r\n styleUrls: ['./perf-grid-card.component.css']\r\n})\r\nexport class PerfGridCardComponent implements OnInit {\r\n\r\n @Input() perfGridArray: Array = [];\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n categoryBG(ratingIdx: number) {\r\n let bgClass = '';\r\n switch (ratingIdx) {\r\n case 0:\r\n bgClass = 'esqep-bg-outstanding';\r\n break;\r\n case 1:\r\n bgClass = 'esqep-bg-good';\r\n break;\r\n case 2:\r\n bgClass = 'esqep-bg-req-improve';\r\n break;\r\n case 3:\r\n bgClass = 'esqep-bg-special-measures'\r\n break\r\n }\r\n return bgClass\r\n }\r\n\r\n overallBG(ratingIdx: number): string {\r\n return this.categoryBG(ratingIdx);\r\n }\r\n \r\n}\r\n","
\r\n
\r\n \r\n
\r\n
\r\n \r\n
Performance Summary
\r\n
\r\n
\r\n","import { PerfGridMeta } from './perf-grid-meta';\r\n\r\nexport enum DisplayType {\r\n Percentage,\r\n Category,\r\n Value,\r\n Integer\r\n}\r\n\r\nexport enum InputControlType {\r\n Numeric,\r\n Radio\r\n}\r\n\r\nexport class PerfGridRatingCriterion {\r\n fromValue: number;\r\n toValue: number;\r\n description: string;\r\n description0: (x?: number, y?: number) => string;\r\n\r\n // title(displayType: DisplayType, fromValue?: number, toValue?: number): string {\r\n // if (displayType === DisplayType.Percentage) {\r\n // return ()\r\n // }\r\n // }\r\n\r\n constructor(init?: Partial) {\r\n Object.assign(this, init);\r\n }\r\n\r\n ratingInRange(ratingValue: number) {\r\n if (this.fromValue === null) {\r\n return ratingValue < this.toValue;\r\n }\r\n if (this.toValue === null) {\r\n return ratingValue >= this.fromValue;\r\n }\r\n return (ratingValue < this.toValue && ratingValue >= this.fromValue);\r\n }\r\n\r\n}\r\n\r\nexport class PerfGridRating {\r\n name: string;\r\n ratingValue: number;\r\n ratingCriteria: Array = [];\r\n displayType: DisplayType = DisplayType.Percentage;\r\n allowInput = false;\r\n hoistRating = false;\r\n\r\n constructor(init?: Partial) {\r\n Object.assign(this, init);\r\n }\r\n\r\n ratingValue2?(callback: () => number): number;\r\n\r\n get displayValue(): string {\r\n let desc = `${roundPercent(this.ratingValue * 100)}%`;\r\n if (this.displayType === DisplayType.Category) {\r\n // desc = this.ratingCriteria.find(rc => rc.ratingInRange(this.ratingValue)).description0(this.ratingValue);\r\n desc = this.ratingCriteria.find(rc => rc.ratingInRange(this.ratingValue)).description;\r\n } else if (this.displayType === DisplayType.Value) {\r\n desc = `${this.ratingValue.toFixed(2)}`\r\n } else if (this.displayType === DisplayType.Integer) {\r\n desc = `${this.ratingValue.toFixed(0)}`;\r\n }\r\n return desc;\r\n };\r\n\r\n get scoreIdx(): number {\r\n const idx = this.ratingCriteria.findIndex(rc => rc.ratingInRange(this.ratingValue));\r\n return idx !== -1 ? idx : 0;\r\n }\r\n\r\n get InputType(): InputControlType {\r\n if (this.allowInput) {\r\n if (this.displayType === DisplayType.Percentage) {\r\n return InputControlType.Numeric\r\n } else {\r\n return InputControlType.Radio\r\n }\r\n } else {\r\n return null\r\n }\r\n }\r\n\r\n\r\n}\r\n\r\nexport class PerfGridContent {\r\n userId?: number;\r\n userFirstName?: string;\r\n userLastName?: string;\r\n personId?: number;\r\n jobRoleId?: number;\r\n\r\n name?: string;\r\n\r\n metadata: PerfGridMeta = new PerfGridMeta();\r\n ratings: Array = new Array();\r\n\r\n public constructor(init?: Partial) {\r\n Object.assign(this, init);\r\n }\r\n\r\n get totalScore(): number {\r\n return this.ratings.map(r => this.metadata.Categories[r.scoreIdx].score).reduce( (a, c) => a + c, 0 );\r\n }\r\n\r\n get hoistedRatingIdx(): number {\r\n // let hoistedRatings: Array = this.ratings.filter(r => r.hoistRating);\r\n const hoistedRatingIdxs = this.ratings.filter(r => r.hoistRating).map(hr => hr.scoreIdx);\r\n return hoistedRatingIdxs.length > 0 ? Math.max(...hoistedRatingIdxs) : -1;\r\n // return Math.max(...this.ratings.filter(r => r.hoistRating).map(hr => hr.scoreIdx))\r\n }\r\n\r\n get highestRatingIdx(): number {\r\n return Math.max(...this.ratings.map(hr => hr.scoreIdx));\r\n }\r\n\r\n get moderatedRatingScoreIdx(): number {\r\n // if (this.perfGridContent.hoistedRatingIdx === -1 || ) {\r\n try {\r\n if (this.hoistedRatingIdx === -1 || this.hoistedRatingIdx <= this.cOverallRating.scoreIdx) {\r\n if (this.cOverallRating.scoreIdx === 0 && this.highestRatingIdx > 1) {\r\n return this.cOverallRating.scoreIdx + 1;\r\n } else {\r\n return this.cOverallRating.scoreIdx;\r\n }\r\n }\r\n } catch {\r\n // return -1;\r\n return this.cOverallRating.scoreIdx;\r\n }\r\n \r\n // if (this.perfGridContent.hoistedRatingIdx < this.overallRating.scoreIdx) {\r\n // return this.overallRating.scoreIdx;\r\n // }\r\n \r\n return this.hoistedRatingIdx;\r\n // return this.cOverallRating.scoreIdx;\r\n }\r\n\r\n get cOverallRating(): Partial {\r\n\r\n // const jj: Partial = {\r\n // name: 'SCORE',\r\n // ratingValue: this.totalScore,\r\n // ratingValue2: () => {return this.totalScore},\r\n // displayType: DisplayType.Category,\r\n // ratingCriteria: [\r\n // new PerfGridRatingCriterion(\r\n // {\r\n // // fromValue: 220,\r\n // fromValue: this.ratings.length * 40 * 0.61,\r\n // toValue: null,\r\n // description0: (fromValue, toValue) => { return 'OUTSTANDING' },\r\n // description: 'OUTSTANDING'\r\n // }\r\n // ),\r\n // new PerfGridRatingCriterion(\r\n // {\r\n // // fromValue: 180,\r\n // // toValue: 220,\r\n // fromValue: this.ratings.length * 40 * 0.5,\r\n // toValue: this.ratings.length * 40 * 0.61,\r\n // description0: (fromValue, toValue) => { return 'GOOD' },\r\n // description: 'GOOD'\r\n // }\r\n // ),\r\n // new PerfGridRatingCriterion(\r\n // {\r\n // // fromValue: 99,\r\n // // toValue: 180,\r\n // fromValue: this.ratings.length * 40 * 0.275,\r\n // toValue: this.ratings.length * 40 * 0.5,\r\n // description0: (fromValue, toValue) => { return 'REQUIRES IMPROVEMENT' },\r\n // description: 'REQUIRES IMPROVEMENT'\r\n // }\r\n // ),\r\n // new PerfGridRatingCriterion(\r\n // {\r\n // fromValue: null,\r\n // toValue: this.ratings.length * 40 * 0.275,\r\n // description0: (fromValue, toValue) => { return 'SPECIAL MEASURES' },\r\n // description: 'SPECIAL MEASURES'\r\n // }\r\n // ),\r\n // ]\r\n // }\r\n\r\n const jj: PerfGridRating = new PerfGridRating();\r\n \r\n jj.name = 'SCORE';\r\n jj.ratingValue = this.totalScore;\r\n jj.ratingValue2 = () => {return this.totalScore};\r\n jj.displayType = DisplayType.Category;\r\n\r\n jj.ratingCriteria.push(\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: this.ratings.length * 40 * 0.61,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return 'OUTSTANDING' },\r\n description: 'OUTSTANDING'\r\n }\r\n ));\r\n jj.ratingCriteria.push(\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: this.ratings.length * 40 * 0.5,\r\n toValue: this.ratings.length * 40 * 0.61,\r\n description0: (fromValue, toValue) => { return 'GOOD' },\r\n description: 'GOOD'\r\n }\r\n ));\r\n jj.ratingCriteria.push(\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: this.ratings.length * 40 * 0.275,\r\n toValue: this.ratings.length * 40 * 0.5,\r\n description0: (fromValue, toValue) => { return 'REQUIRES IMPROVEMENT' },\r\n description: 'REQUIRES IMPROVEMENT'\r\n }\r\n ));\r\n jj.ratingCriteria.push(\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: this.ratings.length * 40 * 0.275,\r\n description0: (fromValue, toValue) => { return 'SPECIAL MEASURES' },\r\n description: 'SPECIAL MEASURES'\r\n }\r\n ));\r\n\r\n\r\n return jj;\r\n }\r\n\r\n get cModeratedRating(): string {\r\n try {\r\n return this.cOverallRating.ratingCriteria[this.moderatedRatingScoreIdx].description0();\r\n } catch {\r\n return '';\r\n }\r\n }\r\n\r\n}\r\n\r\nexport class PerfMgmtResponse {\r\n me: PerfGridContent;\r\n team: Array = []\r\n}\r\n\r\nexport function roundPercent(num: number): number {\r\n return Math.round((num + Number.EPSILON) * 100) / 100\r\n}\r\n","export class PerfGridCol {\r\n name: string;\r\n score: number;\r\n\r\n constructor(init?: Partial) {\r\n Object.assign(this, init);\r\n }\r\n}\r\n\r\nexport class PerfGridMeta {\r\n Categories: Array = [];\r\n\r\n constructor(init?: Partial) {\r\n Object.assign(this, init);\r\n }\r\n\r\n categoryScore(catIdx: number): number {\r\n return catIdx === -1 ? 0 : this.Categories[catIdx].score;\r\n }\r\n}\r\n","import { Component, OnInit, Input, OnDestroy, OnChanges } from '@angular/core';\r\nimport { FormBuilder, FormArrayName, FormControl } from '@angular/forms';\r\nimport { PerfGridMeta } from './perf-grid-meta';\r\nimport { PerfGridContent, PerfGridRating, PerfGridRatingCriterion, DisplayType, InputControlType } from './perf-grid-content';\r\nimport { Subscription } from 'rxjs';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'ug-perf-grid',\r\n templateUrl: './perf-grid.component.html',\r\n styleUrls: ['./perf-grid.component.scss']\r\n})\r\nexport class PerfGridComponent implements OnDestroy, OnChanges, OnInit{\r\n\r\n // @Input() gridMeta: PerfGridMeta;\r\n @Input() perfGridContent: PerfGridContent;\r\n @Input() perfGridArray: Array = [];\r\n\r\n overallRating: PerfGridRating;\r\n\r\n perfForm = this.fb.group({});\r\n\r\n perfGridSubs = new Subscription();\r\n numberControlInput = InputControlType.Numeric;\r\n radioControlInput = InputControlType.Radio;\r\n displayType = DisplayType;\r\n\r\n constructor(private fb: FormBuilder, private router: Router) { }\r\n\r\n ngOnDestroy() {\r\n this.perfGridSubs.unsubscribe();\r\n }\r\n\r\n ngOnInit() {}\r\n ngOnChanges() {\r\n\r\n // }\r\n // ngOnInit() {\r\n // if ( this.perfGridContent.metadata.Categories.length === 0 || this.perfGridContent.ratings.length === 0 ) {\r\n if ( this.perfGridArray.length < 1 ) {\r\n return;\r\n }\r\n this.perfGridContent = this.perfGridArray[0];\r\n this.overallRating = new PerfGridRating(\r\n {\r\n name: 'SCORE',\r\n // ratingValue: this.perfGridContent.totalScore,\r\n ratingValue: this.overallScore,\r\n ratingValue2: () => {return this.perfGridContent.totalScore},\r\n displayType: DisplayType.Category,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n // fromValue: 220,\r\n fromValue: this.perfGridContent.ratings.length * 40 * 0.61,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return 'OUTSTANDING' },\r\n description: 'OUTSTANDING'\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n // fromValue: 180,\r\n // toValue: 220,\r\n fromValue: this.perfGridContent.ratings.length * 40 * 0.5,\r\n toValue: this.perfGridContent.ratings.length * 40 * 0.61,\r\n description0: (fromValue, toValue) => { return 'GOOD' },\r\n description: 'GOOD'\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n // fromValue: 99,\r\n // toValue: 180,\r\n fromValue: this.perfGridContent.ratings.length * 40 * 0.275,\r\n toValue: this.perfGridContent.ratings.length * 40 * 0.5,\r\n description0: (fromValue, toValue) => { return 'REQUIRES IMPROVEMENT' },\r\n description: 'REQUIRES IMPROVEMENT'\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: this.perfGridContent.ratings.length * 40 * 0.275,\r\n description0: (fromValue, toValue) => { return 'SPECIAL MEASURES' },\r\n description: 'SPECIAL MEASURES'\r\n }\r\n ),\r\n ]\r\n }\r\n );\r\n\r\n // this.perfGridSubs.unsubscribe();\r\n this.perfForm = this.fb.group({});\r\n this.perfGridContent.ratings.forEach((r, i) => {\r\n if (r.allowInput) {\r\n this.perfForm.addControl(`${i}`, new FormControl(r.ratingValue))\r\n }\r\n })\r\n this.perfGridSubs.add(\r\n this.perfForm.valueChanges.subscribe(\r\n (changes) => {\r\n console.log(changes)\r\n Object.keys(changes).forEach(k => {\r\n console.log(`Key:${k}, Value:${changes[k]}`);\r\n // if (this.perfGridContent.ratings[k].displayType === this.displayType.Percentage) {\r\n // this.perfGridContent.ratings[k].ratingValue = changes[k] / 100;\r\n // } else {\r\n // this.perfGridContent.ratings[k].ratingValue = changes[k];\r\n // }\r\n this.perfGridContent.ratings[k].ratingValue = changes[k];\r\n console.log(this.perfGridContent.ratings[k].ratingValue);\r\n console.log(this.perfGridContent.totalScore);\r\n })\r\n }\r\n )\r\n );\r\n\r\n }\r\n\r\n categoryBG(ratingIdx: number) {\r\n let bgClass = '';\r\n switch (ratingIdx) {\r\n case 0:\r\n bgClass = 'esqep-bg-outstanding';\r\n break;\r\n case 1:\r\n bgClass = 'esqep-bg-good';\r\n break;\r\n case 2:\r\n bgClass = 'esqep-bg-req-improve';\r\n break;\r\n case 3:\r\n bgClass = 'esqep-bg-special-measures text-white'\r\n break\r\n }\r\n return bgClass\r\n }\r\n\r\n ratingBG(ratingIdx: number, rating: PerfGridRating): string {\r\n let ratingClass = '';\r\n if (rating && this.ratingInRange(rating.ratingValue, rating.ratingCriteria[ratingIdx].fromValue, rating.ratingCriteria[ratingIdx].toValue)) {\r\n ratingClass = this.categoryBG(ratingIdx)\r\n }\r\n return ratingClass\r\n }\r\n\r\n overallBG(ratingIdx: number): string {\r\n return this.categoryBG(ratingIdx);\r\n }\r\n\r\n ratingInRange(ratingValue: number, fromValue: number, toValue: number) {\r\n if (fromValue === null) {\r\n return ratingValue < toValue;\r\n }\r\n\r\n if (toValue === null) {\r\n return ratingValue >= fromValue;\r\n }\r\n\r\n // return ((ratingValue - fromValue) * (ratingValue - toValue) <= 0);\r\n return (ratingValue < toValue && ratingValue >= fromValue);\r\n }\r\n\r\n salesProcessValue(indexValue: number) {\r\n return Math.abs(3 - indexValue)\r\n }\r\n\r\n hideRadio(radioIdx: number, buttonIdx: number) {\r\n return this.perfForm.get(`${radioIdx}`).value === 3 - buttonIdx;\r\n }\r\n\r\n percentValue(controlIdx: number): number {\r\n return this.perfForm.get(`${controlIdx}`).value * 100;\r\n }\r\n\r\n get moderatedRatingScoreIdxOld(): number {\r\n if (this.perfGridContent.hoistedRatingIdx === -1) {\r\n return this.overallRating.scoreIdx;\r\n }\r\n\r\n if (this.perfGridContent.hoistedRatingIdx < this.overallRating.scoreIdx) {\r\n return this.overallRating.scoreIdx;\r\n }\r\n\r\n return this.perfGridContent.hoistedRatingIdx;\r\n }\r\n\r\n get moderatedRatingScoreIdx(): number {\r\n // if (this.perfGridContent.hoistedRatingIdx === -1 || ) {\r\n try {\r\n if (this.perfGridContent.hoistedRatingIdx <= this.overallRating.scoreIdx) {\r\n if (this.overallRating.scoreIdx === 0 && this.perfGridContent.highestRatingIdx > 1) {\r\n return this.overallRating.scoreIdx + 1;\r\n } else {\r\n return this.overallRating.scoreIdx;\r\n }\r\n }\r\n } catch {\r\n return -1;\r\n }\r\n\r\n // if (this.perfGridContent.hoistedRatingIdx < this.overallRating.scoreIdx) {\r\n // return this.overallRating.scoreIdx;\r\n // }\r\n\r\n return this.perfGridContent.hoistedRatingIdx;\r\n }\r\n\r\n get moderatedRatingOld(): PerfGridRating {\r\n return this.overallRating;\r\n }\r\n\r\n get moderatedRating(): string {\r\n try {\r\n return this.overallRating.ratingCriteria[this.moderatedRatingScoreIdx].description0();\r\n } catch {\r\n return '';\r\n }\r\n }\r\n\r\n get overallScore(): number {\r\n return this.perfGridContent.totalScore;\r\n }\r\n\r\n onAssessClick() {\r\n this.router.navigate(['/mydata/claims/bulk'])\r\n }\r\n\r\n tabClick(tabIndex: number) {\r\n this.perfGridContent = this.perfGridArray[tabIndex];\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
Rating Criteria
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

OUTSTANDING

\r\n
\r\n
\r\n

220 points+

\r\n
\r\n
\r\n

Minimum GOOD rated in Written, STP, QA & Passover benchmarks

\r\n

Rated GOOD or above in every measurement area

\r\n
\r\n
\r\n
\r\n
\r\n

GOOD

\r\n
\r\n
\r\n

180 to 219 points

\r\n
\r\n
\r\n

Minimum GOOD rated in Written, STP, & QA benchmarks

\r\n
\r\n
\r\n
\r\n
\r\n

REQUIRES IMPROVEMENT

\r\n
\r\n
\r\n

99 to 179 points

\r\n
\r\n
\r\n

Automatic REQUIRES IMPROVEMENT if Written, STP or QA benchmark missed irrespective of points

\r\n
\r\n
\r\n
\r\n
\r\n

SPECIAL MEASURES

\r\n
\r\n
\r\n

98 points of fewer

\r\n
\r\n
\r\n

Automatic SPECIAL MEASURES if Written, STP or QA benchmark is in SPECIAL MEASURES category

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
1\" class=\"card-text h5\">Roles:
\r\n \r\n
\r\n
\r\n \r\n
Performance Summary
\r\n
\r\n\r\n
\r\n
\r\n

Ratings

\r\n
\r\n
\r\n

{{c.name}}

\r\n
{{c.score}} points
\r\n
\r\n
\r\n

Points

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

{{rc.description}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{r.name}}
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
{{r.displayValue}}
\r\n \r\n
\r\n
\r\n
{{perfGridContent?.metadata?.categoryScore(r.scoreIdx)}}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n

{{perfGridContent?.cOverallRating?.name}}

\r\n
\r\n
\r\n \r\n
\r\n
\r\n RATING\r\n \r\n
\r\n
\r\n \r\n {{perfGridContent?.cModeratedRating}}\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n\r\n","import { PerfGridContent, roundPercent, PerfGridRating, PerfGridRatingCriterion, DisplayType } from './perf-grid-content';\r\nimport { PerfGridMeta, PerfGridCol } from './perf-grid-meta';\r\n\r\nexport const perfGridContentMe: PerfGridContent = new PerfGridContent(\r\n {\r\n userFirstName: 'John',\r\n userLastName: 'Harmon',\r\n name: 'Sales Manager',\r\n metadata: new PerfGridMeta(\r\n {\r\n Categories:\r\n [\r\n new PerfGridCol(\r\n { name: 'Outstanding', score: 40 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Good', score: 20 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Requires Improvement', score: 0 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Special Measures', score: -20 }\r\n )\r\n ]\r\n }\r\n ),\r\n ratings: [\r\n new PerfGridRating(\r\n {\r\n name: 'Written Performance',\r\n ratingValue: 1.128,\r\n // ratingValue: 0.9,\r\n // ratingValue: 0.97,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1.04,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}% of written goal+` },\r\n description: `104% of written goal+`,\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 1.04,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% of written goal`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.95,\r\n toValue: 1,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% of written goal`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.95,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% of written goal` },\r\n }\r\n )\r\n ]\r\n }\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'STP Performance',\r\n ratingValue: 1.091,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1.04,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}% of STP goal+` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 1.04,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% of STP goal`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.95,\r\n toValue: 1,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% of STP goal`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.95,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% of STP goal` },\r\n },\r\n )\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Passover Rate',\r\n ratingValue: 0.0433,\r\n // ratingValue: 0.055,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.05,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% passover rate` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.05,\r\n toValue: 0.055,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% passover rate`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.055,\r\n toValue: 0.06,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% passover rate`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.06,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `Over ${roundPercent(fromValue * 100)}% passover rate` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Big3 Performance',\r\n ratingValue: 0.11,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.075,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}% FBTC+` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.05,\r\n toValue: 0.075,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% FTBC`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.03,\r\n toValue: 0.05,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% FTBC`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.03,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% FTBC` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Employee Turnover',\r\n // ratingValue: 0.2526,\r\n // ratingValue: 0.55,\r\n ratingValue: 0.45,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.4,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% (left the business)` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.4,\r\n toValue: 0.5,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% (left the business)`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.5,\r\n toValue: 0.6,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% (left the business)`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.6,\r\n toValue: null,\r\n description0: (fromValue, toValue) => {\r\n return `Over ${roundPercent(fromValue * 100)}% (left the business)`\r\n },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'QA Performance',\r\n ratingValue: 0.0403,\r\n allowInput: false,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.03,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `QA benchmark +${roundPercent(fromValue * 100)}%` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0,\r\n toValue: 0.03,\r\n description0: (fromValue, toValue) => {\r\n return `QA benchmark met`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: -0.03,\r\n toValue: 0,\r\n description0: (fromValue, toValue) => {\r\n return `Within ${roundPercent(Math.abs(fromValue) * 100)}% of QA benchmark`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: -0.03,\r\n description0: (fromValue, toValue) => { return `${roundPercent(toValue * 100)}% under QA benchmark` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Sales Process',\r\n displayType: DisplayType.Category,\r\n ratingValue: 2,\r\n allowInput: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 3,\r\n toValue: 4,\r\n description0: (fromValue, toValue) => { return `Process perfect` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 2,\r\n toValue: 3,\r\n description0: (fromValue, toValue) => {\r\n return `Process followed`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 2,\r\n description0: (fromValue, toValue) => {\r\n return `1 key area missed`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0,\r\n toValue: 1,\r\n description0: (fromValue, toValue) => { return `More than 1 key area missed` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Absence management',\r\n ratingValue: 0.0417,\r\n // ratingValue: 0.1,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.04,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% sickness` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.04,\r\n toValue: 0.06,\r\n description0: (fromValue, toValue) => {\r\n return `Between ${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}%`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.06,\r\n toValue: 0.08,\r\n description0: (fromValue, toValue) => {\r\n return `Between ${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}%`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.08,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `Over ${roundPercent(fromValue * 100)}%` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Complaints',\r\n ratingValue: 0.0024,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.01,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% upheld` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.01,\r\n toValue: 0.015,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% upheld`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.015,\r\n toValue: 0.02,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% upheld`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.02,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}%+ upheld` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n ]\r\n }\r\n)\r\n\r\nexport const perfGridContentMember1: PerfGridContent = new PerfGridContent(\r\n {\r\n userFirstName: 'Martha',\r\n userLastName: 'Bardell',\r\n name: 'Sales Agent',\r\n metadata: new PerfGridMeta(\r\n {\r\n Categories:\r\n [\r\n new PerfGridCol(\r\n { name: 'Outstanding', score: 40 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Good', score: 20 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Requires Improvement', score: 0 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Special Measures', score: -20 }\r\n )\r\n ]\r\n }\r\n ),\r\n ratings: [\r\n new PerfGridRating(\r\n {\r\n name: 'Written Performance',\r\n // ratingValue: 1.128,\r\n // ratingValue: 0.9,\r\n ratingValue: 1.01,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1.04,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}% of written goal+` },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 1.04,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% of written goal`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.95,\r\n toValue: 1,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% of written goal`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.95,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% of written goal` },\r\n }\r\n )\r\n ]\r\n }\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'STP Performance',\r\n ratingValue: 1.031,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1.04,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}% of STP goal+` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 1.04,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% of STP goal`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.95,\r\n toValue: 1,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% of STP goal`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.95,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% of STP goal` },\r\n },\r\n )\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Passover Rate',\r\n ratingValue: 0.021,\r\n // ratingValue: 0.055,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.05,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% passover rate` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.05,\r\n toValue: 0.055,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% passover rate`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.055,\r\n toValue: 0.06,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% passover rate`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.06,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `Over ${roundPercent(fromValue * 100)}% passover rate` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Big3 Performance',\r\n ratingValue: 0.083,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.075,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}% FBTC+` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.05,\r\n toValue: 0.075,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% FTBC`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.03,\r\n toValue: 0.05,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% FTBC`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.03,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% FTBC` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'QA Performance',\r\n ratingValue: 0.0571,\r\n allowInput: false,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.03,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `QA benchmark +${roundPercent(fromValue * 100)}%` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0,\r\n toValue: 0.03,\r\n description0: (fromValue, toValue) => {\r\n return `QA benchmark met`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: -0.03,\r\n toValue: 0,\r\n description0: (fromValue, toValue) => {\r\n return `Within ${roundPercent(Math.abs(fromValue) * 100)}% of QA benchmark`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: -0.03,\r\n description0: (fromValue, toValue) => { return `${roundPercent(toValue * 100)}% under QA benchmark` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Sales Process',\r\n displayType: DisplayType.Category,\r\n ratingValue: 3,\r\n allowInput: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 3,\r\n toValue: 4,\r\n description0: (fromValue, toValue) => { return `Process perfect` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 2,\r\n toValue: 3,\r\n description0: (fromValue, toValue) => {\r\n return `Process followed`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 2,\r\n description0: (fromValue, toValue) => {\r\n return `1 key area missed`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0,\r\n toValue: 1,\r\n description0: (fromValue, toValue) => { return `More than 1 key area missed` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Absence management',\r\n ratingValue: 0.0117,\r\n // ratingValue: 0.1,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.04,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% sickness` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.04,\r\n toValue: 0.06,\r\n description0: (fromValue, toValue) => {\r\n return `Between ${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}%`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.06,\r\n toValue: 0.08,\r\n description0: (fromValue, toValue) => {\r\n return `Between ${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}%`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.08,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `Over ${roundPercent(fromValue * 100)}%` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Complaints',\r\n ratingValue: 0.0064,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.01,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% upheld` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.01,\r\n toValue: 0.015,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% upheld`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.015,\r\n toValue: 0.02,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% upheld`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.02,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}%+ upheld` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n ]\r\n }\r\n)\r\nexport const perfGridContentMember2: PerfGridContent = new PerfGridContent(\r\n {\r\n userFirstName: 'Arthur',\r\n userLastName: 'Havisham',\r\n name: 'Sales Agent',\r\n metadata: new PerfGridMeta(\r\n {\r\n Categories:\r\n [\r\n new PerfGridCol(\r\n { name: 'Outstanding', score: 40 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Good', score: 20 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Requires Improvement', score: 0 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Special Measures', score: -20 }\r\n )\r\n ]\r\n }\r\n ),\r\n ratings: [\r\n new PerfGridRating(\r\n {\r\n name: 'Written Performance',\r\n ratingValue: 1.04,\r\n // ratingValue: 0.9,\r\n // ratingValue: 0.97,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1.04,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}% of written goal+` },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 1.04,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% of written goal`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.95,\r\n toValue: 1,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% of written goal`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.95,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% of written goal` },\r\n }\r\n )\r\n ]\r\n }\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'STP Performance',\r\n ratingValue: 1.039,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1.04,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}% of STP goal+` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 1.04,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% of STP goal`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.95,\r\n toValue: 1,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% of STP goal`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.95,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% of STP goal` },\r\n },\r\n )\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Passover Rate',\r\n // ratingValue: 0.0433,\r\n ratingValue: 0.049,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.05,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% passover rate` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.05,\r\n toValue: 0.055,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% passover rate`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.055,\r\n toValue: 0.06,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% passover rate`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.06,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `Over ${roundPercent(fromValue * 100)}% passover rate` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Big3 Performance',\r\n ratingValue: 0.05,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.075,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}% FBTC+` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.05,\r\n toValue: 0.075,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% FTBC`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.03,\r\n toValue: 0.05,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% FTBC`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.03,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% FTBC` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'QA Performance',\r\n ratingValue: 0.0303,\r\n allowInput: false,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.03,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `QA benchmark +${roundPercent(fromValue * 100)}%` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0,\r\n toValue: 0.03,\r\n description0: (fromValue, toValue) => {\r\n return `QA benchmark met`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: -0.03,\r\n toValue: 0,\r\n description0: (fromValue, toValue) => {\r\n return `Within ${roundPercent(Math.abs(fromValue) * 100)}% of QA benchmark`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: -0.03,\r\n description0: (fromValue, toValue) => { return `${roundPercent(toValue * 100)}% under QA benchmark` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Sales Process',\r\n displayType: DisplayType.Category,\r\n ratingValue: 3,\r\n allowInput: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 3,\r\n toValue: 4,\r\n description0: (fromValue, toValue) => { return `Process perfect` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 2,\r\n toValue: 3,\r\n description0: (fromValue, toValue) => {\r\n return `Process followed`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 2,\r\n description0: (fromValue, toValue) => {\r\n return `1 key area missed`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0,\r\n toValue: 1,\r\n description0: (fromValue, toValue) => { return `More than 1 key area missed` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Absence management',\r\n ratingValue: 0.06,\r\n // ratingValue: 0.1,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.04,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% sickness` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.04,\r\n toValue: 0.06,\r\n description0: (fromValue, toValue) => {\r\n return `Between ${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}%`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.06,\r\n toValue: 0.08,\r\n description0: (fromValue, toValue) => {\r\n return `Between ${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}%`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.08,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `Over ${roundPercent(fromValue * 100)}%` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Complaints',\r\n ratingValue: 0.01,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.01,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% upheld` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.01,\r\n toValue: 0.015,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% upheld`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.015,\r\n toValue: 0.02,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% upheld`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.02,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}%+ upheld` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n ]\r\n }\r\n)\r\n\r\nexport const perfGridContentSalesAgent1: PerfGridContent = new PerfGridContent(\r\n {\r\n userFirstName: 'Thomas',\r\n userLastName: 'Bardell',\r\n name: 'Sales Agent',\r\n metadata: new PerfGridMeta(\r\n {\r\n Categories:\r\n [\r\n new PerfGridCol(\r\n { name: 'Outstanding', score: 40 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Good', score: 20 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Requires Improvement', score: 0 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Special Measures', score: -20 }\r\n )\r\n ]\r\n }\r\n ),\r\n ratings: [\r\n new PerfGridRating(\r\n {\r\n name: 'Written Performance',\r\n // ratingValue: 1.128,\r\n // ratingValue: 0.9,\r\n ratingValue: 4900,\r\n hoistRating: true,\r\n displayType: DisplayType.Value,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 5000,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${fromValue} and over Written goal` },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0,\r\n toValue: 5000,\r\n description0: (fromValue, toValue) => {\r\n return `Hit Written goal to ${toValue}`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: -3000,\r\n toValue: 0,\r\n description0: (fromValue, toValue) => {\r\n return `Within ${fromValue} of Written goal`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: -3000,\r\n description0: (fromValue, toValue) => { return `Miss Written goal by more then ${Math.abs(toValue)}` },\r\n }\r\n )\r\n ]\r\n }\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'STP Performance',\r\n ratingValue: -1000,\r\n hoistRating: true,\r\n displayType: DisplayType.Value,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 5000,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${fromValue} and over STP goal+` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0,\r\n toValue: 5000,\r\n description0: (fromValue, toValue) => {\r\n return `Hit STP goal to ${toValue}`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: -3000,\r\n toValue: 0,\r\n description0: (fromValue, toValue) => {\r\n return `Within ${fromValue} of goal`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: -3000,\r\n description0: (fromValue, toValue) => { return `Miss STP goal by more than ${Math.abs(toValue)}` },\r\n },\r\n )\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Passover Rate',\r\n ratingValue: 0.07,\r\n // ratingValue: 0.055,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.04,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% passover rate` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.04,\r\n toValue: 0.045,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% passover rate`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.045,\r\n toValue: 0.06,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% passover rate`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.06,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `Over ${roundPercent(fromValue * 100)}% passover rate` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Big3 Performance',\r\n ratingValue: 0.083,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.075,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}% FBTC+` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.05,\r\n toValue: 0.075,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% FTBC`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.03,\r\n toValue: 0.05,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% FTBC`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.03,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% FTBC` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'FTBC',\r\n ratingValue: 0.021,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.25,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}% FBTC+` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.2,\r\n toValue: 0.249,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% FTBC`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.15,\r\n toValue: 0.199,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% FTBC`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.15,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% FTBC` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'QA Performance',\r\n ratingValue: 0.0571,\r\n allowInput: false,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.03,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `QA benchmark +${roundPercent(fromValue * 100)}%` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0,\r\n toValue: 0.03,\r\n description0: (fromValue, toValue) => {\r\n return `QA benchmark met`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: -0.05,\r\n toValue: 0,\r\n description0: (fromValue, toValue) => {\r\n return `Within ${roundPercent(Math.abs(fromValue) * 100)}% of QA benchmark`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: -0.05,\r\n description0: (fromValue, toValue) => { return `${roundPercent(toValue * 100)}% under QA benchmark` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Sales Process - Sales Manager to Rate',\r\n displayType: DisplayType.Category,\r\n ratingValue: 3,\r\n allowInput: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 3,\r\n toValue: 4,\r\n description0: (fromValue, toValue) => { return `Process perfect` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 2,\r\n toValue: 3,\r\n description0: (fromValue, toValue) => {\r\n return `Process followed`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 2,\r\n description0: (fromValue, toValue) => {\r\n return `1 key area missed`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0,\r\n toValue: 1,\r\n description0: (fromValue, toValue) => { return `More than 1 key area missed` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Absence management',\r\n ratingValue: 0,\r\n displayType: DisplayType.Value,\r\n // ratingValue: 0.1,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0,\r\n description0: (fromValue, toValue) => { return `${toValue} absence` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0,\r\n toValue: 1,\r\n description0: (fromValue, toValue) => {\r\n return `N/A`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 2,\r\n description0: (fromValue, toValue) => {\r\n return `${fromValue} absence`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 2,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${fromValue} or more absences` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Trust Pilot Rating',\r\n ratingValue: 4.2,\r\n displayType: DisplayType.Value,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 5,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${fromValue} stars` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 4.5,\r\n toValue: 5,\r\n description0: (fromValue, toValue) => {\r\n return `${fromValue} to ${toValue} stars`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 4,\r\n toValue: 4.5,\r\n description0: (fromValue, toValue) => {\r\n return `${fromValue} to ${toValue} stars`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 4,\r\n description0: (fromValue, toValue) => { return `${toValue} stars or below` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n ]\r\n }\r\n)\r\n\r\nexport const perfGridContentSalesManager1: PerfGridContent = new PerfGridContent(\r\n {\r\n userFirstName: 'Martha',\r\n userLastName: 'Bardell',\r\n name: 'Sales Manager',\r\n metadata: new PerfGridMeta(\r\n {\r\n Categories:\r\n [\r\n new PerfGridCol(\r\n { name: 'Outstanding', score: 40 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Good', score: 20 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Requires Improvement', score: 0 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Special Measures', score: -20 }\r\n )\r\n ]\r\n }\r\n ),\r\n ratings: [\r\n new PerfGridRating(\r\n {\r\n name: 'Written Performance',\r\n // ratingValue: 1.128,\r\n // ratingValue: 0.9,\r\n ratingValue: 1.075,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1.04,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}% of Written goal+` },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 1.04,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% of Written goal`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.95,\r\n toValue: 1,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% of Written goal`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.95,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% of Written goal` },\r\n }\r\n )\r\n ]\r\n }\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'STP Performance',\r\n ratingValue: 1.139,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1.04,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)} of STP goal+` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 1.04,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% of STP goal`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.95,\r\n toValue: 1,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% of STP goal`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.95,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% of STP goal` },\r\n },\r\n )\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Passover Rate',\r\n ratingValue: 0.0266,\r\n // ratingValue: 0.055,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.05,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% passover rate` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.05,\r\n toValue: 0.055,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% passover rate`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.055,\r\n toValue: 0.06,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% passover rate`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.06,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `Over ${roundPercent(fromValue * 100)}% passover rate` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Big3 Performance',\r\n ratingValue: 0.1926,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.075,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}% FBTC+` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.05,\r\n toValue: 0.075,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% FTBC`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.03,\r\n toValue: 0.05,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% FTBC`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.03,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% FTBC` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Hit Rate',\r\n ratingValue: 0.5,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.80,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}%+` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.7,\r\n toValue: 0.8,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}%`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.6,\r\n toValue: 0.7,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}%`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.6,\r\n description0: (fromValue, toValue) => { return `${roundPercent(toValue * 100)}% or under` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'QA Performance',\r\n ratingValue: 0.0472,\r\n allowInput: false,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.03,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `QA benchmark +${roundPercent(fromValue * 100)}%` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0,\r\n toValue: 0.03,\r\n description0: (fromValue, toValue) => {\r\n return `QA benchmark met`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: -0.03,\r\n toValue: 0,\r\n description0: (fromValue, toValue) => {\r\n return `Within ${roundPercent(Math.abs(fromValue) * 100)}% of QA benchmark`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: -0.03,\r\n description0: (fromValue, toValue) => { return `${roundPercent(toValue * 100)}% under QA benchmark` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Sales Process - Sales Leader to Rate',\r\n displayType: DisplayType.Category,\r\n ratingValue: 3,\r\n allowInput: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 3,\r\n toValue: 4,\r\n description0: (fromValue, toValue) => { return `Process perfect` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 2,\r\n toValue: 3,\r\n description0: (fromValue, toValue) => {\r\n return `Process followed`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 2,\r\n description0: (fromValue, toValue) => {\r\n return `1 key area missed`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0,\r\n toValue: 1,\r\n description0: (fromValue, toValue) => { return `More than 1 key area missed` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Absence management',\r\n ratingValue: 0.0212,\r\n // ratingValue: 0.1,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.04,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}%` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.04,\r\n toValue: 0.06,\r\n description0: (fromValue, toValue) => {\r\n return `Between ${roundPercent(fromValue * 100)}% and ${roundPercent(toValue * 100)}%`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.06,\r\n toValue: 0.08,\r\n description0: (fromValue, toValue) => {\r\n return `Between ${roundPercent(fromValue * 100)}% and ${roundPercent(toValue * 100)}%`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.08,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}% or over` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Trust Pilot Rating',\r\n ratingValue: 4.76,\r\n displayType: DisplayType.Value,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 5,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${fromValue} stars` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 4.5,\r\n toValue: 5,\r\n description0: (fromValue, toValue) => {\r\n return `${fromValue} to ${toValue} stars`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 4,\r\n toValue: 4.5,\r\n description0: (fromValue, toValue) => {\r\n return `${fromValue} to ${toValue} stars`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 4,\r\n description0: (fromValue, toValue) => { return `${toValue} stars or below` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n ]\r\n }\r\n)\r\n\r\nexport const perfGridContentRecruitTeam1: PerfGridContent = new PerfGridContent(\r\n {\r\n userFirstName: 'Arabella',\r\n userLastName: 'Allen',\r\n name: 'Recruitment Manager',\r\n metadata: new PerfGridMeta(\r\n {\r\n Categories:\r\n [\r\n new PerfGridCol(\r\n { name: 'Outstanding', score: 40 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Good', score: 20 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Requires Improvement', score: 0 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Special Measures', score: -20 }\r\n )\r\n ]\r\n }\r\n ),\r\n ratings: [\r\n new PerfGridRating(\r\n {\r\n name: 'Sales Recruitment (Life & funerals)',\r\n // ratingValue: 1.128,\r\n // ratingValue: 0.9,\r\n ratingValue: 2,\r\n displayType: DisplayType.Value,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 7,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${fromValue}+ hires` },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 5,\r\n toValue: 6,\r\n description0: (fromValue, toValue) => {\r\n return `${fromValue} to ${toValue} hires`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 3,\r\n toValue: 4,\r\n description0: (fromValue, toValue) => {\r\n return `${fromValue} to ${toValue} hires`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 3,\r\n description0: (fromValue, toValue) => { return `Under ${toValue} hires` },\r\n }\r\n )\r\n ]\r\n }\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Sales joiners agreed start (Following month)',\r\n ratingValue: 10,\r\n displayType: DisplayType.Value,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 7,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${fromValue}+ hires` },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 5,\r\n toValue: 7,\r\n description0: (fromValue, toValue) => {\r\n return `${fromValue} to ${toValue} hires`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 3,\r\n toValue: 5,\r\n description0: (fromValue, toValue) => {\r\n return `${fromValue} to ${toValue} hires`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 3,\r\n description0: (fromValue, toValue) => { return `Under ${toValue} hires` },\r\n }\r\n )\r\n ]\r\n }\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Telephone interviews completed',\r\n ratingValue: 38,\r\n displayType: DisplayType.Value,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 31,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${fromValue}+` },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 26,\r\n toValue: 30,\r\n description0: (fromValue, toValue) => {\r\n return `${fromValue} to ${toValue}`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 20,\r\n toValue: 25,\r\n description0: (fromValue, toValue) => {\r\n return `${fromValue} to ${toValue}`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 20,\r\n description0: (fromValue, toValue) => { return `Under ${toValue}` },\r\n }\r\n )\r\n ]\r\n }\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Attended Assessment Centres',\r\n ratingValue: 21,\r\n displayType: DisplayType.Value,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 16,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${fromValue}+` },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 12,\r\n toValue: 16,\r\n description0: (fromValue, toValue) => {\r\n return `${fromValue} to ${toValue}`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 8,\r\n toValue: 12,\r\n description0: (fromValue, toValue) => {\r\n return `${fromValue} to ${toValue}`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 8,\r\n description0: (fromValue, toValue) => { return `Under ${toValue}` },\r\n }\r\n )\r\n ]\r\n }\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'AC offer rate',\r\n ratingValue: 0.48,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.45,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}%+` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.4,\r\n toValue: 0.45,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}%`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.325,\r\n toValue: 0.4,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}%`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.325,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}%` },\r\n },\r\n )\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Drop out rate from offer',\r\n ratingValue: 0,\r\n displayType: DisplayType.Value,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0,\r\n toValue: 1,\r\n description0: (fromValue, toValue) => { return `${fromValue}` },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 2,\r\n description0: (fromValue, toValue) => {\r\n return `${fromValue}`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 2,\r\n toValue: 3,\r\n description0: (fromValue, toValue) => {\r\n return `${fromValue}`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 3,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${fromValue}+` },\r\n }\r\n )\r\n ]\r\n }\r\n ),\r\n ]\r\n }\r\n)\r\n\r\nexport const perfGridContentPeopleProjCoord1: PerfGridContent = new PerfGridContent(\r\n {\r\n userFirstName: 'Bayham',\r\n userLastName: 'Badger',\r\n name: 'People Project Coordinator',\r\n metadata: new PerfGridMeta(\r\n {\r\n Categories:\r\n [\r\n new PerfGridCol(\r\n { name: 'Outstanding', score: 40 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Good', score: 20 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Requires Improvement', score: 0 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Special Measures', score: -20 }\r\n )\r\n ]\r\n }\r\n ),\r\n ratings: [\r\n new PerfGridRating(\r\n {\r\n name: 'Market Analysis',\r\n // ratingValue: 1.128,\r\n // ratingValue: 0.9,\r\n ratingValue: 1,\r\n displayType: DisplayType.Category,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 2,\r\n description0: (fromValue, toValue) => { return `Ahead of plan` },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 2,\r\n toValue: 3,\r\n description0: (fromValue, toValue) => {\r\n return `On plan`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 3,\r\n toValue: 4,\r\n description0: (fromValue, toValue) => {\r\n return `Behind plan`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 4,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `Off plan` },\r\n }\r\n )\r\n ]\r\n }\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Risk Register and Competitor Analysis',\r\n // ratingValue: 1.128,\r\n // ratingValue: 0.9,\r\n ratingValue: 1,\r\n displayType: DisplayType.Category,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 2,\r\n description0: (fromValue, toValue) => { return `Ahead of plan` },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 2,\r\n toValue: 3,\r\n description0: (fromValue, toValue) => {\r\n return `On plan`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 3,\r\n toValue: 4,\r\n description0: (fromValue, toValue) => {\r\n return `Behind plan`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 4,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `Off plan` },\r\n }\r\n )\r\n ]\r\n }\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'People Systems Integration',\r\n // ratingValue: 1.128,\r\n // ratingValue: 0.9,\r\n ratingValue: 1,\r\n displayType: DisplayType.Category,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 2,\r\n description0: (fromValue, toValue) => { return `Ahead of plan` },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 2,\r\n toValue: 3,\r\n description0: (fromValue, toValue) => {\r\n return `On plan`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 3,\r\n toValue: 4,\r\n description0: (fromValue, toValue) => {\r\n return `Behind plan`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 4,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `Off plan` },\r\n }\r\n )\r\n ]\r\n }\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Sales Academy Project',\r\n // ratingValue: 1.128,\r\n // ratingValue: 0.9,\r\n ratingValue: 2,\r\n displayType: DisplayType.Category,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 2,\r\n description0: (fromValue, toValue) => { return `Ahead of plan` },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 2,\r\n toValue: 3,\r\n description0: (fromValue, toValue) => {\r\n return `On plan`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 3,\r\n toValue: 4,\r\n description0: (fromValue, toValue) => {\r\n return `Behind plan`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 4,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `Off plan` },\r\n }\r\n )\r\n ]\r\n }\r\n ),\r\n ]\r\n }\r\n)\r\n\r\nexport const perfGridContentPortsmouth201912: PerfGridContent = new PerfGridContent(\r\n {\r\n userFirstName: 'Arthur',\r\n userLastName: 'Havisham',\r\n name: 'Portsmouth Office',\r\n metadata: new PerfGridMeta(\r\n {\r\n Categories:\r\n [\r\n new PerfGridCol(\r\n { name: 'Outstanding', score: 40 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Good', score: 20 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Requires Improvement', score: 0 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Special Measures', score: -20 }\r\n )\r\n ]\r\n }\r\n ),\r\n ratings: [\r\n new PerfGridRating(\r\n {\r\n name: 'Written Performance',\r\n ratingValue: 1.128,\r\n // ratingValue: 0.9,\r\n // ratingValue: 0.97,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1.04,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}% of written goal+` },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 1.04,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% of written goal`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.95,\r\n toValue: 1,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% of written goal`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.95,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% of written goal` },\r\n }\r\n )\r\n ]\r\n }\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'STP Performance',\r\n ratingValue: 1.091,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1.04,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}% of STP goal+` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 1.04,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% of STP goal`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.95,\r\n toValue: 1,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% of STP goal`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.95,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% of STP goal` },\r\n },\r\n )\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Passover Rate',\r\n // ratingValue: 0.0433,\r\n ratingValue: 0.0433,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.05,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% passover rate` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.05,\r\n toValue: 0.055,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% passover rate`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.055,\r\n toValue: 0.06,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% passover rate`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.06,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `Over ${roundPercent(fromValue * 100)}% passover rate` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Big3 Performance',\r\n ratingValue: 0.11,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.075,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}% FBTC+` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.05,\r\n toValue: 0.075,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% FTBC`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.03,\r\n toValue: 0.05,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% FTBC`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.03,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% FTBC` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Employee Turnover',\r\n ratingValue: 0.2526,\r\n // ratingValue: 0.55,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.4,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% (left the business)` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.4,\r\n toValue: 0.5,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% (left the business)`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.5,\r\n toValue: 0.6,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% (left the business)`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.6,\r\n toValue: null,\r\n description0: (fromValue, toValue) => {\r\n return `Over ${roundPercent(fromValue * 100)}% (left the business)`\r\n },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'QA Performance',\r\n ratingValue: 0.0403,\r\n allowInput: false,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.03,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `QA benchmark +${roundPercent(fromValue * 100)}%` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0,\r\n toValue: 0.03,\r\n description0: (fromValue, toValue) => {\r\n return `QA benchmark met`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: -0.03,\r\n toValue: 0,\r\n description0: (fromValue, toValue) => {\r\n return `Within ${roundPercent(Math.abs(fromValue) * 100)}% of QA benchmark`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: -0.03,\r\n description0: (fromValue, toValue) => { return `${roundPercent(toValue * 100)}% under QA benchmark` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Sales Process',\r\n displayType: DisplayType.Category,\r\n ratingValue: 3,\r\n allowInput: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 3,\r\n toValue: 4,\r\n description0: (fromValue, toValue) => { return `Process perfect` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 2,\r\n toValue: 3,\r\n description0: (fromValue, toValue) => {\r\n return `Process followed`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 2,\r\n description0: (fromValue, toValue) => {\r\n return `1 key area missed`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0,\r\n toValue: 1,\r\n description0: (fromValue, toValue) => { return `More than 1 key area missed` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Absence management',\r\n ratingValue: 0.0417,\r\n // ratingValue: 0.1,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.04,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% sickness` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.04,\r\n toValue: 0.06,\r\n description0: (fromValue, toValue) => {\r\n return `Between ${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}%`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.06,\r\n toValue: 0.08,\r\n description0: (fromValue, toValue) => {\r\n return `Between ${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}%`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.08,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `Over ${roundPercent(fromValue * 100)}%` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Complaints',\r\n ratingValue: 0.024,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.01,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% upheld` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.01,\r\n toValue: 0.015,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% upheld`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.015,\r\n toValue: 0.02,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% upheld`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.02,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}%+ upheld` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n ]\r\n }\r\n)\r\nexport const perfGridContentSoton201912: PerfGridContent = new PerfGridContent(\r\n {\r\n userFirstName: 'Thomas',\r\n userLastName: 'Bardell',\r\n name: 'Southampton Office',\r\n metadata: new PerfGridMeta(\r\n {\r\n Categories:\r\n [\r\n new PerfGridCol(\r\n { name: 'Outstanding', score: 40 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Good', score: 20 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Requires Improvement', score: 0 }\r\n ),\r\n new PerfGridCol(\r\n { name: 'Special Measures', score: -20 }\r\n )\r\n ]\r\n }\r\n ),\r\n ratings: [\r\n new PerfGridRating(\r\n {\r\n name: 'Written Performance',\r\n ratingValue: 1.065,\r\n // ratingValue: 0.9,\r\n // ratingValue: 0.97,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1.04,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}% of written goal+` },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 1.04,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% of written goal`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.95,\r\n toValue: 1,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% of written goal`\r\n },\r\n }\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.95,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% of written goal` },\r\n }\r\n )\r\n ]\r\n }\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'STP Performance',\r\n ratingValue: 1.021,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1.04,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}% of STP goal+` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 1.04,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% of STP goal`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.95,\r\n toValue: 1,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% of STP goal`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.95,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% of STP goal` },\r\n },\r\n )\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Passover Rate',\r\n // ratingValue: 0.0433,\r\n ratingValue: 0.059,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.05,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% passover rate` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.05,\r\n toValue: 0.055,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% passover rate`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.055,\r\n toValue: 0.06,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% passover rate`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.06,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `Over ${roundPercent(fromValue * 100)}% passover rate` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Big3 Performance',\r\n ratingValue: 0.013,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.075,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}% FBTC+` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.05,\r\n toValue: 0.075,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% FTBC`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.03,\r\n toValue: 0.05,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% FTBC`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.03,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% FTBC` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Employee Turnover',\r\n ratingValue: 0.3158,\r\n // ratingValue: 0.55,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.4,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% (left the business)` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.4,\r\n toValue: 0.5,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% (left the business)`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.5,\r\n toValue: 0.6,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% (left the business)`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.6,\r\n toValue: null,\r\n description0: (fromValue, toValue) => {\r\n return `Over ${roundPercent(fromValue * 100)}% (left the business)`\r\n },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'QA Performance',\r\n ratingValue: 0.0518,\r\n allowInput: false,\r\n hoistRating: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.03,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `QA benchmark +${roundPercent(fromValue * 100)}%` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0,\r\n toValue: 0.03,\r\n description0: (fromValue, toValue) => {\r\n return `QA benchmark met`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: -0.03,\r\n toValue: 0,\r\n description0: (fromValue, toValue) => {\r\n return `Within ${roundPercent(Math.abs(fromValue) * 100)}% of QA benchmark`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: -0.03,\r\n description0: (fromValue, toValue) => { return `${roundPercent(toValue * 100)}% under QA benchmark` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Sales Process',\r\n displayType: DisplayType.Category,\r\n ratingValue: 1.5,\r\n allowInput: true,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 3,\r\n toValue: 4,\r\n description0: (fromValue, toValue) => { return `Process perfect` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 2,\r\n toValue: 3,\r\n description0: (fromValue, toValue) => {\r\n return `Process followed`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 1,\r\n toValue: 2,\r\n description0: (fromValue, toValue) => {\r\n return `1 key area missed`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0,\r\n toValue: 1,\r\n description0: (fromValue, toValue) => { return `More than 1 key area missed` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Absence management',\r\n ratingValue: 0.0349,\r\n // ratingValue: 0.1,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.04,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% sickness` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.04,\r\n toValue: 0.06,\r\n description0: (fromValue, toValue) => {\r\n return `Between ${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}%`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.06,\r\n toValue: 0.08,\r\n description0: (fromValue, toValue) => {\r\n return `Between ${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}%`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.08,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `Over ${roundPercent(fromValue * 100)}%` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n new PerfGridRating(\r\n {\r\n name: 'Complaints',\r\n ratingValue: 0.007,\r\n ratingCriteria: [\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: null,\r\n toValue: 0.01,\r\n description0: (fromValue, toValue) => { return `Under ${roundPercent(toValue * 100)}% upheld` },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.01,\r\n toValue: 0.015,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% upheld`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.015,\r\n toValue: 0.02,\r\n description0: (fromValue, toValue) => {\r\n return `${roundPercent(fromValue * 100)}% to ${roundPercent(toValue * 100)}% upheld`\r\n },\r\n },\r\n ),\r\n new PerfGridRatingCriterion(\r\n {\r\n fromValue: 0.02,\r\n toValue: null,\r\n description0: (fromValue, toValue) => { return `${roundPercent(fromValue * 100)}%+ upheld` },\r\n },\r\n ),\r\n ]\r\n },\r\n ),\r\n ]\r\n }\r\n)\r\n","import { Component, OnInit, OnDestroy, OnChanges } from '@angular/core';\r\nimport { FormControl, FormGroup } from '@angular/forms';\r\n\r\nimport { PerfGridMeta, PerfGridCol } from './perf-grid-meta';\r\nimport { PerfGridContent, PerfMgmtResponse, PerfGridRatingCriterion, PerfGridRating } from './perf-grid-content';\r\nimport { DashboardService } from './dashboard.service';\r\nimport { Subscription, forkJoin } from 'rxjs';\r\nimport { finalize } from 'rxjs/operators';\r\n// import { ThrowStmt } from '@angular/compiler';\r\n\r\n@Component({\r\n selector: 'ug-perf-mgmt',\r\n templateUrl: './perf-mgmt.component.html',\r\n styleUrls: ['./perf-mgmt.component.css']\r\n})\r\nexport class PerfMgmtComponent implements OnDestroy, OnChanges, OnInit {\r\n perfMgmtData = new PerfMgmtResponse();\r\n // perfGridData = new PerfGridContent();\r\n perfGridData: Array = [];\r\n\r\n perfGridUsers: Array = [];\r\n perfGridUserIds: Array = [];\r\n perfGridTabData: Array = [];\r\n\r\n perfMgmtSubs = new Subscription();\r\n mgmtForm = new FormGroup(\r\n {\r\n meOrTeam: new FormControl('me'),\r\n teamMember: new FormControl({value: 0, disabled: true})\r\n }\r\n );\r\n\r\n userMap = new Map();\r\n userRoles = new Map();\r\n\r\n isLoading = true;\r\n\r\n constructor(private dashboardService: DashboardService) { }\r\n\r\n ngOnChanges() {}\r\n\r\n radioClick() {\r\n // if (!this.mgmtForm) {\r\n // return\r\n // }\r\n // if (this.mgmtForm.get('meOrTeam').value === 'me') {\r\n // this.perfGridData = new PerfGridContent(this.perfMgmtData.me);\r\n // } else {\r\n // this.perfGridData = new PerfGridContent(this.perfMgmtData.team[0]);\r\n // }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.perfMgmtSubs.unsubscribe()\r\n }\r\n\r\n ngOnInit() {\r\n // this.perfGridMeta.Categories = [];\r\n // this.perfGridMeta.Categories.push( { name: 'Outstanding', score: 40});\r\n // this.perfGridMeta.Categories.push( { name: 'Good', score: 20} );\r\n // this.perfGridMeta.Categories.push( { name: 'Requires Improvement', score: 0} );\r\n // this.perfGridMeta.Categories.push( { name: 'Special Measures', score: -20} );\r\n\r\n\r\n this.perfMgmtSubs.add(\r\n // this.dashboardService.getPerfAgent('John', 'Harmon').subscribe(\r\n this.dashboardService.getPerfManager('Portsmouth North', 77).subscribe(\r\n me => {\r\n this.perfMgmtData.me = this.mapResponse(me);\r\n this.perfGridData = new Array();\r\n this.perfGridData.push(this.perfMgmtData.me);\r\n // this.perfGridData = this.perfMgmtData.me;\r\n },\r\n err => {console.log(err)}\r\n )\r\n );\r\n\r\n const teamObservables = [\r\n this.dashboardService.getPerfAgent(84),\r\n this.dashboardService.getPerfAgent(544),\r\n this.dashboardService.getPerfProjCoord('Project Coordinator', 544),\r\n this.dashboardService.getPerfAgent(92),\r\n this.dashboardService.getPerfRecruitTeam('Recruitment Manager', 92)\r\n ]\r\n\r\n this.perfMgmtSubs.add(\r\n forkJoin(teamObservables).pipe(\r\n finalize( () => {\r\n this.perfMgmtData.team.forEach( (tm, i) => {\r\n this.userMap.set(tm.personId, `${tm.userFirstName} ${tm.userLastName}`);\r\n const jj = this.userRoles.get(tm.personId) || [];\r\n jj.push({'name': tm.name, 'personId': tm.personId, 'perfDataIndex': i});\r\n this.userRoles.set(tm.personId, jj);\r\n }\r\n );\r\n this.perfGridUsers = [...new Set(this.perfMgmtData.team.map(\r\n tm => {return {'name': `${tm.userFirstName} ${tm.userLastName}`, 'personId': tm.personId}})\r\n )].sort();\r\n this.perfGridUserIds = [...new Set(this.perfGridUsers.map(pgu => pgu.personId))];\r\n this.mgmtForm.get('teamMember').setValue(this.perfGridUserIds[0]);\r\n this.isLoading = false;\r\n })\r\n ).subscribe(\r\n fj => {\r\n fj.forEach(o => this.perfMgmtData.team.push(this.mapResponse(o)));\r\n },\r\n err => {console.log(err)}\r\n )\r\n );\r\n\r\n // this.perfMgmtData = this.dashboardService.getPerfMgmtData();\r\n // this.perfGridData = this.perfMgmtData.me;\r\n\r\n\r\n // this.perfGridUsers = [...new Set(this.perfMgmtData.team.map(tm => `${tm.userFirstName} ${tm.userLastName}`))].sort();\r\n\r\n this.perfMgmtSubs.add(\r\n this.mgmtForm.get('meOrTeam').valueChanges.subscribe(\r\n (changes) => {\r\n if (this.mgmtForm.get('meOrTeam').value === 'me') {\r\n this.perfGridData = new Array();\r\n this.perfGridData.push( new PerfGridContent(this.perfMgmtData.me));\r\n // this.perfGridData = new PerfGridContent(this.perfMgmtData.me);\r\n this.mgmtForm.get('teamMember').disable();\r\n } else {\r\n this.perfGridData = this.perfMgmtData.team.filter(tm => tm.personId === this.selectedPersonId);\r\n // this.perfGridData.push(new PerfGridContent(this.perfMgmtData.team[this.mgmtForm.get('teamMember').value]));\r\n // this.perfGridData = new PerfGridContent(this.perfMgmtData.team[this.mgmtForm.get('teamMember').value]);\r\n this.mgmtForm.get('teamMember').enable();\r\n }\r\n }\r\n )\r\n )\r\n this.perfMgmtSubs.add(\r\n this.mgmtForm.get('teamMember').valueChanges.subscribe(\r\n (changes) => {\r\n if (this.mgmtForm.get('teamMember').enabled) {\r\n this.perfGridData = this.perfMgmtData.team.filter(tm => tm.personId === this.selectedPersonId);\r\n // this.perfGridData = new Array();\r\n // this.perfGridData.push(new PerfGridContent(this.perfMgmtData.team[this.mgmtForm.get('teamMember').value]));\r\n // this.perfGridData = new PerfGridContent(this.perfMgmtData.team[this.mgmtForm.get('teamMember').value]);\r\n this.perfGridTabData = this.perfMgmtData.team.filter(tm => this.mgmtForm.get('teamMember').value == `${tm.userFirstName} ${tm.userLastName}`);\r\n }\r\n }\r\n )\r\n )\r\n }\r\n\r\n mapResponse(pm: PerfGridContent): PerfGridContent {\r\n const perfSummary = new PerfGridContent();\r\n perfSummary.name = pm.name;\r\n perfSummary.userFirstName = pm.userFirstName;\r\n perfSummary.userLastName = pm.userLastName;\r\n perfSummary.personId = pm.personId;\r\n\r\n pm.metadata.Categories.forEach( c => {\r\n perfSummary.metadata.Categories.push(new PerfGridCol({name: c.name, score: c.score}))\r\n })\r\n\r\n pm.ratings.forEach(r => {\r\n const ratcrit: Array = [];\r\n r.ratingCriteria.forEach( rc => {\r\n ratcrit.push(new PerfGridRatingCriterion({fromValue: rc.fromValue, toValue: rc.toValue, description: rc.description}))\r\n })\r\n perfSummary.ratings.push(new PerfGridRating({\r\n name: r.name,\r\n ratingValue: r.ratingValue,\r\n hoistRating: r.hoistRating || false,\r\n allowInput: r.allowInput || false,\r\n displayType: r.displayType,\r\n ratingCriteria: ratcrit\r\n }));\r\n })\r\n return perfSummary;\r\n }\r\n\r\n get usersList(): IterableIterator {\r\n return this.userRoles.values();\r\n }\r\n\r\n get selectedPersonId(): number {\r\n return parseInt(this.mgmtForm.get('teamMember').value, 10);\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
Performance Management
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import { Component, OnInit, AfterViewChecked, OnDestroy } from '@angular/core';\r\nimport { DashboardService } from './dashboard.service';\r\nimport { PerfGridContent, PerfGridRatingCriterion, PerfGridRating } from './perf-grid-content';\r\nimport { PerfGridMeta, PerfGridCol } from './perf-grid-meta';\r\nimport { Observable, forkJoin, Subscription } from 'rxjs';\r\nimport { FormGroup, FormControl } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'ug-perf-summary',\r\n templateUrl: './perf-summary.component.html',\r\n styleUrls: ['./perf-summary.component.scss']\r\n})\r\nexport class PerfSummaryComponent implements OnInit, AfterViewChecked, OnDestroy {\r\n\r\n perfsummary: PerfGridContent;\r\n isRegionLoading = true;\r\n isSiteLoading = true;\r\n isSubSiteLoading = true;\r\n isTeamsLoading = true;\r\n isAgentsLoading = true;\r\n isPerfGridLoading = true;\r\n\r\n activeDbChartItemIndex = -1;\r\n\r\n regionData: Array = [];\r\n siteData: Array = [];\r\n subSiteData: PerfGridContent[] = [];\r\n teamData: Array = [];\r\n agentData: Array = [];\r\n singleAgentData: PerfGridContent = new PerfGridContent();\r\n perfData: Array = [];\r\n\r\n selectedAreaIndex = -1;\r\n selectedBoroughIndex = -1;\r\n selectedStationIndex = -1;\r\n selectedWatchIndex = -1;\r\n\r\n scrollToArea = false;\r\n scrollToBorough = false;\r\n scrollToStation = false;\r\n scrollToWatch = false;\r\n scrollToSM = false;\r\n scrollToGrid = false;\r\n\r\n selectedWatchName: string;\r\n selectedBoroughName: string;\r\n selectedStationName: string;\r\n selectedAreaName: string;\r\n\r\n showMatrix = false;\r\n\r\n siteList: Array = [\r\n 'Portsmouth',\r\n 'Southampton',\r\n 'Brighton',\r\n 'Bournemouth'\r\n ];\r\n\r\n subscriptions: Subscription = new Subscription();\r\n\r\n roleSelectForm = new FormGroup(\r\n {\r\n role: new FormControl({value: 0})\r\n }\r\n )\r\n\r\n constructor(private dashboardService: DashboardService) { }\r\n\r\n get isLoading(): boolean {\r\n return this.isRegionLoading || this.isSiteLoading || this.isSubSiteLoading;\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.unsubscribe();\r\n }\r\n\r\n ngOnInit() {\r\n this.perfsummary = new PerfGridContent();\r\n this.subscriptions.add(\r\n this.dashboardService.getPerfSite('Southern Region', 'Sales', 'Director')\r\n .subscribe(\r\n pm => {\r\n this.perfsummary = this.mapResponse(pm);\r\n this.regionData.push(this.mapResponse(pm));\r\n this.isRegionLoading = false;\r\n }\r\n )\r\n );\r\n\r\n // this.dashboardService.getPerfSite(`Portsmouth site`, 'Portsmouth', 'site')\r\n // .subscribe(\r\n // sd => {\r\n // this.siteData.push(this.mapResponse(sd));\r\n // }\r\n // )\r\n\r\n // this.dashboardService.getPerfSite(`Southampton site`, 'Southampton', 'site')\r\n // .subscribe(\r\n // sd => {\r\n // this.siteData.push(this.mapResponse(sd));\r\n // }\r\n // )\r\n\r\n // this.dashboardService.getPerfSite(`Brighton site`, 'Brighton', 'site')\r\n // .subscribe(\r\n // sd => {\r\n // this.siteData.push(this.mapResponse(sd));\r\n // }\r\n // )\r\n\r\n // this.dashboardService.getPerfSite(`Bournemouth site`, 'Bournemouth', 'site')\r\n // .subscribe(\r\n // sd => {\r\n // this.siteData.push(this.mapResponse(sd));\r\n // }\r\n // )\r\n\r\n // const siteObservables = [\r\n // this.dashboardService.getPerfSite(`Portsmouth site`, 'Portsmouth', 'site'),\r\n // this.dashboardService.getPerfSite(`Southampton site`, 'Southampton', 'site'),\r\n // this.dashboardService.getPerfSite(`Brighton site`, 'Brighton', 'site'),\r\n // this.dashboardService.getPerfSite(`Bournemouth site`, 'Bournemouth', 'site')\r\n // ]\r\n\r\n // forkJoin(siteObservables).subscribe( fj => {\r\n // fj.forEach(o => this.siteData.push(this.mapResponse(o)));\r\n // this.isSiteLoading = false;\r\n // }\r\n // );\r\n\r\n\r\n // const subSiteObservables = [\r\n // this.dashboardService.getPerfSite(`Portsmouth North`, 'Portsmouth', 'North'),\r\n // this.dashboardService.getPerfSite(`Southampton North`, 'Southampton', 'North'),\r\n // this.dashboardService.getPerfSite(`Brighton North`, 'Brighton', 'North'),\r\n // this.dashboardService.getPerfSite(`Bournemouth North`, 'Bournemouth', 'North'),\r\n // this.dashboardService.getPerfSite(`Portsmouth South`, 'Portsmouth', 'South'),\r\n // this.dashboardService.getPerfSite(`Southampton South`, 'Southampton', 'South'),\r\n // this.dashboardService.getPerfSite(`Brighton South`, 'Brighton', 'South'),\r\n // this.dashboardService.getPerfSite(`Bournemouth South`, 'Bournemouth', 'South')\r\n // ]\r\n\r\n // forkJoin(subSiteObservables).subscribe( fj => {\r\n // fj.forEach(o => this.subSiteData.push(this.mapResponse(o)));\r\n // this.isSubSiteLoading = false;\r\n // });\r\n\r\n // this.siteList.forEach(s => {\r\n // this.dashboardService.getPerfSite(`${s} site`, s, 'site')\r\n // .subscribe(\r\n // sd => {\r\n // this.siteData.push(this.mapResponse(sd));\r\n // }\r\n // )\r\n // this.dashboardService.getPerfSite(`${s} North`, s, 'North')\r\n // .subscribe(\r\n // ssd => {\r\n // this.subSiteData.push(this.mapResponse(ssd));\r\n // }\r\n // )\r\n // this.dashboardService.getPerfSite(`${s} South`, s, 'South')\r\n // .subscribe(\r\n // ssd => {\r\n // this.subSiteData.push(this.mapResponse(ssd));\r\n // }\r\n // )\r\n // })\r\n // this.isSiteLoading = false;\r\n // this.isSubSiteLoading = false;\r\n\r\n }\r\n\r\n mapResponse(pm: PerfGridContent): PerfGridContent {\r\n const perfSummary = new PerfGridContent();\r\n perfSummary.name = pm.name;\r\n perfSummary.userFirstName = pm.userFirstName;\r\n perfSummary.userLastName = pm.userLastName;\r\n\r\n pm.metadata.Categories.forEach( c => {\r\n perfSummary.metadata.Categories.push(new PerfGridCol({name: c.name, score: c.score}))\r\n })\r\n\r\n pm.ratings.forEach(r => {\r\n const ratcrit: Array = [];\r\n r.ratingCriteria.forEach( rc => {\r\n ratcrit.push(new PerfGridRatingCriterion({fromValue: rc.fromValue, toValue: rc.toValue, description: rc.description}))\r\n })\r\n perfSummary.ratings.push(new PerfGridRating({\r\n name: r.name,\r\n ratingValue: r.ratingValue,\r\n hoistRating: r.hoistRating || false,\r\n allowInput: r.allowInput || false,\r\n displayType: r.displayType,\r\n ratingCriteria: ratcrit\r\n }));\r\n })\r\n return perfSummary;\r\n }\r\n\r\n onRegionClick(regionName: string, index: number) {\r\n // this.selectedCategoryIndex = chartIndex;\r\n // this.donutClick.emit({chartName: chartName, chartIndex: chartIndex})\r\n this.isSiteLoading = true;\r\n this.isSubSiteLoading = true;\r\n this.isTeamsLoading = true;\r\n this.isAgentsLoading = true;\r\n this.isPerfGridLoading = true;\r\n this.siteData.length = 0;\r\n const siteObservables = [\r\n this.dashboardService.getPerfSite(`Portsmouth Site`, 'Portsmouth', 'Site'),\r\n this.dashboardService.getPerfSite(`Southampton Site`, 'Southampton', 'Site'),\r\n this.dashboardService.getPerfSite(`Brighton Site`, 'Brighton', 'Site'),\r\n this.dashboardService.getPerfSite(`Bournemouth Site`, 'Bournemouth', 'Site'),\r\n ]\r\n\r\n this.subscriptions.add(\r\n forkJoin(siteObservables).subscribe(\r\n fj => {\r\n fj.forEach(o => this.siteData.push(this.mapResponse(o)));\r\n this.onAgentClick(this.regionData[index], index);\r\n this.isSiteLoading = false;\r\n },\r\n err => {console.log(err)}\r\n )\r\n );\r\n\r\n }\r\n\r\n onSiteClick(siteName: string, index: number) {\r\n this.isSubSiteLoading = true;\r\n this.isTeamsLoading = true;\r\n this.isAgentsLoading = true;\r\n this.isPerfGridLoading = true;\r\n const subSiteObservables = [\r\n this.dashboardService.getPerfSite(`${siteName} North`, siteName, 'North'),\r\n this.dashboardService.getPerfSite(`${siteName} South`, siteName, 'South'),\r\n ]\r\n this.subSiteData.length = 0;\r\n\r\n this.subscriptions.add(\r\n forkJoin(subSiteObservables).subscribe(\r\n fj => {\r\n fj.forEach(o => this.subSiteData.push(this.mapResponse(o)));\r\n this.onAgentClick(this.siteData[index], index);\r\n this.isSubSiteLoading = false;\r\n },\r\n err => {console.log(err)}\r\n )\r\n );\r\n }\r\n\r\n onSubSiteClick(subSiteName: string, index: number) {\r\n this.isTeamsLoading = true;\r\n this.isAgentsLoading = true;\r\n this.isPerfGridLoading = true;\r\n const constTeamObservables = [\r\n this.dashboardService.getPerfTeam('Team A', 'Team', 'A'),\r\n this.dashboardService.getPerfTeam('Team B', 'Team', 'B'),\r\n this.dashboardService.getPerfTeam('Team C', 'Team', 'C')\r\n ]\r\n this.teamData.length = 0;\r\n this.subscriptions.add(\r\n forkJoin(constTeamObservables).subscribe(\r\n fj => {\r\n fj.forEach(o => this.teamData.push(this.mapResponse(o)));\r\n this.onAgentClick(this.subSiteData[index], index);\r\n this.isTeamsLoading = false;\r\n },\r\n err => {console.log(err)}\r\n )\r\n );\r\n }\r\n\r\n onTeamClick(teamName: string, index: number) {\r\n this.isAgentsLoading = true;\r\n this.isPerfGridLoading = true;\r\n const constAgentsObservables = [\r\n this.dashboardService.getPerfAgent('Agent', 'A'),\r\n this.dashboardService.getPerfAgent('Agent', 'B'),\r\n this.dashboardService.getPerfAgent('Agent', 'C')\r\n ]\r\n this.agentData.length = 0;\r\n this.subscriptions.add(\r\n forkJoin(constAgentsObservables).subscribe(\r\n fj => {\r\n fj.forEach(o => this.agentData.push(this.mapResponse(o)));\r\n this.onAgentClick(this.teamData[index], index);\r\n this.isAgentsLoading = false;\r\n },\r\n err => {console.log(err)}\r\n )\r\n );\r\n }\r\n\r\n onAgentClick(perfGridData: PerfGridContent, index: number) {\r\n this.isPerfGridLoading = true;\r\n this.singleAgentData = perfGridData;\r\n this.perfData = new Array();\r\n this.perfData.push(perfGridData);\r\n this.isPerfGridLoading = false;\r\n this.scrollToGrid = true;\r\n }\r\n\r\n ngAfterViewChecked() {\r\n if (this.scrollToGrid) {\r\n (document.getElementById('perfGrid') as HTMLInputElement).scrollIntoView({behavior: 'smooth'});\r\n this.scrollToGrid = false;\r\n }\r\n }\r\n\r\n\r\n categoryColour(score: number) {\r\n if (score >= 220) { return 'text-success'; }\r\n if (score >= 180) { return 'text-warning'; }\r\n if (score >= 100) { return 'esqep-req-improve'; }\r\n return 'text-danger';\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n
Regions
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
Sites
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
Sub-sites
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
Teams
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
{{singleAgentData.userFirstName}} {{singleAgentData.userLastName}}
\r\n \r\n \r\n
\r\n
\r\n","import { Component, OnInit, OnChanges, OnDestroy, LOCALE_ID, Inject, Input } from '@angular/core';\r\nimport { FormBuilder, FormGroup, FormControl, FormArray } from '@angular/forms';\r\nimport { AlertData, AlertService, AlertLevels } from 'app/core/alert.service';\r\nimport { AuthService } from 'app/core/auth.service';\r\nimport { ClaimService } from 'app/claim/claim.service';\r\nimport { SkillUserStatus } from './skill-matrix-data';\r\nimport { Person } from 'app/person/person';\r\nimport { Watch } from './watch';\r\nimport { SkillsMatrix, SkillsMatrixCurricula, SkillsMatrixSubject } from './skill-matrix';\r\nimport { ExtOrgUnitPerson, OrgUnitService } from 'app/org-unit/org-unit.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { ConfigService } from 'app/core/config.service';\r\nimport { DashboardService, CsodExpressClassPayload, ExpressClassUserObs, CsodExpressClassResponse } from './dashboard.service';\r\nimport { PersonService } from 'app/person/person.service';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { skillMatrixData } from './skill-matrix-data-2';\r\nimport { formatPercent } from '@angular/common';\r\nimport { Modal } from 'bootstrap';\r\n\r\n@Component({\r\n selector: 'ug-role-matrix',\r\n templateUrl: './role-matrix.component.html',\r\n styleUrls: ['./role-matrix.component.css']\r\n})\r\nexport class RoleMatrixComponent implements OnInit, OnChanges, OnDestroy {\r\n\r\n @Input() personId: number;\r\n @Input() watchId: string;\r\n @Input() subTitle = '';\r\n\r\n filterControls: FormGroup = new FormGroup(\r\n {\r\n 'showMe': new FormControl(true),\r\n 'showDirect': new FormControl(true),\r\n 'showIndirect': new FormControl(true)\r\n }\r\n );\r\n\r\n watchSelect: FormGroup = new FormGroup(\r\n {\r\n 'watchId': new FormControl()\r\n }\r\n )\r\n\r\n extraUserControls: FormGroup = new FormGroup(\r\n {\r\n 'extraUser': new FormControl()\r\n }\r\n )\r\n\r\n bulkSubmitForm: FormGroup = new FormGroup(\r\n {\r\n 'trainingTitle': new FormControl(''),\r\n 'curriculaIndex': new FormControl(-1),\r\n 'userSkillIndex': new FormControl(-1),\r\n 'curriculaKey': new FormControl(''),\r\n 'subjectKey': new FormControl(''),\r\n 'people': new FormArray([])\r\n }\r\n );\r\n\r\n userList: Array = [];\r\n personList: Array = [];\r\n watchList: Watch[] = [];\r\n\r\n skillsMatrixData: SkillsMatrix = new SkillsMatrix();\r\n curriculaKeys: Array = [];\r\n userKeys: Array = [];\r\n watchUsers: Array = [];\r\n watchUserMap = new Map();\r\n selectedWatchMemberId = -1;\r\n\r\n extraPeople: Array = [];\r\n\r\n wmCount = 0;\r\n cmCount = 0;\r\n ffCount = 0;\r\n\r\n fullFunc = false;\r\n\r\n statusDescriptionMap = new Map();\r\n statusColourMap = new Map();\r\n statusSymbolMap = new Map();\r\n\r\n skillModalCurrIndex = 0;\r\n skillModalSkillIndex = 0;\r\n skillModalUserIndex = 0;\r\n\r\n skillModalCurrKey = '';\r\n skillModalSkillKey = '';\r\n skillModalUserKey = '';\r\n\r\n skillMatrixSubs = new Subscription();\r\n\r\n loadingData = false;\r\n currFilterText = '';\r\n addingUser = false;\r\n awaitingCompleteConfirmation = false;\r\n\r\n exceptionData = {\r\n 'SKILL_MATRIX': {\r\n level: AlertLevels.ERROR,\r\n code: 'SMX-001',\r\n message: 'Error retrieving skill matrix data'\r\n } as AlertData,\r\n 'EXPRESS_CLASS': {\r\n level: AlertLevels.ERROR,\r\n code: 'SMX-002',\r\n message: 'Error creating Express Class'\r\n } as AlertData,\r\n 'WATCH_PEOPLE': {\r\n level: AlertLevels.ERROR,\r\n code: 'SMX-003',\r\n message: 'Error retrieving watch members'\r\n } as AlertData,\r\n 'EXTRA_PERSON': {\r\n level: AlertLevels.ERROR,\r\n code: 'SMX-003',\r\n message: 'Error retrieving watch members'\r\n } as AlertData,\r\n }\r\n currSummaryStatus = new Map();\r\n\r\n get currFilterActive(): boolean {\r\n return this.currFilterText.length > 0;\r\n }\r\n constructor(\r\n @Inject(LOCALE_ID) private locale: string,\r\n private fb: FormBuilder,\r\n private alertService: AlertService,\r\n private authService: AuthService,\r\n // private cdCheck: ChangeDetectorRef,\r\n private claimService: ClaimService,\r\n private configService: ConfigService,\r\n private dashboardService: DashboardService,\r\n private orgUnitService: OrgUnitService,\r\n private personService: PersonService\r\n ) { }\r\n\r\n get hideMe() {\r\n return !this.filterControls.get('showMe').value;\r\n }\r\n\r\n get hideDirect() {\r\n return !this.filterControls.get('showDirect').value;\r\n }\r\n\r\n get hideIndirect() {\r\n return !this.filterControls.get('showIndirect').value;\r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.statusDescriptionMap.set('1', 'Not Started / Expired');\r\n this.statusDescriptionMap.set('2', 'Not Started / Expired');\r\n this.statusDescriptionMap.set('3', 'Not Started / Expired');\r\n this.statusDescriptionMap.set('4', 'Not Started / Expired');\r\n this.statusDescriptionMap.set('5', 'Complete');\r\n this.statusDescriptionMap.set('7', 'Awaiting sync');\r\n this.statusDescriptionMap.set('8', 'Updating');\r\n\r\n this.statusColourMap.set('1', 'danger');\r\n this.statusColourMap.set('2', 'danger');\r\n this.statusColourMap.set('3', 'danger');\r\n this.statusColourMap.set('4', 'danger');\r\n this.statusColourMap.set('5', 'success');\r\n this.statusColourMap.set('7', 'danger');\r\n this.statusColourMap.set('8', 'info');\r\n\r\n this.statusSymbolMap.set('1', 'fas fa-times-circle');\r\n this.statusSymbolMap.set('2', 'fas fa-times-circle');\r\n this.statusSymbolMap.set('3', 'fas fa-times-circle');\r\n this.statusSymbolMap.set('4', 'fas fa-times-circle');\r\n this.statusSymbolMap.set('5', 'fas fa-check-circle');\r\n this.statusSymbolMap.set('7', 'fas fa-ellipsis-h');\r\n this.statusSymbolMap.set('8', 'fas fa-spinner fa-spin');\r\n\r\n this.loadingData = true;\r\n\r\n if (!this.watchId) {\r\n this.skillMatrixSubs.add(\r\n this.authService.userDetailSubj.subscribe(\r\n (ud: Person) => {\r\n if (ud.id !== this.personId) {\r\n this.personId = ud.id;\r\n this.fullFunc = ud.watchOfficerOrAbove || false;\r\n this.watchSelect.get('watchId').setValue(ud.watch);\r\n this.loadWatchUsers();\r\n this.loadSkillsMatrix();\r\n }\r\n }\r\n )\r\n )\r\n }\r\n\r\n this.skillMatrixSubs.add(\r\n this.personService.getPeopleInExternalOu('Division', ['1000ERD', '1399SER']).subscribe( // TODO: Remove hard coding\r\n (pl: Array) => {\r\n this.personList = pl.filter(\r\n p => {return p.externalUserId}\r\n ).sort(\r\n (a, b) => { return (a.externalUserId > b.externalUserId ? 1 : -1); }\r\n );\r\n }\r\n )\r\n )\r\n this.skillMatrixSubs.add(\r\n this.dashboardService.getWatchList().subscribe(\r\n (wl: Array) => { this.watchList = wl; }\r\n )\r\n )\r\n }\r\n\r\n ngOnChanges() {\r\n this.watchSelect.get('watchId').setValue(this.watchId);\r\n this.loadingData = true;\r\n this.loadWatchUsers();\r\n this.loadSkillsMatrix();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.skillMatrixSubs.unsubscribe();\r\n }\r\n\r\n loadWatchUsers() {\r\n this.skillMatrixSubs.add(\r\n this.orgUnitService.getExtOrgUnitPeople('CSOD', this.watchSelect.get('watchId').value, 'Watch').subscribe( // TODO: Remove hard coding\r\n (wp: Array) => {\r\n this.watchUsers = wp;\r\n this.watchUsers.forEach( wu => { this.watchUserMap.set(wu.personId, wu) });\r\n },\r\n err => { this.alertService.createAlert2(this.exceptionData.WATCH_PEOPLE, err); }\r\n )\r\n )\r\n }\r\n\r\n loadSkillsMatrix() {\r\n this.watchSelect.disable();\r\n this.skillMatrixSubs.add(\r\n this.dashboardService.getSkillsMatrix(\r\n this.configService.skillMatrixFaId, this.personId, this.watchSelect.get('watchId').value, this.extraPeople\r\n )\r\n .pipe(\r\n finalize( () => {\r\n this.loadingData = false;\r\n this.watchSelect.enable();\r\n } )\r\n )\r\n .subscribe(\r\n (sm: SkillsMatrix) => {\r\n this.skillsMatrixData = sm;\r\n this.curriculaKeys = Object.keys(this.skillsMatrixData.curricula).sort(\r\n (a, b) => {\r\n const aName: string = this.skillsMatrixData.curricula[a].name;\r\n const bName: string = this.skillsMatrixData.curricula[b].name;\r\n return aName < bName ? -1 : 1;\r\n }\r\n );\r\n this.userKeys = Object.keys(this.skillsMatrixData.users);\r\n\r\n // TODO: Remove hard coding\r\n this.userKeys.sort( (a, b) => {\r\n if (this.skillsMatrixData.users[a].position === 'Watch Manager B') {\r\n return -1;\r\n }\r\n if (this.skillsMatrixData.users[a].position === 'Crew Manager') {\r\n if (this.skillsMatrixData.users[b].position === 'Watch Manager B') {\r\n return 1;\r\n } else {\r\n return -1;\r\n }\r\n }\r\n if (this.skillsMatrixData.users[a].position === 'Firefighter') {\r\n return 1\r\n }\r\n return 1;\r\n }\r\n )\r\n\r\n // TODO: Remove hard coding\r\n this.wmCount = this.userKeys.reduce(\r\n (a, c) => { return a + (this.skillsMatrixData.users[c].position === 'Watch Manager B' ? 1 : 0)}\r\n , 0)\r\n this.cmCount = this.userKeys.reduce(\r\n (a, c) => { return a + (this.skillsMatrixData.users[c].position === 'Crew Manager' ? 1 : 0)}\r\n , 0)\r\n this.ffCount = this.userKeys.reduce(\r\n (a, c) => { return a + (this.skillsMatrixData.users[c].position === 'Firefighter' ? 1 : 0)}\r\n , 0)\r\n\r\n this.recalcSummStatus();\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.SKILL_MATRIX, err);\r\n }\r\n )\r\n )\r\n }\r\n\r\n loadExtraUser(personId: number) {\r\n this.skillMatrixSubs.add(\r\n this.personService.getPersonExternalOus(personId).subscribe(\r\n (p: ExtOrgUnitPerson) => {\r\n this.watchUserMap.set(personId, p);\r\n },\r\n err => { this.alertService.createAlert2(this.exceptionData.EXTRA_PERSON, err); }\r\n )\r\n );\r\n this.skillMatrixSubs.add(\r\n this.dashboardService.getSkillsMatrix(this.configService.skillMatrixFaId, null, null, [`${personId}`])\r\n .subscribe(\r\n (sm: SkillsMatrix) => {\r\n const currKeys = Object.keys(sm.curricula)\r\n const userKeys = Object.keys(sm.users)\r\n currKeys.forEach( ck => {\r\n const subjKeys = Object.keys(sm.curricula[ck].subjects)\r\n subjKeys.forEach( sk => {\r\n userKeys.forEach( uk => {\r\n if (!this.skillsMatrixData.curricula[ck]) {\r\n this.skillsMatrixData.curricula[ck] = {\r\n name: sm.curricula[ck].name,\r\n category: sm.curricula[ck].category,\r\n subjects: {}\r\n };\r\n }\r\n if (!this.skillsMatrixData.curricula[ck].subjects[sk]) {\r\n this.skillsMatrixData.curricula[ck].subjects[sk] = {\r\n deepLinkUrl: sm.curricula[ck].subjects[sk].deepLinkUrl,\r\n skillName: sm.curricula[ck].subjects[sk].skillName,\r\n learningObjectId: sm.curricula[ck].subjects[sk].learningObjectId,\r\n users: {}\r\n };\r\n }\r\n if (sm.curricula[ck].subjects[sk].users[uk]) {\r\n this.skillsMatrixData.curricula[ck].subjects[sk].users[uk] = {\r\n statusId: sm.curricula[ck].subjects[sk].users[uk].statusId\r\n }\r\n } else {\r\n this.skillsMatrixData.curricula[ck].subjects[sk].users[uk] = { statusId: '6' } // TODO: Remove hard coding\r\n }\r\n })\r\n })\r\n })\r\n userKeys.forEach( uk => {\r\n this.skillsMatrixData.users[uk] = sm.users[uk]\r\n })\r\n this.userKeys = this.userKeys.concat(userKeys);\r\n // this.cdCheck.detectChanges();\r\n this.recalcSummStatus();\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.SKILL_MATRIX, err);\r\n }\r\n )\r\n )\r\n }\r\n\r\n statusHeaderColour(statusId: string): string {\r\n return 'text-' + (this.statusColourMap.get(statusId) || 'secondary');\r\n }\r\n\r\n statusHeaderColourClass(userKey: string, currKey: string): string {\r\n let statusClass = 'text-secondary'\r\n if (this.currAssignedToUser(userKey, currKey)) {\r\n statusClass = 'text-' + (this.statusColourMap.get(this.getCurrUserSummary(currKey, userKey)['status']) || 'secondary');\r\n }\r\n return statusClass\r\n }\r\n\r\n statusColour(statusId: string): string {\r\n return 'bg-' + (this.statusColourMap.get(statusId) || 'secondary');\r\n }\r\n\r\n statusColourClass(userKey: string, subjKey: string, currKey: string): string {\r\n return this.currAssignedToUser(userKey, currKey) ?\r\n 'bg-' + (this.statusColourMap.get(\r\n (this.skillsMatrixData.curricula[currKey].subjects[subjKey].users[userKey] || {})['statusId']\r\n ) || 'secondary') :\r\n 'table-light'\r\n }\r\n\r\n statusSymbol(statusId: string): string {\r\n return this.statusSymbolMap.get(statusId) || 'fas fa-question-circle';\r\n }\r\n\r\n statusSymbolClass(userKey: string, subjKey: string, currKey: string): string {\r\n // if (!currKey || !subjKey || !userKey) { return; }\r\n return this.currAssignedToUser(userKey, currKey) ?\r\n this.statusSymbolMap.get(\r\n (this.skillsMatrixData.curricula[currKey].subjects[subjKey].users[userKey] || {})['statusId']\r\n ) || 'fas fa-question-circle' :\r\n 'fas fa-minus text-secondary'\r\n }\r\n\r\n userHeaderClass(user: SkillUserStatus): string {\r\n if (user.me) {\r\n return 'table-light';\r\n } else if (user.directReport) {\r\n return 'table-light text-muted';\r\n } else {\r\n return 'table-light fw-normal';\r\n }\r\n }\r\n\r\n summaryStatus(curriculumIndex: number, skillUserIndex: number): number {\r\n const userlist: Array = skillMatrixData.curricula[curriculumIndex].userSkills[skillUserIndex].skillUserStatus;\r\n return Math.min(...userlist.map( u => u.statusId));\r\n }\r\n\r\n currAssignedToUser(userKey: string, currKey: string) {\r\n return (\r\n (this.skillsMatrixData.users[userKey] || {})['currCats'] || []).includes((this.skillsMatrixData.curricula[currKey] || {})['category']\r\n )\r\n }\r\n\r\n trackByFn(index: any, item: any) {\r\n return index;\r\n }\r\n\r\n recalcSummStatus() {\r\n this.curriculaKeys.forEach( ck => {\r\n const curricula: SkillsMatrixCurricula = this.skillsMatrixData.curricula[ck];\r\n const subjectKeys: Array = Object.keys(curricula.subjects);\r\n const userStatus = {}\r\n subjectKeys.forEach( sk => {\r\n const subject: SkillsMatrixSubject = curricula.subjects[sk]\r\n const subjectUserKeys = Object.keys(subject.users)\r\n subjectUserKeys.forEach( uk => {\r\n const userData = this.skillsMatrixData.users[uk];\r\n\r\n // if (!userData.currCats.includes(curricula.category)) {\r\n // return; // continue with next record\r\n // }\r\n\r\n // TODO: Remove hard coding\r\n if (!userStatus[uk]) {\r\n userStatus[uk] = {\r\n status: subject.users[uk].statusId,\r\n percentComplete: subject.users[uk].statusId === '5' ? (1 / subjectKeys.length) : 0,\r\n extra: userData.extra\r\n }\r\n } else {\r\n userStatus[uk]['status'] =\r\n userStatus[uk]['status'] > subject.users[uk].statusId ? userStatus[uk]['status'] : subject.users[uk].statusId;\r\n userStatus[uk]['percentComplete'] += (subject.users[uk].statusId === '5' ? (1 / subjectKeys.length) : 0) || 0;\r\n userStatus[uk]['extra'] = userData.extra;\r\n }\r\n\r\n })\r\n })\r\n this.currSummaryStatus.set(ck, userStatus);\r\n })\r\n\r\n }\r\n\r\n modifySkill(currKey: string, subjKey: string, userKey: string ) {\r\n this.awaitingCompleteConfirmation = false;\r\n this.skillModalCurrKey = currKey;\r\n this.skillModalSkillKey = subjKey;\r\n this.skillModalUserKey = userKey;\r\n\r\n const skillModal = new Modal(document.getElementById('skillModal'));\r\n skillModal.show();\r\n }\r\n\r\n updateSkillStatus() {\r\n this.awaitingCompleteConfirmation = true;\r\n }\r\n\r\n onConfirmCompleteClick(newStatusId: string) {\r\n // TODO: Remove hard coding\r\n const prevStatusId: string =\r\n this.skillsMatrixData.curricula[this.skillModalCurrKey]\r\n .subjects[this.skillModalSkillKey]\r\n .users[this.skillModalUserKey] || {}['statusId'] || '6';\r\n this.skillsMatrixData.curricula[this.skillModalCurrKey]\r\n .subjects[this.skillModalSkillKey]\r\n .users[this.skillModalUserKey] = {statusId: '8'};\r\n\r\n const eppl: CsodExpressClassPayload = {\r\n loId: this.skillsMatrixData.curricula[this.skillModalCurrKey].subjects[this.skillModalSkillKey].learningObjectId,\r\n userStatus: [\r\n {\r\n externalId: this.skillsMatrixData.users[this.skillModalUserKey].externalId,\r\n status: 'Passed',\r\n score: 100,\r\n comment: `Completed in Skills Matrix by ${this.authService.me.displayName}`\r\n } as ExpressClassUserObs\r\n ]\r\n } as CsodExpressClassPayload;\r\n\r\n this.dashboardService.createCsodExpressClass(eppl).subscribe(\r\n (r: CsodExpressClassResponse) => {\r\n this.claimService.completeSMClaims(Number(this.skillModalSkillKey), this.authService.me.id, [Number(this.skillModalUserKey)])\r\n .subscribe(\r\n smr => {\r\n this.recalcSummStatus();\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.EXPRESS_CLASS, err);\r\n this.skillsMatrixData.curricula[this.skillModalCurrKey]\r\n .subjects[this.skillModalSkillKey]\r\n .users[this.skillModalUserKey] = {statusId: prevStatusId};\r\n }\r\n )\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.EXPRESS_CLASS, err);\r\n this.skillsMatrixData.curricula[this.skillModalCurrKey]\r\n .subjects[this.skillModalSkillKey]\r\n .users[this.skillModalUserKey] = {statusId: prevStatusId};\r\n },\r\n () => {\r\n this.skillsMatrixData.curricula[this.skillModalCurrKey]\r\n .subjects[this.skillModalSkillKey]\r\n .users[this.skillModalUserKey] = {statusId: newStatusId};\r\n }\r\n )\r\n this.awaitingCompleteConfirmation = false;\r\n }\r\n\r\n onCancelCompleteClick() {\r\n this.awaitingCompleteConfirmation = false;\r\n }\r\n\r\n onDeepLinkClick() {\r\n this.skillsMatrixData.curricula[this.skillModalCurrKey]\r\n .subjects[this.skillModalSkillKey]\r\n .users[this.skillModalUserKey] = {statusId: '7'}; // TODO: Remove hard coding\r\n }\r\n\r\n hideUserCell(userKey: string): boolean {\r\n const user = this.skillsMatrixData.users[userKey]\r\n if (user.me && !this.hideMe) {\r\n return false;\r\n } else if (user.directReport && !this.hideDirect) {\r\n return false;\r\n } else if (user.indirectReport && !this.hideIndirect) {\r\n return false;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n progressStyle(percentComplete: number): any {\r\n return { 'width': `${percentComplete * 100}%` }\r\n }\r\n\r\n currProgressStyle(currKey: string): any {\r\n return this.progressStyle(this.getCurrMeanCompletion(currKey));\r\n }\r\n\r\n currUserProgressStyle(currKey: string, userKey: string): any {\r\n return this.progressStyle(this.getCurrUserSummary(currKey, userKey)['percentComplete']);\r\n }\r\n\r\n progressClass(percentComplete: number): string {\r\n // TODO: Add to ConfigService\r\n if (percentComplete <= 0.25) {\r\n return 'danger'\r\n } else if (percentComplete <= 0.75) {\r\n return 'warning text-white'\r\n }\r\n return 'success'\r\n }\r\n\r\n currBadgeClass(currKey: string): string {\r\n return 'bg-' + this.progressClass(this.getCurrMeanCompletion(currKey));\r\n }\r\n\r\n currProgressClass(currKey: string): string {\r\n return 'bg-' + this.progressClass(this.getCurrMeanCompletion(currKey));\r\n }\r\n\r\n currUserBadgeClass(currKey: string, userKey: string): string {\r\n let progressClass = 'bg-light';\r\n if (this.currAssignedToUser(userKey, currKey)) {\r\n progressClass = 'bg-' + this.progressClass(this.getCurrUserSummary(currKey, userKey)['percentComplete']);\r\n }\r\n return progressClass;\r\n }\r\n\r\n currUserProgressClass(currKey: string, userKey: string): string {\r\n let progressClass = 'bg-secondary';\r\n if (this.currAssignedToUser(userKey, currKey)) {\r\n progressClass = 'bg-' + this.progressClass(this.getCurrUserSummary(currKey, userKey)['percentComplete']);\r\n }\r\n return progressClass;\r\n }\r\n\r\n onFilterTextChange(filterText: string) {\r\n this.currFilterText = filterText;\r\n }\r\n\r\n hideCurriculum(currKey: string) {\r\n if (this.currFilterActive) {\r\n return !this.skillsMatrixData.curricula[currKey].name.toLowerCase().includes(this.currFilterText.toLowerCase())\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n addExtraUser() {\r\n const extraUser = this.extraUserControls.get('extraUser').value;\r\n if (extraUser) {\r\n const extraUserId = extraUser.split(':', 1)[0]\r\n const extraPerson = this.personList.find( p => { return p.externalUserId === extraUserId})\r\n if (extraPerson) {\r\n this.extraPeople.push(`${extraPerson.id}`);\r\n this.loadExtraUser(extraPerson.id);\r\n }\r\n }\r\n this.extraUserControls.get('extraUser').reset();\r\n }\r\n\r\n showBulkSubmit(currKey: string, subjKey: string) {\r\n this.awaitingCompleteConfirmation = false;\r\n this.bulkSubmitForm.get('trainingTitle').setValue(this.skillsMatrixData.curricula[currKey].subjects[subjKey].skillName);\r\n this.bulkSubmitForm.get('curriculaKey').setValue(currKey);\r\n this.bulkSubmitForm.get('subjectKey').setValue(subjKey);\r\n (this.bulkSubmitForm.get('people') as FormArray).clear();\r\n const peopleArray = [];\r\n this.userKeys.forEach(\r\n uk => {\r\n const userStatus = (this.skillsMatrixData.curricula[currKey].subjects[subjKey].users[uk] || {})['statusId'];\r\n // TODO: Remove hard coding\r\n const checkBoxDisabled =\r\n ['5', '7', '8'].includes(userStatus) ||\r\n !this.skillsMatrixData.users[uk].externalId ||\r\n !this.currAssignedToUser(uk, currKey);\r\n const checkBoxControl = new FormControl({ value: !checkBoxDisabled, disabled: checkBoxDisabled});\r\n peopleArray.push(this.fb.group(\r\n {\r\n personId: Number(uk),\r\n personName: this.skillsMatrixData.users[uk].userName,\r\n trainingStatusId: userStatus || '6',\r\n prevTrainingStatusId: userStatus || '6',\r\n includePerson: checkBoxControl,\r\n disabled: checkBoxControl.disabled\r\n }\r\n ))\r\n }\r\n )\r\n this.bulkSubmitForm.setControl('people', this.fb.array(peopleArray));\r\n const submitModal = new Modal(document.getElementById('submitModal'));\r\n submitModal.show();\r\n }\r\n\r\n saveBulkSubmit() {\r\n const currKey = this.bulkSubmitForm.get('curriculaKey').value;\r\n const subjectKey = this.bulkSubmitForm.get('subjectKey').value;\r\n const eppl: CsodExpressClassPayload = {\r\n loId: this.skillsMatrixData.curricula[currKey].subjects[subjectKey].learningObjectId,\r\n userStatus: []\r\n } as CsodExpressClassPayload;\r\n\r\n const peopleFormArray: FormArray = this.bulkSubmitForm.get('people') as FormArray;\r\n\r\n this.setBulkStatus(peopleFormArray, '8', currKey, subjectKey);\r\n peopleFormArray.controls.forEach( p => {\r\n if (p.get('includePerson').value) {\r\n eppl.userStatus.push(\r\n {\r\n externalId: this.skillsMatrixData.users[p.get('personId').value].externalId,\r\n comment: `Completed in Skills Matrix by ${this.authService.me.displayName}`,\r\n score: 100,\r\n status: 'Passed'\r\n }\r\n );\r\n p.get('trainingStatusId').setValue('8'); // TODO: Remove hard coding\r\n }\r\n });\r\n this.dashboardService.createCsodExpressClass(eppl).subscribe(\r\n (r: CsodExpressClassResponse) => {\r\n this.claimService.completeSMClaims(\r\n Number(subjectKey),\r\n this.authService.me.id,\r\n peopleFormArray.controls\r\n .filter( p0 => {return p0.get('includePerson').value})\r\n .map(p1 => { return p1.get('personId').value; })\r\n ).subscribe(\r\n smr => {\r\n this.recalcSummStatus();\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.EXPRESS_CLASS, err);\r\n this.setBulkStatus(peopleFormArray, null, currKey, subjectKey)\r\n }\r\n )\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.EXPRESS_CLASS, err);\r\n this.setBulkStatus(peopleFormArray, null, currKey, subjectKey)\r\n },\r\n () => {\r\n this.setBulkStatus(peopleFormArray, '5', currKey, subjectKey, true); // TODO: Remove hard coding\r\n }\r\n )\r\n const submitModal = new Modal(document.getElementById('submitModal'));\r\n submitModal.hide();\r\n }\r\n\r\n setBulkStatus(people: FormArray, statusId: string, currKey: string, subjectKey: string, updateControl: boolean = false) {\r\n people.controls.forEach(\r\n (p: FormControl) => {\r\n if (p.get('includePerson').value) {\r\n this.skillsMatrixData.curricula[currKey].subjects[subjectKey].users[p.get('personId').value] = {\r\n statusId: statusId === null ? p.get('prevTrainingStatusId').value : statusId\r\n };\r\n if (updateControl && statusId) {\r\n p.get('prevTrainingStatusId').setValue(statusId);\r\n }\r\n }\r\n }\r\n )\r\n }\r\n\r\n getCurrMeanCompletion(currKey: string): number {\r\n const userList = [];\r\n const userSumm = this.currSummaryStatus.get(currKey) || {};\r\n const currDetail: SkillsMatrixCurricula = this.skillsMatrixData.curricula[currKey];\r\n\r\n this.userKeys.forEach(\r\n k => {\r\n if (!this.currAssignedToUser(k, currKey) || this.skillsMatrixData.users[k].extra) {\r\n return; // skip to next user\r\n }\r\n userList.push(\r\n userSumm[k] ||\r\n {\r\n status: 0,\r\n percentComplete: 0,\r\n extra: this.skillsMatrixData.users[k].extra\r\n }\r\n )\r\n }\r\n )\r\n return userList\r\n .map( u1 => u1['percentComplete'])\r\n .reduce( (a, b) => a + b, 0) / userList.length;\r\n }\r\n\r\n get personCategories(): Array {\r\n return this.configService.skillMatrixHeadings;\r\n }\r\n\r\n getCurriculaSubjectKeys(currKey: string): Array {\r\n return Object.keys(this.skillsMatrixData.curricula[currKey].subjects).sort(\r\n (a, b) => {\r\n const aName: string = this.skillsMatrixData.curricula[currKey].subjects[a].skillName;\r\n const bName: string = this.skillsMatrixData.curricula[currKey].subjects[b].skillName;\r\n return aName < bName ? -1 : 1;\r\n }\r\n );\r\n }\r\n\r\n getCurriculaSubjectUserKeys(currKey: string, subjKey: string): Array {\r\n return Object.keys(this.skillsMatrixData.curricula[currKey].subjects[subjKey].users)\r\n }\r\n\r\n getCurrUserSummary(currKey: string, userKey: string) {\r\n return ((this.currSummaryStatus.get(currKey) || {})[userKey]) || {\r\n status: 0,\r\n percentComplete: 0,\r\n extra: this.skillsMatrixData.users[userKey].extra\r\n };\r\n }\r\n\r\n getCurrUserSummaryValue(currKey: string, userKey: string): string {\r\n let summValue = 'N/A';\r\n if (this.currAssignedToUser(userKey, currKey)) {\r\n const percentComplete = ((\r\n (this.currSummaryStatus.get(currKey) || {})[userKey]\r\n ) || {\r\n percentComplete: 0,\r\n })['percentComplete'];\r\n summValue = formatPercent(percentComplete, this.locale);\r\n }\r\n\r\n return summValue;\r\n\r\n }\r\n\r\n removeUser(removeUserKey: string) {\r\n this.curriculaKeys.forEach( ck => {\r\n const subjKeys = Object.keys(this.skillsMatrixData.curricula[ck].subjects);\r\n subjKeys.forEach( sk => {\r\n delete this.skillsMatrixData.curricula[ck].subjects[sk].users[removeUserKey]\r\n })\r\n })\r\n delete this.skillsMatrixData.users[removeUserKey]\r\n this.userKeys = this.userKeys.filter( u => { return u !== removeUserKey})\r\n const idx = this.extraPeople.indexOf(removeUserKey);\r\n if (idx > -1) {\r\n this.extraPeople = this.extraPeople.splice(idx, 1);\r\n }\r\n this.recalcSummStatus();\r\n }\r\n\r\n onWatchChange() { // TODO: rename function\r\n this.loadingData = true;\r\n this.curriculaKeys = [];\r\n this.userKeys = [];\r\n this.ffCount = 0;\r\n this.cmCount = 0;\r\n this.wmCount = 0;\r\n this.skillsMatrixData = new SkillsMatrix();\r\n this.personId = null;\r\n this.extraPeople = [];\r\n this.loadWatchUsers();\r\n this.loadSkillsMatrix();\r\n }\r\n\r\n transformDeepLink(deepLink: string) {\r\n // TODO: Would be nice to use URL if IE11 support not required\r\n // const origUrl = new URL(deepLink)\r\n // const unescOrigSearch = unescape(origUrl.search);\r\n\r\n if (!deepLink) {\r\n return deepLink;\r\n }\r\n\r\n const origUrlParts = deepLink.split('?', 2);\r\n const unescOrigSearch = unescape(origUrlParts[1]);\r\n\r\n const searchParts = unescOrigSearch.split('=transcript&loid=', 2);\r\n const newSearch = encodeURIComponent(`/DeepLink/ProcessRedirect.aspx?module=loRegisterAndLaunch&lo=${searchParts[1]}`)\r\n\r\n return `${origUrlParts[0]}?ouid=2&ReturnUrl=${newSearch}`;\r\n }\r\n\r\n showDeepLink(userKey: string) {\r\n return userKey === this.authService.me.id.toString();\r\n }\r\n\r\n showUserDetail(userKey: string) {\r\n this.selectedWatchMemberId = Number(userKey);\r\n const personDetailModal = new Modal(document.getElementById('personDetailModal'));\r\n personDetailModal.show();\r\n }\r\n\r\n userCurriculaList(userKey: string) {\r\n return ((this.skillsMatrixData.users[userKey] || {})['currCats'] || []).join(', ');\r\n }\r\n\r\n get disableBulkSave() {\r\n return (this.bulkSubmitForm.get('people') as FormArray).controls\r\n .map( (c: FormGroup) => c.get('includePerson') )\r\n .every( (e: FormControl) => { return !e.value } )\r\n }\r\n\r\n // https://stackoverflow.com/questions/34495307/angular2-with-bootstrap-events-does-not-trigger-observable-changes/49122040#49122040\r\n\r\n}\r\n","\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Filter results
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Show details for:

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
Key:
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Not Started / Expired
Awaiting Sync
Complete
Unknown Status
Updating
Curricula Not Assigned To User
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
User Competency / Skill Status
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Curriculum{{skillsMatrixData?.curricula[skillModalCurrKey]?.name}}
User{{skillsMatrixData?.users[skillModalUserKey]?.userName}}
Competency / Skill{{skillsMatrixData?.curricula[skillModalCurrKey]?.subjects[skillModalSkillKey]?.skillName}}
Link to training\r\n Click here\r\n
Current Status{{this.statusDescriptionMap.get(skillsMatrixData?.curricula[skillModalCurrKey]?.subjects[skillModalSkillKey]?.users[skillModalUserKey]?.statusId) || 'Unknown'}}
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
Bulk completion
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Mark {{bulkSubmitForm.controls['trainingTitle'].value}} complete for:

\r\n
\r\n
\r\n
\r\n
Name
\r\n
Current Status
\r\n
Include?
\r\n
\r\n
\r\n
\r\n
{{c.personName}}
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
Person Detail
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
Name
\r\n
{{watchUserMap.get(selectedWatchMemberId).personName}}
\r\n
\r\n
\r\n
ID
\r\n
{{watchUserMap.get(selectedWatchMemberId).userId}}
\r\n
\r\n
\r\n
Username
\r\n
{{watchUserMap.get(selectedWatchMemberId).username}}
\r\n
\r\n
\r\n
Position
\r\n
{{watchUserMap.get(selectedWatchMemberId).position}}
\r\n
\r\n
\r\n
Watch
\r\n
{{watchUserMap.get(selectedWatchMemberId).watch}}
\r\n
\r\n\r\n
\r\n
Reports to
\r\n
{{watchUserMap.get(selectedWatchMemberId).supervisor}}
\r\n
\r\n
\r\n
Assigned Training Categories
\r\n
{{userCurriculaList(selectedWatchMemberId)}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Role Matrix {{subTitle}}\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n
0\">\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n 0\" class=\"text-center table-light esqep-user-me\" [hidden]=\"hideMe\" [attr.colspan]=\"wmCount\">{{personCategories[0]}}0\" class=\"text-center table-light esqep-user-direct-report text-muted\" [attr.colspan]=\"cmCount\" [hidden]=\"hideDirect\">{{personCategories[1]}}0\" class=\"text-center table-light esqep-user-indirect-report fw-normal\" [attr.colspan]=\"ffCount\" [hidden]=\"hideIndirect\">{{personCategories[2]}}Other staff
\r\n Curriculum - Competency / Skill\r\n Action\r\n {{skillsMatrixData.users[u].userName}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n {{skillsMatrixData.curricula[c].name}}\r\n \r\n
\r\n \r\n {{getCurrMeanCompletion(c) | percent}}\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n {{getCurrUserSummaryValue(c, s)}}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{this.skillsMatrixData.curricula[c].subjects[us].skillName}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n","import {SkillMatrix0} from './skill-matrix-data';\r\n\r\nexport const skillMatrixData: SkillMatrix0 = JSON.parse(`{\r\n \\\"curricula\\\": [\r\n {\r\n \\\"id\\\": 745, \r\n \\\"name\\\": \\\"CRMS\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=35e50f2e-1907-4e75-81ee-677f0a56b765\\\", \r\n \\\"skillId\\\": 4367, \r\n \\\"skillName\\\": \\\"Fire Investigation -> FI CRMS Dynamics 365 (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=56cf3fa0-5722-4b7d-b6a5-3b494a0c0413\\\", \r\n \\\"skillId\\\": 4368, \r\n \\\"skillName\\\": \\\"Fire Investigation -> Fire Investigation CRMS Webinar (Material/Webinar)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=040f2b52-727a-4ef9-a697-d5bae6663c3b\\\", \r\n \\\"skillId\\\": 4369, \r\n \\\"skillName\\\": \\\"Fire Investigation -> CRMS Fire Investigation Job Aid (Material/PDF)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=26a81a43-a848-47c0-986f-9b90b95106e7\\\", \r\n \\\"skillId\\\": 4370, \r\n \\\"skillName\\\": \\\"Fire Investigation -> CRMS Fire Investigation Quick Guide (Material/PDF)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=a66fa12b-d05b-499d-8d76-8f0c3f1bda3b\\\", \r\n \\\"skillId\\\": 4371, \r\n \\\"skillName\\\": \\\"Petroleum and Explosives -> Petroleum and Explosives CRMS Dynamics 365 (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=d78b68c3-85d5-474f-8da6-5489875c78b6\\\", \r\n \\\"skillId\\\": 4372, \r\n \\\"skillName\\\": \\\"Protection -> Protection CRMS Dynamics 365 (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=d8ece738-4a9d-40e3-90db-60f7b389555f\\\", \r\n \\\"skillId\\\": 4373, \r\n \\\"skillName\\\": \\\"Protection -> Protection CRMS Webinar (Material/Webinar)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=f8816d82-1cfa-4638-ab1c-1f3f2ed597f3\\\", \r\n \\\"skillId\\\": 4374, \r\n \\\"skillName\\\": \\\"Protection -> CRMS FAQ 1 (Material/Word)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=283388fb-f201-41c0-812d-61134a9d2379\\\", \r\n \\\"skillId\\\": 4375, \r\n \\\"skillName\\\": \\\"Protection -> CRMS FAQ 2 (Material/Word)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=a7680e8e-9bbe-4a47-8bf3-0a03833b23fc\\\", \r\n \\\"skillId\\\": 4376, \r\n \\\"skillName\\\": \\\"Protection -> CRMS Protection Quick Guide (Material/PDF)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=5c5c89e9-7ae7-42de-b6d8-c6974537303b\\\", \r\n \\\"skillId\\\": 4377, \r\n \\\"skillName\\\": \\\"Protection -> CRMS FAQ 3 (Material/Word)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=e0521baf-595d-4923-96d1-416f5fd9bbba\\\", \r\n \\\"skillId\\\": 4378, \r\n \\\"skillName\\\": \\\"Protection -> Compliance Articles (Material/Word)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=36d75174-262b-4dc0-b5b4-b15aa84569b5\\\", \r\n \\\"skillId\\\": 4379, \r\n \\\"skillName\\\": \\\"Protection -> Letters Checklist (Material/Excel)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 746, \r\n \\\"name\\\": \\\"CSOD - New Hire Curriculum\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=d424bd12-eabd-4e94-9c77-d3020d610868\\\", \r\n \\\"skillId\\\": 4048, \r\n \\\"skillName\\\": \\\"Required -> CSOD - July '15 Overview_Recruiting & Onboarding (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=2140e29e-8c50-4637-a3ac-7e03dee8760c\\\", \r\n \\\"skillId\\\": 4049, \r\n \\\"skillName\\\": \\\"Other Resources -> CSOD - User Guide (Material/General)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=dc335507-fb9a-4a51-aef3-9fedefbd44ef\\\", \r\n \\\"skillId\\\": 4050, \r\n \\\"skillName\\\": \\\"Other Resources -> CSOD - CSOD Website (Material/General)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 747, \r\n \\\"name\\\": \\\"Inclusion Essentials\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=7f2e32e6-cca3-431a-8aea-ecc4da61c86e\\\", \r\n \\\"skillId\\\": 4052, \r\n \\\"skillName\\\": \\\"Inclusivity Essentials -> Inclusivity Essentials (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 748, \r\n \\\"name\\\": \\\"M+ - Manchester Plus\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=e0e1cb74-f6bf-44c6-9270-17bf81d7995d\\\", \r\n \\\"skillId\\\": 4334, \r\n \\\"skillName\\\": \\\"Overview -> Manchester Plus Guidance Document (Material/Manchester Plus)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=edd35c7d-f0ec-4d55-9466-43627fb73752\\\", \r\n \\\"skillId\\\": 4335, \r\n \\\"skillName\\\": \\\"Core Skills -> M+ - Drill Card - Firefighter Skills (Material/Manchester Plus)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=263e42ab-525d-4d51-9261-840a492b46cf\\\", \r\n \\\"skillId\\\": 4336, \r\n \\\"skillName\\\": \\\"Core Skills -> M+ - Drill Card - Line Rescue (Material/Manchester Plus)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=e9b11eb2-984c-4caa-896e-8cc21fe538c3\\\", \r\n \\\"skillId\\\": 4337, \r\n \\\"skillName\\\": \\\"Core Skills -> M+ - Drill Card - Pumping (Material/Manchester Plus)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=f0226115-ea3d-4dfc-9b6e-867c2ae66cc2\\\", \r\n \\\"skillId\\\": 4338, \r\n \\\"skillName\\\": \\\"Core Skills -> M+ - Drill Card - RTC (Material/Manchester Plus)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=e78922fe-2381-4a81-94ad-ae580af4bdf1\\\", \r\n \\\"skillId\\\": 4339, \r\n \\\"skillName\\\": \\\"Core Skills -> M+ - Drill Card - RTC Casualty Care (Material/Manchester Plus)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=17d60318-0819-4d38-8cf7-4912077b7120\\\", \r\n \\\"skillId\\\": 4340, \r\n \\\"skillName\\\": \\\"M+ Tasks -> M+ - Drill Card - British Values (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=ed810fec-1c20-425c-90fa-2e793f0a337b\\\", \r\n \\\"skillId\\\": 4341, \r\n \\\"skillName\\\": \\\"M+ Tasks -> M+ - Drill Card - CBRNe (Material/Manchester Plus)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=b190e34a-c9d2-4381-bad5-ad57cf519fe8\\\", \r\n \\\"skillId\\\": 4342, \r\n \\\"skillName\\\": \\\"M+ Tasks -> M+ - Drill Card - Classification of Fires (Material/Manchester Plus)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=440366b4-02aa-4ddb-99ed-da7b31f2cebf\\\", \r\n \\\"skillId\\\": 4343, \r\n \\\"skillName\\\": \\\"M+ Tasks -> M+ - Drill Card - Duties under legislation (Material/Manchester Plus)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=6d2d75ec-a4bc-49a9-96ef-5a56f988f225\\\", \r\n \\\"skillId\\\": 4344, \r\n \\\"skillName\\\": \\\"M+ Tasks -> M+ - Drill Card - Engage with communities (Material/Manchester Plus)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=d5ae8ea1-f386-4c1c-b30c-8d0ee51c214e\\\", \r\n \\\"skillId\\\": 4345, \r\n \\\"skillName\\\": \\\"M+ Tasks -> M+ - Drill Card - Incident Command (Material/Manchester Plus)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=176f8956-fbd0-4845-b8e2-b1a5c29ac078\\\", \r\n \\\"skillId\\\": 4346, \r\n \\\"skillName\\\": \\\"M+ Tasks -> M+ - Drill Card - Incident Involving Hazardous Materials (Material/Manchester Plus)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=dca725b1-75c0-488e-b5a0-e6c2bf84988a\\\", \r\n \\\"skillId\\\": 4347, \r\n \\\"skillName\\\": \\\"M+ Tasks -> M+ - Drill Card - JESIP (Material/Manchester Plus)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=3d99a653-0b74-4365-a4dd-9f2115468e43\\\", \r\n \\\"skillId\\\": 4348, \r\n \\\"skillName\\\": \\\"M+ Tasks -> M+ - Drill Card - Lifts (Material/Manchester Plus)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=48e5797e-e424-4364-8462-4cbf93da1d8e\\\", \r\n \\\"skillId\\\": 4349, \r\n \\\"skillName\\\": \\\"M+ Tasks -> M+ - Drill Card - Maintain Specialist Equipment and Resources (Material/Manchester Plus)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=4405911c-fc09-46e8-a433-8184e6c661e2\\\", \r\n \\\"skillId\\\": 4350, \r\n \\\"skillName\\\": \\\"M+ Tasks -> M+ - Drill Card - Operate Specialist Information Communication and Technology Systems (Material/Manchester Plus)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=5b5f7598-f05f-4ba7-9d77-34d51cdac141\\\", \r\n \\\"skillId\\\": 4351, \r\n \\\"skillName\\\": \\\"M+ Tasks -> M+ - Drill Card - Safe Person Concept (Material/Manchester Plus)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=edd5715e-77f5-4bcd-8a80-121ef54eedfe\\\", \r\n \\\"skillId\\\": 4352, \r\n \\\"skillName\\\": \\\"M+ Tasks -> M+ - Drill Card - Support Operational Intelligence (Material/Manchester Plus)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=e4c28d1c-0b9d-49e6-9771-a196e4428483\\\", \r\n \\\"skillId\\\": 4353, \r\n \\\"skillName\\\": \\\"M+ Tasks -> M+ - Drill Card - Support the Development of Colleagues (Material/Manchester Plus)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 749, \r\n \\\"name\\\": \\\"MoC0 - Evidence-Based Firefighting Tactics\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=2f0363b3-598c-4f7f-b58a-cceebdd4cda0\\\", \r\n \\\"skillId\\\": 4099, \r\n \\\"skillName\\\": \\\"Introduction -> Evidence-Based Firefighting Tactics: Introduction (Video/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=aa5d8f3e-86ff-426f-9618-ce94a34597eb\\\", \r\n \\\"skillId\\\": 4100, \r\n \\\"skillName\\\": \\\"Videos -> Evidence-Based Firefighting Tactics: Part 1 (Video/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=237c0e7f-6202-42a6-91ac-8b28fd6d8459\\\", \r\n \\\"skillId\\\": 4101, \r\n \\\"skillName\\\": \\\"Videos -> Evidence-Based Firefighting Tactics: Part 2 (Video/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 750, \r\n \\\"name\\\": \\\"MoC12 - Animal Rescue\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=46482127-1a6b-4ac6-8770-9fce772d4439\\\", \r\n \\\"skillId\\\": 4133, \r\n \\\"skillName\\\": \\\"Knowledge -> Animal Rescue (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 751, \r\n \\\"name\\\": \\\"MoC12 - Breathing Apparatus (Practical)\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=6507fe81-0029-445f-917b-6b6dd2aebf93\\\", \r\n \\\"skillId\\\": 4088, \r\n \\\"skillName\\\": \\\"Practical -> Physiology & Psychology (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=3ec817a5-1693-49b0-98b1-d6b4b7336a6f\\\", \r\n \\\"skillId\\\": 4089, \r\n \\\"skillName\\\": \\\"Practical -> Welfare of BA Wearers (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=5fc991e7-fb91-4340-bd99-eefc6260a7d1\\\", \r\n \\\"skillId\\\": 4090, \r\n \\\"skillName\\\": \\\"Practical -> Roles & Responsibilities (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=4b2b189e-b802-4005-af5e-260cc82fa30c\\\", \r\n \\\"skillId\\\": 4091, \r\n \\\"skillName\\\": \\\"Practical -> Operational Deployment: Rapid Deployment (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=3daae778-5e3b-4a7d-989f-a19953ee7ac4\\\", \r\n \\\"skillId\\\": 4092, \r\n \\\"skillName\\\": \\\"Practical -> Operational Deployment: Single Wearer (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=5498403b-33dc-46ff-98b9-fca43686b76c\\\", \r\n \\\"skillId\\\": 4093, \r\n \\\"skillName\\\": \\\"Practical -> Search & Rescue Within Structures (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=303ce592-1146-4435-9025-b171ac607d4f\\\", \r\n \\\"skillId\\\": 4094, \r\n \\\"skillName\\\": \\\"Practical -> Casualty Management Whilst Wearing BA (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=dfc2de9c-67c3-4fa5-8eb8-5e8637bd905e\\\", \r\n \\\"skillId\\\": 4095, \r\n \\\"skillName\\\": \\\"Practical -> Emergency Procedures: Entrapment and EASE (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=c19812b4-0a01-411a-9f72-1fa6ca8829d4\\\", \r\n \\\"skillId\\\": 4096, \r\n \\\"skillName\\\": \\\"Practical -> Emergency Procedures: Partial BA Set Removal and RAP (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=897a42a7-e83c-458e-aa00-a3c7c8494d13\\\", \r\n \\\"skillId\\\": 4097, \r\n \\\"skillName\\\": \\\"Practical -> Guidelines (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=7c3e11b4-0e62-412b-8b06-0c0a09da073a\\\", \r\n \\\"skillId\\\": 4098, \r\n \\\"skillName\\\": \\\"Practical -> BA Set & ECB (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 752, \r\n \\\"name\\\": \\\"MoC12 - Collapsed or Unstable Structures\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=ce2cb7eb-5098-415c-b60f-1cc3bfca7fc7\\\", \r\n \\\"skillId\\\": 4132, \r\n \\\"skillName\\\": \\\"Knowledge -> Collapsed or Unstable Structures (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 753, \r\n \\\"name\\\": \\\"MoC12 - Comms and Mobilising\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=81b67da2-1cdf-401b-a0c7-84ca13a22b97\\\", \r\n \\\"skillId\\\": 4226, \r\n \\\"skillName\\\": \\\"Knowledge -> Standard Messages Guidance (CDC) (Material/External Link)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=d2a6ad52-b034-4bd9-aa39-e7b024b20b0e\\\", \r\n \\\"skillId\\\": 4227, \r\n \\\"skillName\\\": \\\"Knowledge -> Standard Messages: Confirmation Of Knowledge (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=f0571c1d-fa64-4809-b572-f9ad300f733b\\\", \r\n \\\"skillId\\\": 4228, \r\n \\\"skillName\\\": \\\"Knowledge -> Use of Radios (CDC) (Material/External Link)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=e68d6105-a06b-44ff-bbe1-f873d4b25f80\\\", \r\n \\\"skillId\\\": 4229, \r\n \\\"skillName\\\": \\\"Knowledge -> Use of Radios: Confirmation Of Knowledge (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 754, \r\n \\\"name\\\": \\\"MoC12 - Confined Space\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=c3fc3565-c3c7-453d-b937-e2961eb20f29\\\", \r\n \\\"skillId\\\": 4131, \r\n \\\"skillName\\\": \\\"Knowledge -> Confined Space (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 755, \r\n \\\"name\\\": \\\"MoC12 - Electrical Installations\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=82ff657b-2bfd-4af8-87dc-21e6d9a98c98\\\", \r\n \\\"skillId\\\": 4323, \r\n \\\"skillName\\\": \\\"Knowledge -> Domestic Power Supplies (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=7736f9f2-170a-426e-8f06-5039396388b3\\\", \r\n \\\"skillId\\\": 4324, \r\n \\\"skillName\\\": \\\"Knowledge -> Link Boxes, Street Furniture & Mobile Phone Masts (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=117e6bb4-7ad2-46e8-b007-5e2d92c801a5\\\", \r\n \\\"skillId\\\": 4325, \r\n \\\"skillName\\\": \\\"Knowledge -> Photovoltaic Panels (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=8f47ae7e-ef04-4d9a-bcb5-f00e64d4e26a\\\", \r\n \\\"skillId\\\": 4326, \r\n \\\"skillName\\\": \\\"Knowledge -> Substation Rescue & Fire (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=a4544e81-eb21-4c49-85a0-871f9d7616ca\\\", \r\n \\\"skillId\\\": 4327, \r\n \\\"skillName\\\": \\\"Knowledge -> Towers (Pylons) (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=dd972c06-267f-481f-8bf4-4b498a013096\\\", \r\n \\\"skillId\\\": 4328, \r\n \\\"skillName\\\": \\\"Knowledge -> Wind Turbines (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 756, \r\n \\\"name\\\": \\\"MoC12 - Farms\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=f8161bc3-f1da-42b5-b10b-8354b00d6fc3\\\", \r\n \\\"skillId\\\": 4195, \r\n \\\"skillName\\\": \\\"Knowledge -> Farms (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 757, \r\n \\\"name\\\": \\\"MoC12 - Firefighter Skills - Dams\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=b5d005bb-39c9-4cf4-8a76-e9c548d8ca62\\\", \r\n \\\"skillId\\\": 4047, \r\n \\\"skillName\\\": \\\"Practical -> Dams (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 758, \r\n \\\"name\\\": \\\"MoC12 - Firefighter Skills - Knots & Lines\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=c16261a1-6e45-4446-a8ab-4c5d8e8173a5\\\", \r\n \\\"skillId\\\": 4046, \r\n \\\"skillName\\\": \\\"Practical -> Knots & Lines (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 759, \r\n \\\"name\\\": \\\"MoC12 - Firefighter Skills - Methods of Entry\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=5f796798-563f-4afb-b35d-0219c53408af\\\", \r\n \\\"skillId\\\": 4251, \r\n \\\"skillName\\\": \\\"Knowledge -> Methods of Entry (PowerPoint) (Material/PowerPoint)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=9d8b4add-62e5-46f7-a646-f70c8b02c01e\\\", \r\n \\\"skillId\\\": 4252, \r\n \\\"skillName\\\": \\\"Knowledge -> Methods of Entry: Confirmation Of Knowledge (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=a409e4c7-61e1-46f5-b094-07570b864ae1\\\", \r\n \\\"skillId\\\": 4253, \r\n \\\"skillName\\\": \\\"Practical -> Methods of Entry (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 760, \r\n \\\"name\\\": \\\"MoC12 - Firefighter Skills - Reversing Procedures and Manoeuvring of Appliances\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=38d9759b-d230-4790-b912-367f71805a66\\\", \r\n \\\"skillId\\\": 4040, \r\n \\\"skillName\\\": \\\"Knowledge -> Reversing Procedures & Manoeuvring Appliances (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=740e7072-9125-4178-bf2c-4102d74f1f8d\\\", \r\n \\\"skillId\\\": 4041, \r\n \\\"skillName\\\": \\\"Knowledge -> Reversing Procedures & Manoeuvring Appliances: Confirmation Of Knowledge (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=2ede21c1-8f6a-436d-aec2-40af0d7b51f8\\\", \r\n \\\"skillId\\\": 4042, \r\n \\\"skillName\\\": \\\"Practical -> Reversing Procedures and Manoeuvring of Appliances (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 761, \r\n \\\"name\\\": \\\"MoC12 - Firefighter Skills - Salvage\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=ad3947a4-1295-4017-9f10-71c0fb2a0afd\\\", \r\n \\\"skillId\\\": 4073, \r\n \\\"skillName\\\": \\\"Knowledge -> Salvage (PowerPoint) (Material/PowerPoint)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=4869fe1c-65b3-4240-982d-70f4db04b510\\\", \r\n \\\"skillId\\\": 4074, \r\n \\\"skillName\\\": \\\"Knowledge -> Salvage: Confirmation Of Knowledge (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=9a0de2f9-03ff-4d95-9a8b-726a87d6b15d\\\", \r\n \\\"skillId\\\": 4075, \r\n \\\"skillName\\\": \\\"Practical -> Salvage (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 762, \r\n \\\"name\\\": \\\"MoC12 - Firefighter Skills - Topography\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=0c68f4ba-a716-4f08-8d31-6cebf8828804\\\", \r\n \\\"skillId\\\": 4113, \r\n \\\"skillName\\\": \\\"Practical -> Topography (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 763, \r\n \\\"name\\\": \\\"MoC12 - Firefighter Skills - Typography\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=0c68f4ba-a716-4f08-8d31-6cebf8828804\\\", \r\n \\\"skillId\\\": 4039, \r\n \\\"skillName\\\": \\\"Practical -> Topography (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 764, \r\n \\\"name\\\": \\\"MoC12 - Fires and Firefighting - Foam\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=121be38e-0721-483a-9082-289fe9cac75a\\\", \r\n \\\"skillId\\\": 4311, \r\n \\\"skillName\\\": \\\"Knowledge -> Foam Production: Front Line Appliances (PowerPoint) (Material/PowerPoint)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=91c1c94a-3899-4c81-804d-908c7d3d8c28\\\", \r\n \\\"skillId\\\": 4312, \r\n \\\"skillName\\\": \\\"Knowledge -> Foam Production: Front Line Appliances : Confirmation Of Knowledge (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=3b7b9c86-c5dd-4cdf-97e3-2f9353b74c34\\\", \r\n \\\"skillId\\\": 4313, \r\n \\\"skillName\\\": \\\"Practical -> Foam Production: Practical Drill (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 765, \r\n \\\"name\\\": \\\"MoC12 - Fires and Firefighting - Hydraulics and Pump Operation\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=18887dcb-38c9-4cdf-bd2d-ff7252029005\\\", \r\n \\\"skillId\\\": 4278, \r\n \\\"skillName\\\": \\\"Knowledge -> Pumping (PowerPoint) (Material/PowerPoint)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=194c9830-5845-4fdb-8a22-a7f097cdadbf\\\", \r\n \\\"skillId\\\": 4279, \r\n \\\"skillName\\\": \\\"Knowledge -> Pumping: Confirmation Of Knowledge (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=10b445f1-10b7-429f-902f-7c1b10dbdb48\\\", \r\n \\\"skillId\\\": 4280, \r\n \\\"skillName\\\": \\\"Knowledge -> Water Relay (PowerPoint) (Material/PowerPoint)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=77e6fe7b-7751-4ee7-99e3-ab884368e235\\\", \r\n \\\"skillId\\\": 4281, \r\n \\\"skillName\\\": \\\"Knowledge -> Water Relay: Confirmation Of Knowledge (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=0d343031-12ce-4cb3-879e-ae9577b855e9\\\", \r\n \\\"skillId\\\": 4282, \r\n \\\"skillName\\\": \\\"Practical -> Hydraulics and Pump Operation: Practical Drill (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=5c7ef1ea-6032-438f-a26d-acbf34fa86a4\\\", \r\n \\\"skillId\\\": 4283, \r\n \\\"skillName\\\": \\\"Practical -> Set Up and Manage a Water Relay Using Appliances (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 766, \r\n \\\"name\\\": \\\"MoC12 - Fires and Firefighting - UHP Cold Cut System\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=4ee96eee-f64f-45e3-9a46-4d6155604487\\\", \r\n \\\"skillId\\\": 4170, \r\n \\\"skillName\\\": \\\"Knowledge -> UHP Cold Cut System (PowerPoint) (Material/PowerPoint)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=97d0a865-51cd-4e4b-83e2-d8bacc0cf441\\\", \r\n \\\"skillId\\\": 4171, \r\n \\\"skillName\\\": \\\"Knowledge -> UHP Cold Cut System: Confirmation Of Knowledge (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=9d7c91f0-2767-41bd-9c03-93c2e15fc532\\\", \r\n \\\"skillId\\\": 4172, \r\n \\\"skillName\\\": \\\"Practical -> Maintenance & Testing (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=abeb59a3-8d60-48c8-a9c9-61e0cf84cb41\\\", \r\n \\\"skillId\\\": 4173, \r\n \\\"skillName\\\": \\\"Practical -> Safe and Correct Use (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=9493e7d0-dc76-456d-9b05-6614e5389a5a\\\", \r\n \\\"skillId\\\": 4174, \r\n \\\"skillName\\\": \\\"Practical -> Working From a Ladder (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 767, \r\n \\\"name\\\": \\\"MoC12 - Fires and Firefighting - Wildfires\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=a9c9f3ef-12d6-46b2-85f4-221d810ee1e7\\\", \r\n \\\"skillId\\\": 4248, \r\n \\\"skillName\\\": \\\"Knowledge -> Wildfires (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 768, \r\n \\\"name\\\": \\\"MoC12 - Hazmats - Acetylene\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=8bfe57e8-7d28-46d1-8a3d-e459147c0316\\\", \r\n \\\"skillId\\\": 4286, \r\n \\\"skillName\\\": \\\"Knowledge -> Acetylene (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 769, \r\n \\\"name\\\": \\\"MoC12 - Hazmats - Asbestos\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=de17b53c-d4aa-4285-976a-0d6de3596f1e\\\", \r\n \\\"skillId\\\": 4290, \r\n \\\"skillName\\\": \\\"Knowledge -> Asbestos (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 770, \r\n \\\"name\\\": \\\"MoC12 - Hazmats - Carbon Monoxide\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=f924da00-8ff3-40af-a553-37ea70bf6349\\\", \r\n \\\"skillId\\\": 4135, \r\n \\\"skillName\\\": \\\"Knowledge -> Carbon Monoxide (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 771, \r\n \\\"name\\\": \\\"MoC12 - Hazmats - CBRNe\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=229203c4-9175-4e4c-b526-5a368c927560\\\", \r\n \\\"skillId\\\": 4126, \r\n \\\"skillName\\\": \\\"Knowlegde -> CBRNe (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 772, \r\n \\\"name\\\": \\\"MoC12 - Hazmats - Compressed Gas and Cryogenics\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=cf42c264-f839-4b46-a07d-6afba51d0e8f\\\", \r\n \\\"skillId\\\": 4062, \r\n \\\"skillName\\\": \\\"Knowledge -> Compressed Gas & Cryogenic Liquids (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 773, \r\n \\\"name\\\": \\\"MoC12 - Hazmats - Decontamination\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=2be4ae39-9d31-49d7-91fd-05b8245eb2d9\\\", \r\n \\\"skillId\\\": 4287, \r\n \\\"skillName\\\": \\\"Knowledge -> Decontamination (PowerPoint) (Material/PowerPoint)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=0f365440-ffe5-443a-a3f7-36675bd389a5\\\", \r\n \\\"skillId\\\": 4288, \r\n \\\"skillName\\\": \\\"Knowledge -> Decontamination: Confirmation Of Knowledge (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=e613726f-3a0b-4fa4-8417-ec803e80d4ae\\\", \r\n \\\"skillId\\\": 4289, \r\n \\\"skillName\\\": \\\"Practical -> Decontamination (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 774, \r\n \\\"name\\\": \\\"MoC12 - Hazmats - Natural Gas\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=0bbc4c4c-0756-4002-a216-05d2f56d2222\\\", \r\n \\\"skillId\\\": 4054, \r\n \\\"skillName\\\": \\\"Knowledge -> Natural Gas (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 775, \r\n \\\"name\\\": \\\"MoC12 - Hazmats - PPE - GTS\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=cc2a7222-2d39-490c-925e-cf11e76d1569\\\", \r\n \\\"skillId\\\": 4261, \r\n \\\"skillName\\\": \\\"Knowledge -> GTS (PowerPoint) (Material/PowerPoint)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=8fe3b950-6d17-4df8-aad7-c7bf9520e50d\\\", \r\n \\\"skillId\\\": 4262, \r\n \\\"skillName\\\": \\\"Knowledge -> GTS: Confirmation Of Knowledge (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=a91d0388-132f-40b6-98f3-5ccf0efb3af1\\\", \r\n \\\"skillId\\\": 4263, \r\n \\\"skillName\\\": \\\"Practical -> GTS (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 776, \r\n \\\"name\\\": \\\"MoC12 - Hazmats - PPE - PRPS\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=ec4a54ee-a5c6-4f5f-8faf-e70b8f65ae50\\\", \r\n \\\"skillId\\\": 4308, \r\n \\\"skillName\\\": \\\"Knowledge -> PRPS (PowerPoint) (Material/PowerPoint)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=f7e5dcef-f3d4-4241-bdd2-a3db3ad02c54\\\", \r\n \\\"skillId\\\": 4309, \r\n \\\"skillName\\\": \\\"Knowledge -> PRPS: Confirmation Of Knowledge (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=63570965-5f11-4447-986c-a52de548afb8\\\", \r\n \\\"skillId\\\": 4310, \r\n \\\"skillName\\\": \\\"Practical -> PRPS (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 777, \r\n \\\"name\\\": \\\"MoC12 - Hazmats - PPE - Splash Contamination Suit\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=7ae704b5-1b82-42ab-8eed-7405e8430e23\\\", \r\n \\\"skillId\\\": 4254, \r\n \\\"skillName\\\": \\\"Knowlegde -> Splash Contamination Suit (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=7f232ba9-3fcd-4ef1-a8c3-87d09b229c8e\\\", \r\n \\\"skillId\\\": 4255, \r\n \\\"skillName\\\": \\\"Knowlegde -> Splash Contamination Suit: Confirmation Of Knowledge (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=965d8742-847a-4bd9-be32-db703c8c30ff\\\", \r\n \\\"skillId\\\": 4256, \r\n \\\"skillName\\\": \\\"Practical -> Splash Contamination Suit (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 778, \r\n \\\"name\\\": \\\"MoC12 - Hazmats - Radiation\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=8c6a3f07-a789-4489-9517-9010766dc76c\\\", \r\n \\\"skillId\\\": 4053, \r\n \\\"skillName\\\": \\\"Practical -> Radiation (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 779, \r\n \\\"name\\\": \\\"MoC12 - JESIP\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=d47ef5f0-f4ab-4131-9be7-c8bbd4b4ef0a\\\", \r\n \\\"skillId\\\": 4329, \r\n \\\"skillName\\\": \\\"Knowledge -> JESIP Awareness (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=084c7189-29f7-43b4-8fbb-5d52d7c9cdee\\\", \r\n \\\"skillId\\\": 4330, \r\n \\\"skillName\\\": \\\"Further Reading -> JESIP Principles Poster (Material/PDF)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=e5782cef-c202-4457-b038-7deb7573a85c\\\", \r\n \\\"skillId\\\": 4331, \r\n \\\"skillName\\\": \\\"Further Reading -> JESIP PowerPoint (Material/PowerPoint)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=93aa0806-65f6-49c3-8e4e-0c059b23136c\\\", \r\n \\\"skillId\\\": 4332, \r\n \\\"skillName\\\": \\\"Further Reading -> JESIP Embedding Checklist (Material/Word)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=d78041de-b87a-4ebd-9e12-e0a690f4ab61\\\", \r\n \\\"skillId\\\": 4333, \r\n \\\"skillName\\\": \\\"Further Reading -> Using the JESIP app PowerPoint (Material/PowerPoint)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 780, \r\n \\\"name\\\": \\\"MoC12 - Lifts & Escalators\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=7bf1bcba-d3e8-486f-88a3-bf5a3a2d09d1\\\", \r\n \\\"skillId\\\": 4136, \r\n \\\"skillName\\\": \\\"Knowledge -> Lifts & Escalators (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=25f9c34e-c2db-454b-98ed-4dc7beb5a956\\\", \r\n \\\"skillId\\\": 4137, \r\n \\\"skillName\\\": \\\"Knowledge -> Lifts & Escalators - Extra (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 781, \r\n \\\"name\\\": \\\"MoC12 - Manual Handling\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=580f2351-4c06-4778-8a82-181a4e9aca19\\\", \r\n \\\"skillId\\\": 4314, \r\n \\\"skillName\\\": \\\"Knowledge -> Manual Handling (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 782, \r\n \\\"name\\\": \\\"MoC12 - Missing Persons\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=a59d7a77-e6c5-4b78-81f7-69ca16fc8b42\\\", \r\n \\\"skillId\\\": 4134, \r\n \\\"skillName\\\": \\\"Knowledge -> Missing Persons (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 783, \r\n \\\"name\\\": \\\"MoC12 - MTA\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=21c1ec94-18ac-408c-a19b-b4a46571a632\\\", \r\n \\\"skillId\\\": 4366, \r\n \\\"skillName\\\": \\\"Knowledge -> MTA: Confirmation Of Knowledge (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 784, \r\n \\\"name\\\": \\\"MoC12 - Operational Intelligence System\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=bf42b29b-4d2a-4fba-b47f-47a3108a557a\\\", \r\n \\\"skillId\\\": 4187, \r\n \\\"skillName\\\": \\\"Knowledge -> Hydrant Skills (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=0a614b9e-ef9d-4881-af4b-d5f05b35fac4\\\", \r\n \\\"skillId\\\": 4188, \r\n \\\"skillName\\\": \\\"Practical -> Navigating the OIS (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=32322863-87e4-47f3-a93d-0b1f4498a8f2\\\", \r\n \\\"skillId\\\": 4189, \r\n \\\"skillName\\\": \\\"Practical -> Adding and Amending Records (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=123fd791-90ca-4ab3-856a-e46ae93e6a36\\\", \r\n \\\"skillId\\\": 4190, \r\n \\\"skillName\\\": \\\"Practical -> Updating the OIS (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=2c29cc04-43a7-434a-ac95-0e8fef7dab6e\\\", \r\n \\\"skillId\\\": 4191, \r\n \\\"skillName\\\": \\\"Practical -> Carrying Out Inspections (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=80d9ed89-d9db-4099-8de9-3333f7b260b1\\\", \r\n \\\"skillId\\\": 4192, \r\n \\\"skillName\\\": \\\"Practical -> OIS and MDT Practical Demonstration (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 785, \r\n \\\"name\\\": \\\"MoC12 - Prisons\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=8b32c46d-4c7a-4e43-ba6d-f68f47291cad\\\", \r\n \\\"skillId\\\": 4260, \r\n \\\"skillName\\\": \\\"Knowledge -> Prisons (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 786, \r\n \\\"name\\\": \\\"MoC12 - Public Disorder\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=0e6c4c24-4942-41b9-84e3-3b2f9ffa1c18\\\", \r\n \\\"skillId\\\": 4055, \r\n \\\"skillName\\\": \\\"Knowledge -> Public Disorder (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 787, \r\n \\\"name\\\": \\\"MoC12 - Transport\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=59f6f88d-9799-422a-9253-6200f37ec45b\\\", \r\n \\\"skillId\\\": 4127, \r\n \\\"skillName\\\": \\\"Knowledge -> Railways & Metrolink (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 788, \r\n \\\"name\\\": \\\"MoC12 - Waste Management\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=e07888ad-6ddf-4a1e-8331-9298cbfd33f0\\\", \r\n \\\"skillId\\\": 4249, \r\n \\\"skillName\\\": \\\"Knowledge -> Waste Management Sites (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 789, \r\n \\\"name\\\": \\\"MoC3 - Breathing Apparatus - Quarterly Wear\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=d38f85a7-c246-4b37-a5f3-56606001bd63\\\", \r\n \\\"skillId\\\": 4250, \r\n \\\"skillName\\\": \\\"Practical -> BA Quarterly Wear (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 790, \r\n \\\"name\\\": \\\"MoC6 - Breathing Apparatus (Knowledge)\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=28296c75-c23b-4295-98f4-1f9bc390f1bc\\\", \r\n \\\"skillId\\\": 4178, \r\n \\\"skillName\\\": \\\"Knowledge -> Physiology & Psychology (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=9f602aec-0a85-4de1-8f85-e840e2919753\\\", \r\n \\\"skillId\\\": 4179, \r\n \\\"skillName\\\": \\\"Knowledge -> Welfare of BA Wearers (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=96c09929-5e77-469d-89f9-d4fac12e6827\\\", \r\n \\\"skillId\\\": 4180, \r\n \\\"skillName\\\": \\\"Knowledge -> Roles & Responsibilities (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=5048297f-f6bc-4b95-9ebe-1c2cd12efbe9\\\", \r\n \\\"skillId\\\": 4181, \r\n \\\"skillName\\\": \\\"Knowledge -> Operational Deployment (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=de09c101-5bc4-4a5e-b9a8-f580fa381f7c\\\", \r\n \\\"skillId\\\": 4182, \r\n \\\"skillName\\\": \\\"Knowledge -> Search & Rescue Within Structures (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=d03ebab1-9db6-4167-be81-ec74b11fad7b\\\", \r\n \\\"skillId\\\": 4183, \r\n \\\"skillName\\\": \\\"Knowledge -> Casualty Management Whilst Wearing BA (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=b5947d8f-1015-4207-919c-3964b69b913a\\\", \r\n \\\"skillId\\\": 4184, \r\n \\\"skillName\\\": \\\"Knowledge -> Emergency Procedures (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=bb3e6687-d696-46c5-8866-50a61ed9c990\\\", \r\n \\\"skillId\\\": 4185, \r\n \\\"skillName\\\": \\\"Knowledge -> Guidelines (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=21058822-15b8-4300-abe7-e6eeae4c8d3a\\\", \r\n \\\"skillId\\\": 4186, \r\n \\\"skillName\\\": \\\"Knowledge -> BA Set & Entry Control Board (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 791, \r\n \\\"name\\\": \\\"MoC6 - Casualty Care (Knowledge)\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=3691e2e4-8cac-4709-afb3-c410e676b0cc\\\", \r\n \\\"skillId\\\": 4354, \r\n \\\"skillName\\\": \\\"Knowledge -> Basic Life Support (PowerPoint) (Material/PowerPoint)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=d07df65d-ae11-480a-a7a6-89ae22b55bee\\\", \r\n \\\"skillId\\\": 4355, \r\n \\\"skillName\\\": \\\"Knowledge -> Basic Life Support: Confirmation Of Knowledge (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=dc7c0ed1-b717-485b-a826-f664bdb21b1a\\\", \r\n \\\"skillId\\\": 4356, \r\n \\\"skillName\\\": \\\"Knowledge -> High Performance CPR (PowerPoint) (Material/PowerPoint)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=3c70cafb-faad-42fd-b9e0-48059e2894e7\\\", \r\n \\\"skillId\\\": 4357, \r\n \\\"skillName\\\": \\\"Knowledge -> High Performance CPR: Confirmation Of Knowledge (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=c74c10a3-8a24-4fbf-bc98-d7421b295b87\\\", \r\n \\\"skillId\\\": 4358, \r\n \\\"skillName\\\": \\\"Knowledge -> Infection Control (PowerPoint) (Material/PowerPoint)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=f5c232e2-fd1c-46d2-bc30-0aab38fcbbf1\\\", \r\n \\\"skillId\\\": 4359, \r\n \\\"skillName\\\": \\\"Knowledge -> Infection Control: Confirmation Of Knowledge (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=1065094f-17f4-4a87-ac48-5cee5d9c24ba\\\", \r\n \\\"skillId\\\": 4360, \r\n \\\"skillName\\\": \\\"Knowledge -> Patient Confidentiality (PowerPoint) (Material/PowerPoint)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=119f6804-8815-40fc-bf9b-e05d99a481d1\\\", \r\n \\\"skillId\\\": 4361, \r\n \\\"skillName\\\": \\\"Knowledge -> Patient Confidentiality: Confirmation Of Knowledge (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=02766f5f-b4a8-4981-9097-e2bf276a2cda\\\", \r\n \\\"skillId\\\": 4362, \r\n \\\"skillName\\\": \\\"Knowledge -> Pulse Oximeter (PowerPoint) (Material/PowerPoint)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=ee3c0612-7074-468e-b657-b39515ae8b39\\\", \r\n \\\"skillId\\\": 4363, \r\n \\\"skillName\\\": \\\"Knowledge -> Pulse Oximeter: Confirmation Of Knowledge (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=6e0075ca-1e43-4989-b42d-0c621acdfb51\\\", \r\n \\\"skillId\\\": 4364, \r\n \\\"skillName\\\": \\\"Knowledge -> Lifepak 1000 AED (PowerPoint) (Material/PowerPoint)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=5d6b0720-2ff6-4a69-8aeb-768d61cbe3eb\\\", \r\n \\\"skillId\\\": 4365, \r\n \\\"skillName\\\": \\\"Knowledge -> Lifepak 1000 AED: Confirmation Of Knowledge (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 792, \r\n \\\"name\\\": \\\"MoC6 - Casualty Care (Practical)\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=d18be653-7abd-4d7c-829d-a495d7bbbb05\\\", \r\n \\\"skillId\\\": 4060, \r\n \\\"skillName\\\": \\\"Practical -> Basic Life Support (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=ba2c3bcb-2bbc-4e2b-82b5-86bcaa617736\\\", \r\n \\\"skillId\\\": 4061, \r\n \\\"skillName\\\": \\\"Practical -> High Performance CPR (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 793, \r\n \\\"name\\\": \\\"MoC6 - Fires and Firefighting - Science\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=d4935535-6933-4f5b-910e-85722c4858a2\\\", \r\n \\\"skillId\\\": 4193, \r\n \\\"skillName\\\": \\\"Knowledge -> Science (PowerPoint) (Material/PowerPoint)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=a85fc3b8-cf4b-467d-bf97-a76e7edb3c36\\\", \r\n \\\"skillId\\\": 4194, \r\n \\\"skillName\\\": \\\"Knowledge -> Science: Confirmation Of Knowledge (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 794, \r\n \\\"name\\\": \\\"MoC6 - Fires and Firefighting - Tactics\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=2d731f37-2aef-4027-b47f-c22dfd128c7a\\\", \r\n \\\"skillId\\\": 4043, \r\n \\\"skillName\\\": \\\"Knowledge -> Tactical Ventilation (PowerPoint) (Material/PowerPoint)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=28cacaec-efab-4ddb-af21-a5039c3a6133\\\", \r\n \\\"skillId\\\": 4044, \r\n \\\"skillName\\\": \\\"Knowledge -> Tac Vent: Confirmation Of Knowledge (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=20a72590-0131-4668-ab26-cc44b01181c1\\\", \r\n \\\"skillId\\\": 4045, \r\n \\\"skillName\\\": \\\"Practical -> Tactics: Practical Drill (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 795, \r\n \\\"name\\\": \\\"MoC6 - High Rise Buildings Over 18m\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=623719e5-2de0-4d97-9d58-b2d753924f48\\\", \r\n \\\"skillId\\\": 4257, \r\n \\\"skillName\\\": \\\"Knowledge -> High Rise Buildings Over 18m (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=98a5ceec-51eb-4924-aa0b-6f428f7ede95\\\", \r\n \\\"skillId\\\": 4258, \r\n \\\"skillName\\\": \\\"Practical -> High Rise Buildings Over 18m: Practical Drill (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=4b18c36f-fb83-460a-97a6-f51a87d4a2b5\\\", \r\n \\\"skillId\\\": 4259, \r\n \\\"skillName\\\": \\\"Practical -> Complete SSRI (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 796, \r\n \\\"name\\\": \\\"MoC6 - Incident Command\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=342b85d7-eac9-415b-acdc-42ac50392864\\\", \r\n \\\"skillId\\\": 4306, \r\n \\\"skillName\\\": \\\"Knowledge -> Incident Command (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=44e63611-1dbb-4844-95fc-59a6abd2a7f8\\\", \r\n \\\"skillId\\\": 4307, \r\n \\\"skillName\\\": \\\"Practical -> Demonstrate Practical Command Skills (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 797, \r\n \\\"name\\\": \\\"MoC6 - Ladders\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=5c16c39f-4ce3-4423-a959-0a13e0161a0b\\\", \r\n \\\"skillId\\\": 4056, \r\n \\\"skillName\\\": \\\"Knowledge -> Ladders (PowerPoint) (Material/PowerPoint)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=ed28f3e2-c860-46cc-8845-472c90c8a4d3\\\", \r\n \\\"skillId\\\": 4057, \r\n \\\"skillName\\\": \\\"Knowledge -> Ladders: Confirmation Of Knowledge (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=b053a9d3-3cf4-47f7-ac0c-2d542c68df5b\\\", \r\n \\\"skillId\\\": 4058, \r\n \\\"skillName\\\": \\\"Practical -> 13.5m, 9m & Triple Ex (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=35ddaf16-6d2a-43e8-8e80-f9c5c37cee2b\\\", \r\n \\\"skillId\\\": 4059, \r\n \\\"skillName\\\": \\\"Practical -> Roof Ladder, Safety Equipment & Transition (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 798, \r\n \\\"name\\\": \\\"MoC6 - Rope Working\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=28c4dfff-04e9-4ce9-b6e5-8cee9bf81626\\\", \r\n \\\"skillId\\\": 4175, \r\n \\\"skillName\\\": \\\"Knowledge -> Rope Working (PowerPoint) (Material/PowerPoint)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=2d7c3e33-7537-4eb4-a09c-80b1b9e29b43\\\", \r\n \\\"skillId\\\": 4176, \r\n \\\"skillName\\\": \\\"Knowledge -> Rope Working: Confirmation Of Knowledge (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=b89c40c0-f300-4a2b-816c-4d7730d14a01\\\", \r\n \\\"skillId\\\": 4177, \r\n \\\"skillName\\\": \\\"Practical -> Twin Line Working OR Working & Safety Line (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 799, \r\n \\\"name\\\": \\\"MoC6 - RTC & 6 Phases\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=c2bb9d10-d0f8-49bd-b175-2dfce0ff2b6e\\\", \r\n \\\"skillId\\\": 4128, \r\n \\\"skillName\\\": \\\"Knowledge -> RTC 6 Phases (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=2a571604-eb7b-4773-9de5-034872088104\\\", \r\n \\\"skillId\\\": 4129, \r\n \\\"skillName\\\": \\\"Knowledge -> RTC & Traffic Management (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=9fd09088-b12a-4ab9-8550-00d6a9b7e467\\\", \r\n \\\"skillId\\\": 4130, \r\n \\\"skillName\\\": \\\"Practical -> RTC 6 Phases: Practical Drill (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 800, \r\n \\\"name\\\": \\\"MoC6 - Safe Working at Height\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=691860b2-0d9e-4ea4-b7da-be53acb27aec\\\", \r\n \\\"skillId\\\": 4284, \r\n \\\"skillName\\\": \\\"Knowledge -> Safe Working at Height (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=e8b94ec3-de00-4a34-babe-f47349e0ca55\\\", \r\n \\\"skillId\\\": 4285, \r\n \\\"skillName\\\": \\\"Practical -> Safe Working at Height: Practical Drill (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 801, \r\n \\\"name\\\": \\\"MoC6 - Water Incidents\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=f84acfcf-6250-485b-aac3-6427c016f1cf\\\", \r\n \\\"skillId\\\": 4304, \r\n \\\"skillName\\\": \\\"Knowledge -> Water Incidents (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=7957a25d-0182-4bca-9717-3210ef7c923b\\\", \r\n \\\"skillId\\\": 4305, \r\n \\\"skillName\\\": \\\"Practical -> Water Incidents: Practical (Material/Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 802, \r\n \\\"name\\\": \\\"Ops and Safety Alerts\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=20a005f2-df5a-49b5-8ab9-d81b97775571\\\", \r\n \\\"skillId\\\": 4196, \r\n \\\"skillName\\\": \\\"Ops Alerts -> 13.2020 Completion and Submission of OPS 25 (Analytical Risk Assessment) (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=062aeb9d-b182-41ef-a0d1-7a3faa258f3a\\\", \r\n \\\"skillId\\\": 4197, \r\n \\\"skillName\\\": \\\"Ops Alerts -> 12.2020 Changes to Requesting CCTV from Frontline Appliances and Air Unit (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=478d439b-009f-4e0f-bfc4-8b48af30b972\\\", \r\n \\\"skillId\\\": 4198, \r\n \\\"skillName\\\": \\\"Ops Alerts -> 11.2020 SUSPENSION OF PRE-ALERTS FOR TRIAL PERIOD (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=52cb9ddd-9ab8-4a7b-b324-166ebccfc4b5\\\", \r\n \\\"skillId\\\": 4199, \r\n \\\"skillName\\\": \\\"Ops Alerts -> 10.2020- Firefighting Tactics and Building Fire Behaviour (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=3f0e7334-e7f4-48c3-ad01-8a8560bc9af7\\\", \r\n \\\"skillId\\\": 4200, \r\n \\\"skillName\\\": \\\"Ops Alerts -> 09.2020- GMFRS Electronic Personal Dosimeter Recalibration Programme (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=e38c2dc2-9842-4e28-9a9d-a70592a4e95b\\\", \r\n \\\"skillId\\\": 4201, \r\n \\\"skillName\\\": \\\"Ops Alerts -> 08.2020- Coronavirus (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=139f3472-f621-4aee-bcd5-41d28fbc39e8\\\", \r\n \\\"skillId\\\": 4202, \r\n \\\"skillName\\\": \\\"Ops Alerts -> 84.2019 - MiLearning - Launch of the Maintenance of Competence Index and Supporting MoC Index Guidance for Operational Crews (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=9cfdf046-dd9b-4e37-8650-c69115525565\\\", \r\n \\\"skillId\\\": 4203, \r\n \\\"skillName\\\": \\\"Ops Alerts -> 83.2019- National Mutual and Recharge Protocol update Nov 2019 (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=bb86f59e-0353-4471-9673-6a3749c3f2a3\\\", \r\n \\\"skillId\\\": 4204, \r\n \\\"skillName\\\": \\\"Ops Alerts -> 82.2019- Wildfire Reporting (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=c6833ac7-44ba-4946-a2c9-0989b4e0dfb7\\\", \r\n \\\"skillId\\\": 4205, \r\n \\\"skillName\\\": \\\"Ops Alerts -> 81.2019- Publication of DEFRA 2019 Flood Rescue Concept of Operations (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=20e1584f-0c98-49e2-8bf3-143a1f4b4b7e\\\", \r\n \\\"skillId\\\": 4206, \r\n \\\"skillName\\\": \\\"Ops Alerts -> 80.2019 - CBRN(e) Mass Decontamination assurance process 2019-20 (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=51cf8e88-818a-4788-a9b4-d32eafce71cf\\\", \r\n \\\"skillId\\\": 4207, \r\n \\\"skillName\\\": \\\"Ops Alerts -> 79.2019 Charging of Iphones on Appliances and Station (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=a274f6c6-24bf-44f8-9832-492261b8ad88\\\", \r\n \\\"skillId\\\": 4208, \r\n \\\"skillName\\\": \\\"Ops Alerts -> 77.2019 Temporary Promoted Crew Managers Driving (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=90ddb0a8-4361-4bf8-beae-a33e8b4269ee\\\", \r\n \\\"skillId\\\": 4209, \r\n \\\"skillName\\\": \\\"Ops Alerts -> 76.2019 Drager Parat Training Smoke Hood (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=297ea96b-d482-45e0-b768-b5a6b54cbf9c\\\", \r\n \\\"skillId\\\": 4210, \r\n \\\"skillName\\\": \\\"Ops Alerts -> 74.2019 Inclusion of Fire Hydrant Test During Operational Intelligence System Inspections (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=45e40fed-51f0-4874-a6ec-99f203bca260\\\", \r\n \\\"skillId\\\": 4211, \r\n \\\"skillName\\\": \\\"Ops Alerts -> 75.2019 Procedure to Request Use of Training Automatic External Defibrillators (AED's) (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=afaf5a69-20f0-4df4-b61c-e4a6ada12478\\\", \r\n \\\"skillId\\\": 4212, \r\n \\\"skillName\\\": \\\"Ops Alerts -> 73.2019 - Clarification of Crewing and Mobilising to Rescues from Water (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=b0f8cb5a-7f0a-4181-9ce3-da1bc9369801\\\", \r\n \\\"skillId\\\": 4213, \r\n \\\"skillName\\\": \\\"Ops Alerts -> 72.2019 Crewing of Aerial Appliance Stations and the use of the Home Station Appliance (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=cc54e987-7a77-4bb3-846f-4ff9bb7aafdb\\\", \r\n \\\"skillId\\\": 4214, \r\n \\\"skillName\\\": \\\"Ops Alerts -> 71.2019 Information Note No.51 - CBRN(e) - FRS Decontamination Support to Police Operation (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=7122d829-acd1-43c3-85b7-0ba62dc9c79d\\\", \r\n \\\"skillId\\\": 4215, \r\n \\\"skillName\\\": \\\"Ops Alerts -> 68.2019 Information Note No.47 - Health and Safety Notifications - AIDE MEMOIR (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=a048b4e8-44d9-4822-bb66-27e3a71d3e20\\\", \r\n \\\"skillId\\\": 4216, \r\n \\\"skillName\\\": \\\"Ops Alerts -> 67.2019 RVP Move - Manchester Airport (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=9440edb7-f07c-49c3-a66d-ea046b66a1da\\\", \r\n \\\"skillId\\\": 4217, \r\n \\\"skillName\\\": \\\"Ops Alerts -> 66.2019 DNA (Deoxyribonucleic acid) Collection Kit (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=5131cb57-047b-4d35-98c5-8ab8ce71f0a6\\\", \r\n \\\"skillId\\\": 4218, \r\n \\\"skillName\\\": \\\"Ops Alerts -> Ops Alert: 62.2019 Bonfire Period 2019 (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=f709faf9-ea77-4847-851d-05a5c8c49852\\\", \r\n \\\"skillId\\\": 4219, \r\n \\\"skillName\\\": \\\"Safety Alerts -> 01.2020 Safe Stowage of CATU Clamp in Metrolink Bag (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=a9e41169-103a-4502-a1f5-6136df2f79b5\\\", \r\n \\\"skillId\\\": 4220, \r\n \\\"skillName\\\": \\\"Safety Alerts -> 17.2019 - Clinical Information - Airway Management (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=d5369e73-048e-4965-844a-5fb0dcd3e634\\\", \r\n \\\"skillId\\\": 4221, \r\n \\\"skillName\\\": \\\"Safety Alerts -> 16.2019 Photo Driving Licenses (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=b667ab3a-c299-4405-9e80-94a3bdde1c1e\\\", \r\n \\\"skillId\\\": 4222, \r\n \\\"skillName\\\": \\\"Safety Alerts -> 15.2019 Scanning Capability on Motorola Personal Handheld Radio\\u2019s (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=339a6798-2cc9-49b3-8f42-fe1965e3df18\\\", \r\n \\\"skillId\\\": 4223, \r\n \\\"skillName\\\": \\\"Safety Alerts -> 14.2019 Charging of IPhones on Appliances (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=d092ebee-e849-4acc-a255-a71299d5eddc\\\", \r\n \\\"skillId\\\": 4224, \r\n \\\"skillName\\\": \\\"Safety Alerts -> 13.2019 Crowded Places - Increased Vigilance (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=454d28e1-8533-431d-ab7b-fa0053562923\\\", \r\n \\\"skillId\\\": 4225, \r\n \\\"skillName\\\": \\\"Safety Alerts -> 12.2019 Reduced National Threat Level - Substantial.pdf (Material/Ops Alert)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 803, \r\n \\\"name\\\": \\\"TRU - MoC3 - Rope Operator / Supervisor\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=a618f63b-1584-44dd-ba17-ec3f36d94c5c\\\", \r\n \\\"skillId\\\": 4076, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU RRO K1 Technical Knowledge (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=b4b79edc-688d-47a5-903f-8664928f7ed7\\\", \r\n \\\"skillId\\\": 4077, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU RRO K2 Equipment Carried (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=9ac30897-5045-432f-98b8-b44ce6fe5c57\\\", \r\n \\\"skillId\\\": 4078, \r\n \\\"skillName\\\": \\\"Practical -> TRU RRO KP1 Rescue Management Systems (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=1ad592ec-7355-42f4-a168-e3596d0b7200\\\", \r\n \\\"skillId\\\": 4079, \r\n \\\"skillName\\\": \\\"Practical -> TRU RRO KP2 Anchors and Belay Systems (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=13851bfb-ce23-411d-a915-e57d0a9e94ec\\\", \r\n \\\"skillId\\\": 4080, \r\n \\\"skillName\\\": \\\"Practical -> TRU RRO KP3 Raising and Lowering Systems (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=e09ddcaa-063c-4281-93f6-15ed2f120dd6\\\", \r\n \\\"skillId\\\": 4081, \r\n \\\"skillName\\\": \\\"Practical -> TRU RRO KP4 Stretcher Systems (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=6ece86ad-3097-4e15-9548-25cb92f406e0\\\", \r\n \\\"skillId\\\": 4082, \r\n \\\"skillName\\\": \\\"Practical -> TRU RRO KP5 Tensioning Systems (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=b4d77aed-fa68-41f8-b783-17b73479fe3c\\\", \r\n \\\"skillId\\\": 4083, \r\n \\\"skillName\\\": \\\"Practical -> TRU RRO KP6 Guide lines and Cableways (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=ce94252f-ef08-4e9a-aabd-e4b57cf965da\\\", \r\n \\\"skillId\\\": 4084, \r\n \\\"skillName\\\": \\\"Practical -> TRU RRO KP7 Difficult Access and Egress (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=3091b4aa-e153-4b57-aea1-d1230e7441dd\\\", \r\n \\\"skillId\\\": 4085, \r\n \\\"skillName\\\": \\\"Practical -> TRU RRO KP8 SWAH & Absailing (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=c1dfc241-d585-48d4-8158-807d4ebf68b2\\\", \r\n \\\"skillId\\\": 4086, \r\n \\\"skillName\\\": \\\"Practical -> TRU RRO KP9 Scaf Resuce Pack (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=431893f8-a993-45cc-8267-4b085f10e531\\\", \r\n \\\"skillId\\\": 4087, \r\n \\\"skillName\\\": \\\"Practical -> TRU RRO KP10 Megapod (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 804, \r\n \\\"name\\\": \\\"TRU - MoC6 - Breaking and Breeching\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=b1f80501-308f-475b-879a-3c12c4871d4f\\\", \r\n \\\"skillId\\\": 4102, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU BB K1 Dirty Breech (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=cb28892b-0a63-490f-bac6-d6acbc782552\\\", \r\n \\\"skillId\\\": 4103, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU BB K2 Clean Breech (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=3a319d3a-dc66-461e-ba70-80430075bcb7\\\", \r\n \\\"skillId\\\": 4104, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU BB K3 Step Cut (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=f4583407-6f10-4d9e-baea-e5002e59a97e\\\", \r\n \\\"skillId\\\": 4105, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU BB K4 Relief Cut and Stitch Drilling (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=5c05bfe8-02eb-424e-a716-068d3b599fa2\\\", \r\n \\\"skillId\\\": 4106, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU BB K5 Coring and Gas Sampling (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=249482d6-670b-49cc-9a24-275d92fa77e6\\\", \r\n \\\"skillId\\\": 4107, \r\n \\\"skillName\\\": \\\"Practical -> TRU BB P1 Risk Assessment and Correct PPE (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=f3c6d72c-1d79-4ee8-aefc-7d9f5c6ce112\\\", \r\n \\\"skillId\\\": 4108, \r\n \\\"skillName\\\": \\\"Practical -> TRU BB P2 Dirty Breech (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=7e733171-0529-42db-ac48-a68b88d22d86\\\", \r\n \\\"skillId\\\": 4109, \r\n \\\"skillName\\\": \\\"Practical -> TRU BB P3 Clean Breech (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=1324f950-19a5-4d18-8523-2e132ce59f5a\\\", \r\n \\\"skillId\\\": 4110, \r\n \\\"skillName\\\": \\\"Practical -> TRU BB P4 Step Cut (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=7b1d4988-df3d-467f-b57b-439817100d18\\\", \r\n \\\"skillId\\\": 4111, \r\n \\\"skillName\\\": \\\"Practical -> TRU BB P5 Relief Cut and Stitch Roll (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=f17e8a6a-e9a2-44ad-8e4c-7774ce52e72b\\\", \r\n \\\"skillId\\\": 4112, \r\n \\\"skillName\\\": \\\"Practical -> TRU BB P6 Coring and Gas Sampling (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 805, \r\n \\\"name\\\": \\\"TRU - MoC6 - Breaking and Breeching - Tool Operation\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=ecaa29cd-4c5c-4444-bc2f-3c577703432e\\\", \r\n \\\"skillId\\\": 4114, \r\n \\\"skillName\\\": \\\"Practical -> TRU BT P1 Hydraulic Power Pack (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=1596bfe9-0496-4990-aabf-0e00fe045505\\\", \r\n \\\"skillId\\\": 4115, \r\n \\\"skillName\\\": \\\"Practical -> TRU BT P2 STIHL Saw (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=f4f92fb9-804a-46fd-8791-b75282697812\\\", \r\n \\\"skillId\\\": 4116, \r\n \\\"skillName\\\": \\\"Practical -> TRU BT P3 Honda Generator (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=b8cee67e-e88a-404c-9b44-1951766b4bc0\\\", \r\n \\\"skillId\\\": 4117, \r\n \\\"skillName\\\": \\\"Practical -> TRU BT P4 Angle Grinder (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=b44518c3-5ee1-4d84-87ba-e6e33bb14d69\\\", \r\n \\\"skillId\\\": 4118, \r\n \\\"skillName\\\": \\\"Practical -> TRU BT P5 Stanley Chainsaw DS11 (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=296efaaf-e2da-4f97-87d6-c42956c1257e\\\", \r\n \\\"skillId\\\": 4119, \r\n \\\"skillName\\\": \\\"Practical -> TRU BT P6 Stanley Cut Off Saw CO25 (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=4d228a3a-6150-4a1f-96f4-3396269f0b21\\\", \r\n \\\"skillId\\\": 4120, \r\n \\\"skillName\\\": \\\"Practical -> TRU BT P7 Stanley Breaker BR67 (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=44eaea4d-cb9f-4154-97a5-232e3d4de6ae\\\", \r\n \\\"skillId\\\": 4121, \r\n \\\"skillName\\\": \\\"Practical -> TRU BT P8 Stabley Chipping Hammer (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=02e49e0f-3f59-4b98-8d34-e9632f18d968\\\", \r\n \\\"skillId\\\": 4122, \r\n \\\"skillName\\\": \\\"Practical -> TRU BT P9 Hilti Coring Drill DD120 (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=d49f6627-08ba-4068-b14d-f8fee990d6bd\\\", \r\n \\\"skillId\\\": 4123, \r\n \\\"skillName\\\": \\\"Practical -> TRU BT P10 Hilti Drill TE76 (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=95bce55b-600d-43d9-a64f-d9846ed0f7cb\\\", \r\n \\\"skillId\\\": 4124, \r\n \\\"skillName\\\": \\\"Practical -> TRU BT P11 Hilti Drill TE2 (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=6dca3a94-148b-4b58-bf54-a3cb78a8ea63\\\", \r\n \\\"skillId\\\": 4125, \r\n \\\"skillName\\\": \\\"Practical -> TRU BT P12 Hilti Re-bar Detector PS20 (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 806, \r\n \\\"name\\\": \\\"TRU - MoC6 - Chainsaw\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=b34bac37-5801-474b-8fa7-0c0bc8caa20e\\\", \r\n \\\"skillId\\\": 4163, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU CO K1 Chainsaw SOPS (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=56c0fe6b-d74c-4b89-88dd-7420e9e2b6ea\\\", \r\n \\\"skillId\\\": 4164, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU CO K2 Correct PPE (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=19fd1140-371d-47a1-8262-675eee1f74f8\\\", \r\n \\\"skillId\\\": 4165, \r\n \\\"skillName\\\": \\\"Practical -> TRU CO P1 Safety and Maintenence of all Chainsaws (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=0d66a6d4-5bb3-409e-bf72-b1801b7988fc\\\", \r\n \\\"skillId\\\": 4166, \r\n \\\"skillName\\\": \\\"Practical -> TRU CO P2 10 Points of Safety (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=45c8ecda-d483-4412-b0d3-8a9921a08277\\\", \r\n \\\"skillId\\\": 4167, \r\n \\\"skillName\\\": \\\"Practical -> TRU CO P3 Remove a Trapped Saw (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=ccc17050-96ca-427e-ba67-b9a69bd0c546\\\", \r\n \\\"skillId\\\": 4168, \r\n \\\"skillName\\\": \\\"Practical -> TRU CO P4 Cuts Under Compression, Fixed at one or both ends (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=11ca5858-32d7-4c22-ba85-bc91d2fec926\\\", \r\n \\\"skillId\\\": 4169, \r\n \\\"skillName\\\": \\\"Practical -> TRU CO P5 Cuts Under Tension, Fixed at one /Both ends (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 807, \r\n \\\"name\\\": \\\"TRU - MoC6 - Confined Space\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=e7fa0130-ea19-4853-9a93-439be22a805c\\\", \r\n \\\"skillId\\\": 4291, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU CS K1 Confined Space SOPS (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=720332a7-1410-4393-a994-8fdc110a745c\\\", \r\n \\\"skillId\\\": 4292, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU CS K2 Safe Systems of Work (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=981266f7-ccc7-45a2-b5c0-481451856795\\\", \r\n \\\"skillId\\\": 4293, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU CS K3 Air Monitoring Equipment (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=6dd62e35-bd1b-4a16-b541-3a959e649fca\\\", \r\n \\\"skillId\\\": 4294, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU CS K4 Escape Sets (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=b9e73d7c-39d1-4bd9-82c3-0d20af73d5f2\\\", \r\n \\\"skillId\\\": 4295, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU CS K5 Lace Equipment (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=e0dcd9ce-f46e-4a87-910c-898d7f105a76\\\", \r\n \\\"skillId\\\": 4296, \r\n \\\"skillName\\\": \\\"Practical -> TRU CS P1 Entry Control Board and Risk Assessments (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=268d37fe-fe8e-468e-864e-65e3a24ac06f\\\", \r\n \\\"skillId\\\": 4297, \r\n \\\"skillName\\\": \\\"Practical -> TRU CS P2 Air Monitoring Equipment (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=daed174b-4e20-46cf-88c9-e274f9fa1b4e\\\", \r\n \\\"skillId\\\": 4298, \r\n \\\"skillName\\\": \\\"Practical -> TRU CS P3 Forced Air Resuscitator (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=4cbd8217-2883-4058-939f-4d0be827a1c2\\\", \r\n \\\"skillId\\\": 4299, \r\n \\\"skillName\\\": \\\"Practical -> TRU CS P4 Escape Sets (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=4d9b9853-dce9-4c9d-8ba2-ac20383b4815\\\", \r\n \\\"skillId\\\": 4300, \r\n \\\"skillName\\\": \\\"Practical -> TRU CS P5 ABTEC Tripod and Extension Arm (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=5b771435-0fc0-4cf9-823a-41bff8b77fa3\\\", \r\n \\\"skillId\\\": 4301, \r\n \\\"skillName\\\": \\\"Practical -> TRU CS P6 UCL Digital and G Saver Winch (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=bfb3c819-990a-4b66-b628-24388b09568d\\\", \r\n \\\"skillId\\\": 4302, \r\n \\\"skillName\\\": \\\"Practical -> TRU CS P7 Conspace Comms Kit (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=4e51a2ac-6182-47fc-9e3c-d7640892577b\\\", \r\n \\\"skillId\\\": 4303, \r\n \\\"skillName\\\": \\\"Practical -> TRU CS P8 110V Electric Fans and Ducting (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 808, \r\n \\\"name\\\": \\\"TRU - MoC6 - Enhanced Safety Team\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=484341da-3f1a-490d-bcaa-f0104c786ddc\\\", \r\n \\\"skillId\\\": 4264, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU EST K1 State Proactive Tasks (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=a9114214-3067-42d6-b8df-7314ed058124\\\", \r\n \\\"skillId\\\": 4265, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU EST K2 State Reactive tasks (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=eee69e69-3cf6-4c9a-9665-a036272017c3\\\", \r\n \\\"skillId\\\": 4266, \r\n \\\"skillName\\\": \\\"Practical -> TRU EST P1 Demonstrate Extrication Techniques (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 809, \r\n \\\"name\\\": \\\"TRU - MoC6 - Lifting and Moving\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=32400772-569b-4541-b33b-3aee93ba70f8\\\", \r\n \\\"skillId\\\": 4237, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU LM K1 Lifting and Moving SOPS (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=413bd16d-4fd4-4307-b6f7-acdbb8701f0a\\\", \r\n \\\"skillId\\\": 4238, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU LM K2 Anchor Systems (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=8d337399-7ccd-48b9-bbd9-55bcd20506cf\\\", \r\n \\\"skillId\\\": 4239, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU LM K3 Bi-Pod (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=4ebe0b8f-a02b-4b02-9895-7b8741740351\\\", \r\n \\\"skillId\\\": 4240, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU LM K4 Tri-Pod (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=16d500aa-09d0-4703-b6b2-355e06a07fe1\\\", \r\n \\\"skillId\\\": 4241, \r\n \\\"skillName\\\": \\\"Practical -> TRU LM P1 Anchor Systems (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=244098d8-5a5b-454a-a4ad-25277609145a\\\", \r\n \\\"skillId\\\": 4242, \r\n \\\"skillName\\\": \\\"Practical -> TRU LM P2 Bi-Pod (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=12dee526-54ec-42d1-9755-657eddfd2df7\\\", \r\n \\\"skillId\\\": 4243, \r\n \\\"skillName\\\": \\\"Practical -> TRU LM P3 Tri-Pod (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=e443a6f0-1cbe-4503-87e8-37bb5828fe8c\\\", \r\n \\\"skillId\\\": 4244, \r\n \\\"skillName\\\": \\\"Practical -> TRU LM P4 Chain Hoists (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=980a0216-69f2-4130-8c82-bcf2ffeefe0e\\\", \r\n \\\"skillId\\\": 4245, \r\n \\\"skillName\\\": \\\"Practical -> TRU LM P5 Tirfor and Snatch Box (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=5b41db47-1b2d-4f59-954b-d4fefb430440\\\", \r\n \\\"skillId\\\": 4246, \r\n \\\"skillName\\\": \\\"Practical -> TRU LM P6 Rope Systems (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=82320833-42fa-4656-bf1f-a0e3e9fa1d72\\\", \r\n \\\"skillId\\\": 4247, \r\n \\\"skillName\\\": \\\"Practical -> TRU LM P7 Air Lifting Systems (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 810, \r\n \\\"name\\\": \\\"TRU - MoC6 - Paratech Shoring\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=f9851c70-5aa1-47ff-affe-f40b57b589fb\\\", \r\n \\\"skillId\\\": 4063, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU PS K1 Shoring SOPS (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=820a38c7-fcc4-4740-9730-0688a02efe28\\\", \r\n \\\"skillId\\\": 4064, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU PS K2 Equipment- Length/Strength etc (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=d7407a72-d148-416c-92df-5bed92d7003f\\\", \r\n \\\"skillId\\\": 4065, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU PS K3 Construction- Headers/Footers/Bracing (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=29571b83-92ea-4869-85f9-0689e4959a97\\\", \r\n \\\"skillId\\\": 4066, \r\n \\\"skillName\\\": \\\"Practical -> TRU PS P1 T Spot Shore (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=cf01d5cb-5ea4-4ca8-8f3f-25577399c416\\\", \r\n \\\"skillId\\\": 4067, \r\n \\\"skillName\\\": \\\"Practical -> TRU PS P2 Vertical Shore (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=2e4ff78e-f6df-4ef5-8aff-2f7681023ed5\\\", \r\n \\\"skillId\\\": 4068, \r\n \\\"skillName\\\": \\\"Practical -> TRU PS P3 Horizontal Shore (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=f9f1840a-32f3-4687-8fa5-b2b03bd52946\\\", \r\n \\\"skillId\\\": 4069, \r\n \\\"skillName\\\": \\\"Practical -> TRU PS P4 Window/Door Shore (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=a949b6e1-1e15-4edc-9460-0f1bd2f77fa1\\\", \r\n \\\"skillId\\\": 4070, \r\n \\\"skillName\\\": \\\"Practical -> TRU PS P5 Raker (45') Shore (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=4dd84707-4214-43dc-981e-7052eacba5b7\\\", \r\n \\\"skillId\\\": 4071, \r\n \\\"skillName\\\": \\\"Practical -> TRU PS P6 Adhoc (60') Raker (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=a6e48696-86b4-4178-aa9a-de73e2e49075\\\", \r\n \\\"skillId\\\": 4072, \r\n \\\"skillName\\\": \\\"Practical -> TRU PS P7 Sloping Floor Shore- Solid/Soft Ground (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 811, \r\n \\\"name\\\": \\\"TRU - Moc6 - Scene and structural Assessment\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=c8df191d-f1b8-4edb-971b-b2dd1423aa7f\\\", \r\n \\\"skillId\\\": 4267, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU SSA K1 Scene and Structural Assessment 001 (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=7bc68165-5d04-4647-ac39-2e342c2f0b19\\\", \r\n \\\"skillId\\\": 4268, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU SSA K2 Mapping Operations 002 (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=fa9dbf16-fda0-4872-bc44-51ebbbfe0a48\\\", \r\n \\\"skillId\\\": 4269, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU SSA K3 Reporting and Recording Information 003 (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=fd04de2d-706f-4bfc-984b-8e934cf829fd\\\", \r\n \\\"skillId\\\": 4270, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU SSA K4 Collapse Patterns 004 (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=7dd457a6-05fd-4c56-bc23-3c5188af9318\\\", \r\n \\\"skillId\\\": 4271, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU SSA k5 Structural Triage 005 (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=279cc096-9768-47b9-b826-f2228808ff88\\\", \r\n \\\"skillId\\\": 4272, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU SSA K6 Structural Monitoring 006 (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=a6827c89-5753-42cf-9dc0-e5c15845b6c1\\\", \r\n \\\"skillId\\\": 4273, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU SSA K7 Types of Construction 007 (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=6f2c6a5f-784b-4687-bace-59110f7f557e\\\", \r\n \\\"skillId\\\": 4274, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU SSA K8 Structural Elements 008 (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=99405eb1-45ed-41b2-bced-014fce3b001c\\\", \r\n \\\"skillId\\\": 4275, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU SSA K9 Structural Loads 009 (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=c7622eb4-7f36-4783-9c27-e88326c41ae3\\\", \r\n \\\"skillId\\\": 4276, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU SSA K10 Signs of Collapse 010 (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=091c7dea-7e2f-4c03-b9d1-cda9e9e24827\\\", \r\n \\\"skillId\\\": 4277, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU SSA K11 Causes of Structural Failure 011 (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 812, \r\n \\\"name\\\": \\\"TRU - MoC6 - Technical Search\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=d17d48d2-676e-42e6-9bdb-2183d6cc0146\\\", \r\n \\\"skillId\\\": 4315, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU TS K1 Six Stages of Rescue (Repeat) (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=022bb7a7-484e-4095-86f4-f37144e0c16f\\\", \r\n \\\"skillId\\\": 4316, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU TS K2 Audible Visual and Hasty Search (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=db67245d-e23c-4294-8e40-b949369e81df\\\", \r\n \\\"skillId\\\": 4317, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU TS K3 Canine Search Teams (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=6c0a8835-2737-41e4-916d-628c7af8c1ae\\\", \r\n \\\"skillId\\\": 4318, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU TS K4 Role of the search manager (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=9014adc9-9a32-4e2b-8640-478a63447ff2\\\", \r\n \\\"skillId\\\": 4319, \r\n \\\"skillName\\\": \\\"Practical -> TRU TS P1 Map a void using search equipment (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=a2f9f862-0e1d-4467-9f68-7fbf5afdebf4\\\", \r\n \\\"skillId\\\": 4320, \r\n \\\"skillName\\\": \\\"Practical -> TRU TS P2 Maintenence of search equipment (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=53f9d1eb-ab9f-49fe-abea-c0ead42b38cf\\\", \r\n \\\"skillId\\\": 4321, \r\n \\\"skillName\\\": \\\"Practical -> TRU TS P3 Hasty visual acoustic and seismic search (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=4e6037a3-778d-4898-af0c-3026f09cf0cf\\\", \r\n \\\"skillId\\\": 4322, \r\n \\\"skillName\\\": \\\"Practical -> TRU TS P4 Navigation using maps (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 813, \r\n \\\"name\\\": \\\"TRU - MoC6 - Timber Shoring\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=9cff8b1a-174b-44a4-b059-19f7dceb44de\\\", \r\n \\\"skillId\\\": 4138, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU TSO K1 Shoring SOP (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=536fadb0-08f7-47e8-ac85-b4775fba6c25\\\", \r\n \\\"skillId\\\": 4139, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU TSO K2 Grading timber and using ungraded timber (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=7e177cbd-c196-4eef-9088-da6e7390db1a\\\", \r\n \\\"skillId\\\": 4140, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU TSO K3 Types of timber used and how (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=3f22790c-8c4b-42e1-a114-b028aa69fd93\\\", \r\n \\\"skillId\\\": 4141, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU TSO K4 Understand H&S Requirements when using Chop Saw (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=d0e2c829-fc3c-4a7b-b39d-a9451093822d\\\", \r\n \\\"skillId\\\": 4142, \r\n \\\"skillName\\\": \\\"Practical -> TRU TSO P1 Crib Stack (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=671e61bd-fbbb-4729-9951-d8c3aee9e6c9\\\", \r\n \\\"skillId\\\": 4143, \r\n \\\"skillName\\\": \\\"Practical -> TRU TSO P2 T Spot/ Double Spot Shore (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=53e06573-0443-46d8-a537-26b703f13eaf\\\", \r\n \\\"skillId\\\": 4144, \r\n \\\"skillName\\\": \\\"Practical -> TRU TSO P3 Vertical Shore (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=f187df0c-2768-45c7-813a-a048e2d03cf4\\\", \r\n \\\"skillId\\\": 4145, \r\n \\\"skillName\\\": \\\"Practical -> TRU TSO P4 Horizontal Shore (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=68b469ab-d568-48d5-82fa-80c99b282156\\\", \r\n \\\"skillId\\\": 4146, \r\n \\\"skillName\\\": \\\"Practical -> TRU TSO P5 Post Lace Shore (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=1b957b48-11a4-461a-9b72-3a47213f3ede\\\", \r\n \\\"skillId\\\": 4147, \r\n \\\"skillName\\\": \\\"Practical -> TRU TSO P6 Door Window shore built in place (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=078dfb6a-f04e-4c20-87ea-c625d808a3de\\\", \r\n \\\"skillId\\\": 4148, \r\n \\\"skillName\\\": \\\"Practical -> TRU TSO P7 Door Window Shore pre fabricated (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=ce3e6a60-ddf1-424d-9421-81a042fb8ff2\\\", \r\n \\\"skillId\\\": 4149, \r\n \\\"skillName\\\": \\\"Practical -> TRU TSO P8 Sloping Floor Shore friction (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=02252d3a-5a9d-4a1f-b766-523df45164a8\\\", \r\n \\\"skillId\\\": 4150, \r\n \\\"skillName\\\": \\\"Practical -> TRU TSO P9 Sloping floor Shore Perpendicular (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=2e051935-5999-4b72-a5b8-15a698223cea\\\", \r\n \\\"skillId\\\": 4151, \r\n \\\"skillName\\\": \\\"Practical -> TRU TSO P10 Raker Shore Solid sole (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=8daf8cb8-e60c-4f82-8bcc-415a1c7e1ffb\\\", \r\n \\\"skillId\\\": 4152, \r\n \\\"skillName\\\": \\\"Practical -> TRU TSO P11 Raker Shore Split Sole (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=18c214a2-e309-44da-8526-fba7381503b3\\\", \r\n \\\"skillId\\\": 4153, \r\n \\\"skillName\\\": \\\"Practical -> TRU TSO P11 Techniques- Laminating/Splicing etc (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=a613a27e-ad2f-4524-b295-ac7e9ce246bc\\\", \r\n \\\"skillId\\\": 4154, \r\n \\\"skillName\\\": \\\"Practical -> TRU TSO P12 Setup & Safely use Chop saw (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 814, \r\n \\\"name\\\": \\\"TRU - MoC6 - Trench/Pit Rescue\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=381882cc-36a3-4449-8df5-f5639a29eea3\\\", \r\n \\\"skillId\\\": 4230, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU TPR K1 Risks and Hazardous associated (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=846b6cfc-9cf2-485e-a771-5c4ce80bb902\\\", \r\n \\\"skillId\\\": 4231, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU TPR K2 Soil types and distributed of forces (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=827e292a-0bae-4d2e-b80b-b5a7b5897905\\\", \r\n \\\"skillId\\\": 4232, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU TPR K3 Types and causes of trench collapse (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=189b5ac1-1227-4cd0-b810-de308ce1f9c0\\\", \r\n \\\"skillId\\\": 4233, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU TPR K4 Operational Procedure (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=15438262-1205-4341-a438-955171770170\\\", \r\n \\\"skillId\\\": 4234, \r\n \\\"skillName\\\": \\\"Practical -> TRU TPR P1 Equipment utilised for trench rescue (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=c420705e-7e89-47f9-92dd-407042dc3b58\\\", \r\n \\\"skillId\\\": 4235, \r\n \\\"skillName\\\": \\\"Practical -> TRU TPR P2 Safe systems of work (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=b170dab5-6dc7-4062-a563-c94c2735a7bc\\\", \r\n \\\"skillId\\\": 4236, \r\n \\\"skillName\\\": \\\"Practical -> TRU TPR P3 Perform Rescues (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 815, \r\n \\\"name\\\": \\\"TRU - MoC6 - Winch Operative\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=5b2d9fd4-0cff-4e28-99f4-32993c227658\\\", \r\n \\\"skillId\\\": 4155, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU WO K1 Winch risk assessment & Tech data sheet read and understood (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=803363bb-e71a-4b9f-a328-fc624063104f\\\", \r\n \\\"skillId\\\": 4156, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU WO K2 Understand the H&S requirements when using a recovery Winch unit (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=c2d90236-265e-4835-9d33-df69cd9cf9a4\\\", \r\n \\\"skillId\\\": 4157, \r\n \\\"skillName\\\": \\\"Knowledge -> TRU WO K3 Understand variations in Winch construction electric/hydraulics (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=3f2aa760-7970-4e0c-ab42-278ba650794f\\\", \r\n \\\"skillId\\\": 4158, \r\n \\\"skillName\\\": \\\"Practical -> TRU WO P1 Winch rope used in vehicle recovery inspect and maintenance regimes used (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=b810bdeb-2369-49c3-8a31-5a3e4014f1aa\\\", \r\n \\\"skillId\\\": 4159, \r\n \\\"skillName\\\": \\\"Practical -> TRU WO P2 Demo use of different types of ancillary equipment used in winching (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=4a95cb1c-d9b0-4bf6-bc69-1aa276b0aee0\\\", \r\n \\\"skillId\\\": 4160, \r\n \\\"skillName\\\": \\\"Practical -> TRU WO P3 Demonstrate the hand signals used to direct a Winch operator (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=b36aa5ad-ccb8-41e9-95df-09ddcd497a9d\\\", \r\n \\\"skillId\\\": 4161, \r\n \\\"skillName\\\": \\\"Practical -> TRU WO P4 Demo an understanding of resistence to winching and calc the effects (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=fbf227eb-0341-41cb-9c9d-3e46ec922b50\\\", \r\n \\\"skillId\\\": 4162, \r\n \\\"skillName\\\": \\\"Practical -> TRU WO P5 Demostrate safe operation of Winch (Material/TRU Drill Card)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }, \r\n {\r\n \\\"id\\\": 816, \r\n \\\"name\\\": \\\"We need to talk about suicide\\\", \r\n \\\"userSkills\\\": [\r\n {\r\n \\\"deepLinkUrl\\\": \\\"https://milearning.csod.com/samldefault.aspx?ReturnUrl=/deeplink/ssodeeplink.aspx?module=transcript&loid=3fcefd39-c6a1-48f6-83bb-fc62623fc928\\\", \r\n \\\"skillId\\\": 4051, \r\n \\\"skillName\\\": \\\"Knowledge -> We need to talk about suicide (Course/)\\\", \r\n \\\"skillUserStatus\\\": [\r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 3, \r\n \\\"userName\\\": \\\"William Barley\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 4, \r\n \\\"userName\\\": \\\"Jemima Bilberry\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 5, \r\n \\\"userName\\\": \\\"John Wemmick\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 12, \r\n \\\"userName\\\": \\\"Angelo Bantam\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 13, \r\n \\\"userName\\\": \\\"Paul Dombey\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 16, \r\n \\\"userName\\\": \\\"Woolwich Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 23, \r\n \\\"userName\\\": \\\"Jack Bamber\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 33, \r\n \\\"userName\\\": \\\"Edith Granger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 48, \r\n \\\"userName\\\": \\\"Marta Bardell\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 51, \r\n \\\"userName\\\": \\\"Clarence Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 52, \r\n \\\"userName\\\": \\\"David Copperfield\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 60, \r\n \\\"userName\\\": \\\"Malta Bagnet\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 67, \r\n \\\"userName\\\": \\\"Jack Dawkins\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 68, \r\n \\\"userName\\\": \\\"Clara Peggotty\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 73, \r\n \\\"userName\\\": \\\"Tite Barnacle\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 76, \r\n \\\"userName\\\": \\\"Bayham Badger\\\"\r\n }, \r\n {\r\n \\\"statusId\\\": 1, \r\n \\\"statusText\\\": \\\"Not Started\\\", \r\n \\\"userId\\\": 77, \r\n \\\"userName\\\": \\\"Thomas Bardell\\\"\r\n }\r\n ]\r\n }\r\n ]\r\n }\r\n ]\r\n }`);\r\n ","import { Component, OnInit, AfterViewChecked, OnChanges, SimpleChanges } from '@angular/core';\r\nimport { finalize } from 'rxjs/operators';\r\n\r\nimport { SkillCategoryPercentComplete, SkillsMatrixSummary, SkillsMatrixSummaryWatch } from './skill-matrix-summary';\r\nimport { DashboardService } from './dashboard.service';\r\nimport { Observable, Subscription, forkJoin } from 'rxjs';\r\nimport { switchMap, map } from 'rxjs/operators';\r\nimport { filter } from 'd3';\r\nimport { TrainingSubjectCategories } from './training-subject-categories';\r\nimport { OrgUnitService } from 'app/org-unit/org-unit.service';\r\nimport { ConfigSetting } from 'app/org-unit/config-setting';\r\n\r\nexport class GroupedTotals {\r\n groupScores: Map>> = new Map>>();\r\n\r\n subjMeanCompletion(groupKey: string, subjKey: string): number {\r\n let meanScore: number = null;\r\n const matchedGroup = this.groupScores.get(groupKey);\r\n if (matchedGroup) {\r\n const matchedSubj = matchedGroup.get(subjKey);\r\n if (matchedSubj?.length > 0) {\r\n meanScore = matchedSubj ? (matchedSubj.reduce((sum, current) => sum + current, 0) / matchedSubj.length) : null;\r\n }\r\n }\r\n return meanScore;\r\n }\r\n\r\n groupMeanCompletion(groupKey: string): number {\r\n let meanScore: number = null;\r\n const matchedGroup = this.groupScores.get(groupKey);\r\n if (matchedGroup) {\r\n let scoreCount = 0;\r\n let totalScore = 0;\r\n for (const [k, v] of matchedGroup) {\r\n totalScore += v.reduce((sum, current) => k.startsWith('ALL') ? sum : sum + current, 0);\r\n // scoreCount += v.length;\r\n scoreCount += (k.startsWith('ALL') ? 0 : v.length);\r\n }\r\n meanScore = totalScore / scoreCount;\r\n }\r\n return meanScore;\r\n }\r\n\r\n addScore(groupKey: string, subjKey: string, score: number): void {\r\n let matchedGroup = this.groupScores.get(groupKey); // || Array();\r\n let groupSubjScores: Array = [];\r\n if (matchedGroup) {\r\n groupSubjScores = matchedGroup.get(subjKey) || Array();\r\n } else {\r\n matchedGroup = new Map>();\r\n this.groupScores.set(groupKey, matchedGroup);\r\n }\r\n groupSubjScores.push(score);\r\n matchedGroup.set(subjKey, groupSubjScores);\r\n this.groupScores.set(groupKey, matchedGroup);\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'ug-skill-matrix-summary',\r\n templateUrl: './skill-matrix-summary.component.html',\r\n styleUrls: ['./skill-matrix-summary.component.scss']\r\n})\r\n\r\nexport class SkillMatrixSummaryComponent implements OnInit, OnChanges {\r\n\r\n subjectMap: Map> = new Map>();\r\n\r\n areaBoroughs: Map> = new Map>();\r\n boroughStations: Map> = new Map>();\r\n stationWatches: Map> = new Map>();\r\n\r\n areaTotals: GroupedTotals = new GroupedTotals();\r\n boroughTotals: GroupedTotals = new GroupedTotals();\r\n stationTotals: GroupedTotals = new GroupedTotals();\r\n watchTotals: GroupedTotals = new GroupedTotals();\r\n categoryTotals: GroupedTotals = new GroupedTotals();\r\n\r\n areaMeanPercentComplete: Map = new Map();\r\n boroughMeanPercentComplete: Map = new Map();\r\n stationMeanPercentComplete: Map = new Map();\r\n\r\n skillsMatrixFilterCats: Array = [];\r\n\r\n tabData: Array = [\r\n // {\r\n // key: 'ALL',\r\n // title: 'All',\r\n // categories: [],\r\n // subjectId: -1\r\n // },\r\n // {\r\n // key: 'MoC',\r\n // title: 'MoC',\r\n // categories: ['MoC0', 'MoC3', 'MoC6', 'MoC12'],\r\n // subjectId: 854\r\n // },\r\n // {\r\n // key: 'SP',\r\n // title: 'Special Appliances',\r\n // categories: ['SP12 MDU AND EQUIP', 'SP3 SW TECH', 'SP6 CSU O', 'SP6 TRU CH O', 'SP6 WF U O'],\r\n // subjectId: 859\r\n // },\r\n // {\r\n // key: 'OS',\r\n // title: 'Operational Skills',\r\n // categories: ['OS FI TIER 1', 'OS IRS'],\r\n // subjectId: 855\r\n // },\r\n // {\r\n // key: 'IC',\r\n // title: 'Incident Command',\r\n // categories: ['IC CSRO', 'IC GA-AM', 'IC GA-CM', 'IC GA-GM', 'IC GA-SM'],\r\n // subjectId: 857\r\n // },\r\n // {\r\n // key: 'EFAD',\r\n // title: 'Emergency Fire Appliance Driver',\r\n // categories: ['EFAD FURTHER TRAINING', 'EFAD INITIAL', 'EFAD LGV', 'EFAD LGV CAT C', 'EFAD REFRESH'],\r\n // subjectId: 856\r\n // },\r\n // {\r\n // key: 'CT',\r\n // title: 'Corporate Training',\r\n // categories: ['CT SW FFR I', 'CT SW FR BO I', 'CT SW FR BO IN', 'CT SW FR BO R'],\r\n // subjectId: 858\r\n // },\r\n // {\r\n // key: 'OAS',\r\n // title: 'Ops and Safety Alerts',\r\n // categories: ['OAS'],\r\n // subjectId: -1\r\n // }\r\n ];\r\n\r\n\r\n // TODO: Populate dynamically\r\n dashboardChartItems = {\r\n 'All': {\r\n id: 'All',\r\n description: 'All categories',\r\n yCategoryName: 'Discipline',\r\n colorClasses: 'bg-dark text-light',\r\n borderClasses: 'border-dark'\r\n },\r\n // 'MoC0': {\r\n // id: 'moc0',\r\n // description: 'Maintenance of Competence – MoC0',\r\n // yCategoryName: 'Discipline',\r\n // colorClasses: 'bg-primary text-light',\r\n // },\r\n 'MoC3': {\r\n id: 'moc3',\r\n description: 'Maintenance of Competence – MoC3',\r\n yCategoryName: 'Skill',\r\n colorClasses: 'bg-primary text-light',\r\n borderClasses: 'border-primary'\r\n },\r\n 'MoC6': {\r\n id: 'moc6',\r\n description: 'Maintenance of Competence – MoC6',\r\n yCategoryName: 'Organisation Unit',\r\n colorClasses: 'bg-primary text-light',\r\n borderClasses: 'border-primary'\r\n },\r\n 'MoC12': {\r\n id: 'moc12',\r\n description: 'Maintenance of Competence – MoC12',\r\n yCategoryName: 'Discipline',\r\n colorClasses: 'bg-primary text-light',\r\n borderClasses: 'border-primary'\r\n },\r\n 'MoC24': {\r\n id: 'moc24',\r\n description: 'Maintenance of Competence – MoC24',\r\n yCategoryName: 'Discipline',\r\n colorClasses: 'bg-primary text-light',\r\n borderClasses: 'border-primary'\r\n },\r\n 'TRU': {\r\n id: 'tru',\r\n description: 'Technical Rescue Unit',\r\n yCategoryName: 'Organisation Unit',\r\n colorClasses: 'bg-primary text-light',\r\n borderClasses: 'border-primary'\r\n },\r\n 'TTL': {\r\n id: 'ttl',\r\n description: 'TTL Operators',\r\n yCategoryName: 'Organisation Unit',\r\n colorClasses: 'bg-primary text-light',\r\n borderClasses: 'border-primary'\r\n },\r\n 'SAS6': {\r\n id: 'sas6',\r\n description: 'Staff & Specialist – SAS6',\r\n yCategoryName: 'Organisation Unit',\r\n colorClasses: 'bg-info text-light',\r\n borderClasses: 'border-info'\r\n },\r\n 'SAS12': {\r\n id: 'sas12',\r\n description: 'Staff & Specialist – SAS12',\r\n yCategoryName: 'Organisation Unit',\r\n colorClasses: 'bg-info text-light',\r\n borderClasses: 'border-info'\r\n },\r\n '42FDS12': {\r\n id: '42fds12',\r\n description: '42 hour Station Manager & Flexi Duty System - 42FDS',\r\n yCategoryName: 'Organisation Unit',\r\n colorClasses: 'bg-info text-light',\r\n borderClasses: 'border-info'\r\n },\r\n 'ACS': {\r\n id: 'mPlus',\r\n description: 'Manchester Plus',\r\n yCategoryName: 'Organisation Unit',\r\n colorClasses: 'bg-info text-light',\r\n borderClasses: 'border-info'\r\n },\r\n 'OAS': {\r\n id: 'oas',\r\n description: 'Ops and Safety Alerts',\r\n yCategoryName: 'Organisation Unit',\r\n colorClasses: 'bg-secondary text-light',\r\n borderClasses: 'border-secondary'\r\n },\r\n };\r\n\r\n activeDbChartItemIndex = -1;\r\n\r\n areaData: Array = [];\r\n boroughData: Array = [];\r\n stationData: any[] = [];\r\n watchData: Array = [];\r\n\r\n areaScores: Array = [];\r\n boroughScores: Array = [];\r\n stationScores: Array = [];\r\n watchScores: Array = [];\r\n\r\n selectedAreaIndex = -1;\r\n selectedBoroughIndex = -1;\r\n selectedStationIndex = -1;\r\n selectedWatchIndex = -1;\r\n\r\n scrollToArea = false;\r\n scrollToBorough = false;\r\n scrollToStation = false;\r\n scrollToWatch = false;\r\n scrollToSM = false;\r\n\r\n selectedWatchName: string;\r\n selectedBoroughName: string;\r\n selectedStationName: string;\r\n selectedAreaName: string;\r\n\r\n showMatrix = false;\r\n\r\n summaryData: any = {};\r\n\r\n catKey = 'All';\r\n\r\n loadingData = true;\r\n selectedTabIndex: number;\r\n selectedCategory: string;\r\n tabCatKey = 'ALL';\r\n filterSubjKey = 'ALL';\r\n\r\n skillsMatrixSummSubs: Subscription = new Subscription();\r\n\r\n constructor(private dashboardService: DashboardService, private orgUnitService: OrgUnitService) { }\r\n\r\n ngOnInit() {\r\n\r\n this.skillsMatrixSummSubs.add(\r\n forkJoin(\r\n {\r\n tsc: this.dashboardService.getTrainingSubjectCategories() as Observable>,\r\n sms: this.dashboardService.getSkillsMatrixSummary() as Observable,\r\n tso: this.orgUnitService.getConfigSettingsByKey('SM-TABS') as Observable>\r\n }\r\n )\r\n .pipe(\r\n finalize( () => { this.loadingData = false; })\r\n )\r\n .subscribe( ({tsc, sms, tso}) => {\r\n this.tabData = [];\r\n this.tabData.push( { key: 'ALL', title: 'All', categories: [], subjectId: -1 });\r\n this.tabData = this.tabData.concat(tsc);\r\n\r\n let tabArray = [] as Array;\r\n if (tso.length > 0) {\r\n tabArray = tso[0].configValue.split(',');\r\n // tabArray = 'All,MoC,Operational Skills,EFAD,Incident Command,Corporate Training,Special Appliances,Ops and Safety Alerts'.split(',');\r\n }\r\n\r\n this.tabData = this.orgUnitService.sortTabs(tabArray, this.tabData);\r\n\r\n this.buildSubjectMap();\r\n this.loadSmSumm(sms);\r\n\r\n },\r\n err => {}\r\n )\r\n );\r\n\r\n // this.skillsMatrixSummSubs.add(\r\n // this.dashboardService.getTrainingSubjectCategories()\r\n // .pipe(\r\n // switchMap( (tsc) => this.dashboardService.getSkillsMatrixSummary()\r\n // .pipe(\r\n // map(sms => [tsc, sms])\r\n // )\r\n // ),\r\n // finalize( () => { this.loadingData = false; })\r\n // )\r\n // .subscribe(\r\n // res => {\r\n // const tsc = res[0] as Array\r\n // const sms = res[1] as SkillsMatrixSummary;\r\n\r\n // this.tabData = [];\r\n // this.tabData.push( { key: 'ALL', title: 'All', categories: [], subjectId: -1 });\r\n // this.tabData = this.tabData.concat(tsc);\r\n\r\n // // if (this.tabData.findIndex(td => td.key === 'OAS') === -1) {\r\n // // this.tabData.push( { key: 'OAS', title: 'Ops and Safety Alerts', categories: ['OAS'], subjectId: 1000 } );\r\n // // }\r\n\r\n // this.buildSubjectMap();\r\n // this.loadSmSumm(sms);\r\n // },\r\n // err => {}\r\n // )\r\n // );\r\n\r\n\r\n/*\r\n this.dashboardService.getSkillsMatrixSummary()\r\n .pipe(\r\n finalize( () => { this.loadingData = false; })\r\n )\r\n .subscribe(\r\n sms => {\r\n this.loadSmSumm(sms);\r\n this.summaryData = {}\r\n sms.watchDetail.forEach(\r\n (wd: SkillsMatrixSummaryWatch) => {\r\n if (!this.summaryData['areas']) {\r\n this.summaryData['areas'] = {[wd.area]: {}}\r\n }\r\n if (!this.summaryData['areas'][wd.area]) {\r\n this.summaryData['areas'][wd.area] = {};\r\n }\r\n if (!this.summaryData['areas'][wd.area]['boroughs']) {\r\n this.summaryData['areas'][wd.area]['boroughs'] = {[wd.boroughName]: {}}\r\n }\r\n if (!this.summaryData['areas'][wd.area]['boroughs'][wd.boroughName]) {\r\n this.summaryData['areas'][wd.area]['boroughs'][wd.boroughName] = {};\r\n }\r\n if (!this.summaryData['areas'][wd.area]['boroughs'][wd.boroughName]['stations']) {\r\n this.summaryData['areas'][wd.area]['boroughs'][wd.boroughName]['stations'] = {[wd.stationName]: {}}\r\n }\r\n if (!this.summaryData['areas'][wd.area]['boroughs'][wd.boroughName]['stations'][wd.stationName]) {\r\n this.summaryData['areas'][wd.area]['boroughs'][wd.boroughName]['stations'][wd.stationName] = {};\r\n }\r\n if (!this.summaryData['areas'][wd.area]['boroughs'][wd.boroughName]['stations'][wd.stationName]['watches']) {\r\n this.summaryData['areas'][wd.area]['boroughs'][wd.boroughName]['stations'][wd.stationName]['watches']\r\n = {[wd.watchFullName]: {}}\r\n }\r\n if (!this.summaryData['areas'][wd.area]['boroughs'][wd.boroughName]['stations'][wd.stationName]['watches'][wd.watchFullName]) {\r\n this.summaryData['areas'][wd.area]['boroughs'][wd.boroughName]['stations'][wd.stationName]['watches'][wd.watchFullName] = {};\r\n }\r\n this.summaryData['areas'][wd.area]['boroughs'][wd.boroughName]['stations'][wd.stationName]['watches'][wd.watchFullName]\r\n = {percentComplete: wd.percentComplete};\r\n\r\n const pcKeys = Object.keys(wd.percentComplete).filter( k => wd.percentComplete[k] !== null)\r\n let total = 0\r\n pcKeys.forEach(pk => { total += wd.percentComplete[pk] || 0})\r\n this.summaryData['areas'][wd.area]['boroughs'][wd.boroughName]['stations'][wd.stationName]\r\n ['watches'][wd.watchFullName]['percentComplete']['All'] = (total / pcKeys.length) || null;\r\n\r\n const overallTotals: any = {}\r\n const areaKeys = Object.keys(this.summaryData['areas']);\r\n this.summaryData['percentComplete'] = {}\r\n\r\n areaKeys.forEach(\r\n area => {\r\n const areaTotals: any = {}\r\n const boroughKeys = Object.keys(this.summaryData['areas'][area]['boroughs'])\r\n this.summaryData['areas'][area]['percentComplete'] = {}\r\n\r\n boroughKeys.forEach(\r\n borough => {\r\n const boroughTotals: any = {}\r\n const stationKeys = Object.keys(this.summaryData['areas'][area]['boroughs'][borough]['stations']);\r\n this.summaryData['areas'][area]['boroughs'][borough]['percentComplete'] = {}\r\n\r\n stationKeys.forEach(\r\n station => {\r\n const stationTotals: any = {}\r\n const watchKeys = Object.keys(this.summaryData['areas'][area]['boroughs'][borough]['stations'][station]['watches'])\r\n this.summaryData['areas'][area]['boroughs'][borough]['stations'][station]['percentComplete'] = {}\r\n\r\n watchKeys.forEach(\r\n watch => {\r\n Object.keys(\r\n this.summaryData['areas'][area]['boroughs'][borough]['stations'][station]['watches'][watch]['percentComplete']\r\n ).filter(\r\n p => this.summaryData['areas'][area]['boroughs'][borough]['stations'][station]['watches'][watch]['percentComplete'][p] !== null\r\n ).forEach(\r\n pk => {\r\n stationTotals[pk] = (stationTotals[pk] || 0) +\r\n this.summaryData['areas'][area]['boroughs'][borough]['stations'][station]\r\n ['watches'][watch]['percentComplete'][pk];\r\n }\r\n )\r\n }\r\n )\r\n\r\n Object.keys(stationTotals).filter(\r\n s => this.summaryData['areas'][area]['boroughs'][borough]['stations'][station]['percentComplete'][s] !== null\r\n ).forEach(\r\n stk => {\r\n // Find watches that have non-null total for stk\r\n const watchDivisor = Object.keys(\r\n this.summaryData['areas'][area]['boroughs'][borough]['stations'][station]['watches']\r\n ).filter(\r\n wk => (this.summaryData['areas'][area]['boroughs'][borough]['stations'][station]['watches'][wk]['percentComplete'][stk] || null) !== null\r\n ).length;\r\n const stationMeanComplete = stationTotals[stk] / watchDivisor;\r\n this.summaryData['areas'][area]['boroughs'][borough]['stations'][station]['percentComplete'][stk] =\r\n stationMeanComplete;\r\n boroughTotals[stk] = (boroughTotals[stk] || 0) + stationMeanComplete;\r\n }\r\n )\r\n }\r\n )\r\n\r\n Object.keys(boroughTotals).forEach(\r\n btk => {\r\n // Find stations that have non-null total for btk\r\n const stationDivisor = Object.keys(\r\n this.summaryData['areas'][area]['boroughs'][borough]['stations']\r\n ).filter(\r\n sk => (this.summaryData['areas'][area]['boroughs'][borough]['stations'][sk]['percentComplete'][btk] || null) !== null\r\n ).length;\r\n const boroughMeanComplete = boroughTotals[btk] / stationDivisor;\r\n this.summaryData['areas'][area]['boroughs'][borough]['percentComplete'][btk] = boroughMeanComplete;\r\n areaTotals[btk] = (areaTotals[btk] || 0) + boroughMeanComplete;\r\n }\r\n )\r\n }\r\n )\r\n\r\n Object.keys(areaTotals).forEach(\r\n atk => {\r\n // Find boroughs that have non-null total for atk\r\n const boroughDivisor = Object.keys(\r\n this.summaryData['areas'][area]['boroughs']\r\n ).filter(\r\n bk => (this.summaryData['areas'][area]['boroughs'][bk]['percentComplete'][atk] || null) !== null\r\n ).length;\r\n const areaMeanComplete = areaTotals[atk] / boroughDivisor;\r\n this.summaryData['areas'][area]['percentComplete'][atk] = areaMeanComplete;\r\n overallTotals[atk] = (overallTotals[atk] || 0) + areaMeanComplete;\r\n }\r\n )\r\n }\r\n )\r\n\r\n Object.keys(overallTotals).forEach(\r\n // Find areas that have non-null total for otk\r\n otk => {\r\n const areaDivisor = Object.keys(\r\n this.summaryData['areas']\r\n ).filter(\r\n ak => (this.summaryData['areas'][ak]['percentComplete'][otk] || null) !== null\r\n ).length;\r\n this.summaryData['percentComplete'][otk] = overallTotals[otk] / areaDivisor;\r\n }\r\n )\r\n }\r\n )\r\n }\r\n )\r\n*/\r\n\r\n }\r\n buildSubjectMap() {\r\n this.tabData.forEach(td => {\r\n td.categories.forEach( c => {\r\n this.subjectMap.set(c, (this.subjectMap.get(c) || new Set()).add(td.key));\r\n this.subjectMap.set(c, (this.subjectMap.get(c) || new Set()).add('ALL'));\r\n })\r\n });\r\n }\r\n loadSmSumm(sms: SkillsMatrixSummary) {\r\n sms.watchDetail.forEach(\r\n w => {\r\n if (Object.keys(w).length === 0) { return; } // If watch is empty skip\r\n this.areaBoroughs.set(w.area, (this.areaBoroughs.get(w.area) || new Set()).add(w.boroughName));\r\n // this.areaBoroughs.set('ALL', (this.areaBoroughs.get(w.area) || new Set()).add(w.boroughName));\r\n this.boroughStations.set(w.boroughName, (this.boroughStations.get(w.boroughName) || new Set()).add(w.stationName));\r\n // this.boroughStations.set('ALL', (this.boroughStations.get(w.boroughName) || new Set()).add(w.stationName));\r\n this.stationWatches.set(w.stationName, (this.stationWatches.get(w.stationName) || new Set()).add(w.watchFullName));\r\n // this.stationWatches.set('ALL', (this.stationWatches.get(w.stationName) || new Set()).add(w.watchFullName));\r\n\r\n Object.keys(w.percentComplete).forEach( k => {\r\n/*\r\n this.areaTotals.addScore(w.area, k, w.percentComplete[k]);\r\n // this.areaTotals.addScore('ALL', k, w.percentComplete[k]);\r\n this.areaTotals.addScore(w.area, 'ALL', w.percentComplete[k]);\r\n // this.areaTotals.addScore('ALL', 'ALL', w.percentComplete[k]);\r\n this.boroughTotals.addScore(w.boroughName, k, w.percentComplete[k]);\r\n // this.boroughTotals.addScore('ALL', k, w.percentComplete[k]);\r\n this.boroughTotals.addScore(w.boroughName, 'ALL', w.percentComplete[k]);\r\n // this.boroughTotals.addScore('ALL', 'ALL', w.percentComplete[k]);\r\n this.stationTotals.addScore(w.stationName, k, w.percentComplete[k]);\r\n // this.stationTotals.addScore('ALL', k, w.percentComplete[k]);\r\n this.stationTotals.addScore(w.stationName, 'ALL', w.percentComplete[k]);\r\n // this.stationTotals.addScore('ALL', 'ALL', w.percentComplete[k]);\r\n*/\r\n this.areaTotals.addScore(w.area, k, w.percentComplete[k]);\r\n this.boroughTotals.addScore(w.boroughName, k, w.percentComplete[k]);\r\n this.stationTotals.addScore(w.stationName, k, w.percentComplete[k]);\r\n this.watchTotals.addScore(w.watchFullName, k, w.percentComplete[k]);\r\n\r\n // this.areaTotals.addScore(w.area, 'ALL', w.percentComplete[k]);\r\n // this.boroughTotals.addScore(w.boroughName, 'ALL', w.percentComplete[k]);\r\n // this.stationTotals.addScore(w.stationName, 'ALL', w.percentComplete[k]);\r\n // this.watchTotals.addScore(w.watchFullName, 'ALL', w.percentComplete[k]);\r\n\r\n const subjGroup = this.subjectMap.get(k);\r\n if (subjGroup) {\r\n subjGroup.forEach((a) => {\r\n this.categoryTotals.addScore(a, k, w.percentComplete[k])\r\n this.categoryTotals.addScore(a, 'ALL-' + a, w.percentComplete[k])\r\n // this.categoryTotals.addScore('ALL', k, w.percentComplete[k])\r\n // this.categoryTotals.addScore('ALL', 'ALL-' + a, w.percentComplete[k])\r\n\r\n this.areaTotals.addScore(w.area, 'ALL-' + a, w.percentComplete[k]);\r\n this.boroughTotals.addScore(w.boroughName, 'ALL-' + a, w.percentComplete[k]);\r\n this.stationTotals.addScore(w.stationName, 'ALL-' + a, w.percentComplete[k]);\r\n this.watchTotals.addScore(w.watchFullName, 'ALL-' + a, w.percentComplete[k]);\r\n })\r\n }\r\n })\r\n }\r\n );\r\n this.setTab(0)\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (this.scrollToSM) {\r\n (document.getElementById('skillsMatrix') as HTMLInputElement).scrollIntoView({behavior: 'smooth'});\r\n } else if (this.scrollToWatch) {\r\n (document.getElementById('watchCards') as HTMLInputElement).scrollIntoView({behavior: 'smooth'});\r\n } else if (this.scrollToStation) {\r\n (document.getElementById('stationCards') as HTMLInputElement).scrollIntoView({behavior: 'smooth'});\r\n } else if (this.scrollToBorough) {\r\n (document.getElementById('boroughCards') as HTMLInputElement).scrollIntoView({behavior: 'smooth'});\r\n } else if (this.scrollToArea) {\r\n (document.getElementById('areaCards') as HTMLInputElement).scrollIntoView({behavior: 'smooth'});\r\n }\r\n this.scrollToSM = false;\r\n this.scrollToWatch = false;\r\n this.scrollToStation = false;\r\n this.scrollToBorough = false;\r\n this.scrollToArea = false;\r\n\r\n // if (this.selectedWatchIndex >= 0) {\r\n // (document.getElementById('skillsMatrix') as HTMLInputElement).scrollIntoView({behavior: 'smooth'})\r\n // } else if (this.selectedStationIndex >= 0) {\r\n // (document.getElementById('watchCards') as HTMLInputElement).scrollIntoView({behavior: 'smooth'})\r\n // } else if (this.selectedBoroughIndex >= 0) {\r\n // (document.getElementById('stationCards') as HTMLInputElement).scrollIntoView({behavior: 'smooth'});\r\n // } else if (this.selectedAreaIndex >= 0) {\r\n // (document.getElementById('boroughCards') as HTMLInputElement).scrollIntoView({behavior: 'smooth'});\r\n // }\r\n }\r\n\r\n onDbChartItemClick(catKey: string, chartItemIdx: number) {\r\n this.areaData = []\r\n this.showMatrix = false;\r\n this.catKey = catKey;\r\n this.filterSubjKey = this.categoryKeys[chartItemIdx];\r\n\r\n this.setFilterCats();\r\n\r\n // Object.keys(this.summaryData['areas'] || {}).forEach( a => {\r\n // const complete = this.summaryData['areas'][a]['percentComplete'][catKey];\r\n // const ad = [\r\n // {label: 'Incomplete', value: 1 - complete},\r\n // {label: 'Complete', value: complete},\r\n // ]\r\n // this.areaData.push(\r\n // {name: a, data: ad}\r\n // )\r\n // }\r\n // )\r\n\r\n this.areaScores = [];\r\n for (const [k, v] of this.areaBoroughs) {\r\n const complete = this.areaTotals.subjMeanCompletion(k, this.filterSubjKey);\r\n const ad = [\r\n {label: 'Incomplete', value: 1 - complete},\r\n {label: 'Complete', value: complete},\r\n ];\r\n this.areaScores.push(\r\n {name: k, data: ad}\r\n )\r\n }\r\n\r\n this.recalcTotals();\r\n\r\n if (this.selectedAreaIndex > -1) {\r\n this.onAreaClick(this.selectedAreaName, this.selectedAreaIndex)\r\n }\r\n this.activeDbChartItemIndex = chartItemIdx;\r\n this.scrollToArea = true;\r\n }\r\n\r\n setTab(tci: number) {\r\n this.selectedTabIndex = tci;\r\n this.activeDbChartItemIndex = 0;\r\n this.selectedCategory = this.tabData[tci].key;\r\n this.catKey = 'ALL';\r\n this.filterSubjKey = 'ALL';\r\n this.tabCatKey = this.tabData[tci].key\r\n this.recalcTotals();\r\n this.onDbChartItemClick(this.categoryKeys[0], 0);\r\n }\r\n\r\n recalcTotals() {\r\n // throw new Error('Method not implemented.');\r\n }\r\n\r\n onAreaClick(itemName: string, itemIndex: number) {\r\n if (itemName !== this.selectedAreaName) {\r\n this.selectedBoroughIndex = -1;\r\n this.selectedStationIndex = -1;\r\n this.selectedWatchIndex = -1;\r\n this.showMatrix = false;\r\n }\r\n this.selectedAreaIndex = itemIndex;\r\n this.selectedAreaName = itemName;\r\n\r\n // this.boroughData = [];\r\n // Object.keys(this.summaryData['areas'][itemName]['boroughs']).forEach( b => {\r\n // const complete = this.summaryData['areas'][itemName]['boroughs'][b]['percentComplete'][this.catKey];\r\n // const bd = [\r\n // {label: 'Incomplete', value: 1 - complete},\r\n // {label: 'Complete', value: complete},\r\n // ]\r\n // this.boroughData.push(\r\n // {name: b, data: bd}\r\n // )\r\n // }\r\n // );\r\n\r\n this.boroughScores = [];\r\n for (const b of this.areaBoroughs.get(itemName)) {\r\n // const complete = this.boroughTotals.subjMeanCompletion(b, this.catKey);\r\n // const complete = this.boroughTotals.subjMeanCompletion(b, this.selectedCategory);\r\n // const complete = this.areaTotals.subjMeanCompletion(itemName, this.selectedCategory);\r\n const complete = this.boroughTotals.subjMeanCompletion(b, this.filterSubjKey);\r\n const ad = [\r\n {label: 'Incomplete', value: 1 - complete},\r\n {label: 'Complete', value: complete},\r\n ];\r\n this.boroughScores.push(\r\n {name: b, data: ad}\r\n )\r\n }\r\n\r\n this.scrollToBorough = true;\r\n if (this.selectedBoroughIndex > -1) {\r\n this.onBoroughClick(this.selectedBoroughName, this.selectedBoroughIndex)\r\n }\r\n }\r\n\r\n onAreaClick1(areaData: any) {\r\n this.onAreaClick(areaData['chartName'], areaData['chartIndex'])\r\n }\r\n\r\n onBoroughClick(itemName: string, itemIndex: number) {\r\n if (itemName !== this.selectedBoroughName) {\r\n this.selectedStationIndex = -1;\r\n this.selectedWatchIndex = -1;\r\n this.showMatrix = false;\r\n }\r\n this.selectedBoroughIndex = itemIndex;\r\n this.selectedBoroughName = itemName;\r\n\r\n // this.stationData = [];\r\n // Object.keys(this.summaryData['areas'][this.selectedAreaName]['boroughs'][itemName]['stations']).forEach( s => {\r\n // const complete =\r\n // this.summaryData['areas'][this.selectedAreaName]['boroughs'][itemName]['stations'][s]['percentComplete'][this.catKey];\r\n // const sd = [\r\n // {label: 'Incomplete', value: 1 - complete},\r\n // {label: 'Complete', value: complete},\r\n // ]\r\n // this.stationData.push(\r\n // {name: s, data: sd}\r\n // )\r\n // }\r\n // );\r\n\r\n this.stationScores = [];\r\n for (const s of this.boroughStations.get(itemName)) {\r\n const complete = this.stationTotals.subjMeanCompletion(s, this.filterSubjKey);\r\n const ad = [\r\n {label: 'Incomplete', value: 1 - complete},\r\n {label: 'Complete', value: complete},\r\n ];\r\n this.stationScores.push(\r\n {name: s, data: ad}\r\n )\r\n }\r\n\r\n this.scrollToStation = true;\r\n if (this.selectedStationIndex > -1) {\r\n this.onStationClick(this.selectedStationName, this.selectedStationIndex);\r\n }\r\n }\r\n\r\n onStationClick(itemName: string, itemIndex: number ) {\r\n if (itemName !== this.selectedStationName) {\r\n this.selectedWatchIndex = -1;\r\n this.showMatrix = false;\r\n }\r\n this.selectedStationName = itemName;\r\n this.selectedStationIndex = itemIndex;\r\n\r\n // this.watchData = [];\r\n // Object.keys(this.summaryData['areas'][this.selectedAreaName]['boroughs'][this.selectedBoroughName]['stations'][itemName]['watches'])\r\n // .forEach(\r\n // w => {\r\n // const complete =\r\n // this.summaryData['areas'][this.selectedAreaName]['boroughs'][this.selectedBoroughName]['stations'][itemName]\r\n // ['watches'][w]['percentComplete'][this.catKey];\r\n // const wd = [\r\n // {label: 'Incomplete', value: 1 - complete},\r\n // {label: 'Complete', value: complete},\r\n // ];\r\n // this.watchData.push(\r\n // {name: w, data: wd}\r\n // )\r\n // }\r\n // );\r\n\r\n this.watchScores = [];\r\n for (const w of this.stationWatches.get(itemName)) {\r\n console.log(`OnStationClick() for itemName=${itemName}, filterSubjKey=${this.filterSubjKey}`);\r\n const complete = this.watchTotals.subjMeanCompletion(w, this.filterSubjKey);\r\n const ad = [\r\n {label: 'Incomplete', value: 1 - complete},\r\n {label: 'Complete', value: complete},\r\n ];\r\n this.watchScores.push(\r\n {name: w, data: ad}\r\n )\r\n }\r\n\r\n this.scrollToWatch = true;\r\n }\r\n\r\n onWatchClick(itemName: string, itemIndex: number ) {\r\n const watchelements: string[] = itemName.split(' - ');\r\n // this.selectedWatchName = `${watchelements[0]} ${watchelements[2]} Watch`;\r\n this.selectedWatchName = `${watchelements[0]}`;\r\n this.selectedWatchIndex = itemIndex;\r\n\r\n this.setFilterCats();\r\n\r\n // this.showMatrix = true;\r\n // this.scrollToSM = true;\r\n }\r\n\r\n private setFilterCats() {\r\n let filterSub = '';\r\n if (this.filterSubjKey.startsWith('ALL-')) {\r\n filterSub = this.filterSubjKey.split('-', 2)[1];\r\n this.skillsMatrixFilterCats = this.tabData.find(td => td.key === filterSub)?.categories || [];\r\n } else {\r\n filterSub = this.filterSubjKey;\r\n this.skillsMatrixFilterCats = [filterSub];\r\n }\r\n }\r\n\r\n onSmLoaded(isLoaded: any) {\r\n console.log(`isLoaded: ${isLoaded}`)\r\n if (isLoaded) {\r\n // (document.getElementById('skillsMatrix') as HTMLInputElement).scrollIntoView({behavior: 'smooth', block: 'start'});\r\n // (document.getElementById('watchCards') as HTMLInputElement).scrollIntoView({behavior: 'smooth', block: 'start'});\r\n this.showMatrix = true;\r\n this.scrollToSM = true;\r\n }\r\n }\r\n\r\n get categoryKeys() {\r\n // return Object.keys(this.dashboardChartItems);\r\n // return ['ALL', ...this.tabData[this.selectedTabIndex].categories];\r\n let sortedCategories: String[] = this.tabData[this.selectedTabIndex].categories.sort(\r\n (a, b) => { return a.localeCompare(b)}\r\n );\r\n\r\n return ['ALL-' + this.tabData[this.selectedTabIndex].key, ...this.tabData[this.selectedTabIndex].categories];\r\n }\r\n\r\n get summaryKeys() {\r\n // return Object.keys(this.summaryData);\r\n return Object.keys(this.areaBoroughs);\r\n }\r\n\r\n // get skillsMatrixFilterCats(): Array {\r\n // let filterSub: string = '';\r\n // if (this.filterSubjKey.startsWith('ALL-')) {\r\n // filterSub = this.filterSubjKey.split('-', 2)[1];\r\n // } else {\r\n // filterSub = this.filterSubjKey;\r\n // }\r\n // return [];\r\n // }\r\n\r\n getChartScore(chartScore: number): string {\r\n return this.dashboardService.getDisplayPercentage(chartScore);\r\n }\r\n\r\n tileCompleteClass(percentComplete: number): string {\r\n if (percentComplete <= 0.25) {\r\n return 'bg-danger'\r\n } else if (percentComplete <= 0.75) {\r\n return 'bg-warning'\r\n }\r\n return 'bg-success'\r\n }\r\n\r\n tileCompleteProgressStyle(percentComplete: number): any {\r\n return { 'width': `${percentComplete * 100}%` }\r\n }\r\n\r\n tileCardClass(chartItemKey: string, active: boolean) {\r\n return active ? `${this.dashboardChartItems[chartItemKey].borderClasses} bg-light` : ''\r\n }\r\n\r\n trackByFn(index: any, item: any) {\r\n return index;\r\n }\r\n\r\n // tabContentLength(tabKey: string) {\r\n // return (this.tabMap.get(tabKey) || []).length\r\n // }\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n
    \r\n\r\n
  • \r\n \r\n \r\n \r\n
  • \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n\r\n \r\n\r\n
\r\n
\r\n\r\n
= 0\">\r\n Click above to view chart\r\n
\r\n\r\n\r\n
\r\n\r\n -1\" [loadingData]=\"false\" [cardTitle]=\"'Areas'\" [cardSubTitle]=\"'Category: ' + filterSubjKey\"\r\n [donutDataArray]=\"areaScores\" (donutClick)=\"onAreaClick($event['chartName'], $event['chartIndex'])\"\r\n [selectedCategoryIndex]=\"selectedAreaIndex\">\r\n \r\n\r\n
\r\n\r\n
\r\n\r\n -1\" [loadingData]=\"false\" [cardTitle]=\"'Boroughs'\"\r\n [cardSubTitle]=\"'Area: ' + selectedAreaName + ' | Category: ' + filterSubjKey\" [donutDataArray]=\"boroughScores\"\r\n (donutClick)=\"onBoroughClick($event['chartName'], $event['chartIndex'])\"\r\n [selectedCategoryIndex]=\"selectedBoroughIndex\">\r\n \r\n
\r\n\r\n
\r\n\r\n -1\" [loadingData]=\"false\" [cardTitle]=\"'Stations'\"\r\n [cardSubTitle]=\"'Borough: ' + selectedBoroughName + ' | Area: ' + selectedAreaName + ' | Category: ' + filterSubjKey\"\r\n [donutDataArray]=\"stationScores\" (donutClick)=\"onStationClick($event['chartName'], $event['chartIndex'])\"\r\n [selectedCategoryIndex]=\"selectedStationIndex\">\r\n \r\n
\r\n\r\n
\r\n\r\n -1\" [loadingData]=\"false\" [cardTitle]=\"'Watches'\"\r\n [cardSubTitle]=\"'Station: ' + selectedStationName + ' | Borough: ' + selectedBoroughName + ' | Area: ' + selectedAreaName + ' | Category: ' + filterSubjKey\"\r\n [donutDataArray]=\"watchScores\" (donutClick)=\"onWatchClick($event['chartName'], $event['chartIndex'])\"\r\n [selectedCategoryIndex]=\"selectedWatchIndex\">\r\n \r\n
\r\n\r\n\r\n
\r\n \r\n \r\n -1\" id=\"skillsMatrix\" [summaryDisplay]=\"true\" (smLoaded)=\"onSmLoaded($event)\" [hideTabs]=\"selectedCategory !== 'ALL'\" [activeTabKey]=\"selectedCategory\" [filterCats]=\"skillsMatrixFilterCats\" [watchId]=\"selectedWatchName\" [subTitle]=\"'Watch: ' + selectedWatchName + ' | Station: ' + selectedStationName + ' | Borough: ' + selectedBoroughName + ' | Area: ' + selectedAreaName + ' | Category: ' + filterSubjKey\" >\r\n
\r\n\r\n
\r\n

\r\n {{subjectMap | json}}\r\n

\r\n

\r\n {{areaBoroughs | json}}\r\n

\r\n

\r\n {{boroughStations | json}}\r\n

\r\n

\r\n {{stationWatches | json}}\r\n

\r\n \r\n

\r\n {{areaTotals | json}}\r\n

\r\n

\r\n {{boroughTotals | json}}\r\n

\r\n

\r\n {{stationTotals | json}}\r\n

\r\n

\r\n {{areaTotals.subjMeanCompletion('Salford and Trafford', 'MoC3')}} | {{areaTotals.subjMeanCompletion('Salford and Trafford', 'SP12 MDU AND EQUIP')}} | {{areaTotals.subjMeanCompletion('UK', 'MoC0')}}\r\n

\r\n

\r\n {{areaTotals.subjMeanCompletion('ALL', 'MoC3')}} | {{areaTotals.subjMeanCompletion('ALL', 'SP12 MDU AND EQUIP')}} | {{areaTotals.subjMeanCompletion('ALL', 'MoC0')}}\r\n

\r\n

\r\n {{areaTotals.subjMeanCompletion('ALL', 'ALL')}} | {{areaTotals.subjMeanCompletion('Salford and Trafford', 'ALL')}} | {{areaTotals.subjMeanCompletion('UK', 'ALL')}}\r\n

\r\n

\r\n {{categoryTotals | json}}\r\n

\r\n
\r\n \r\n\r\n \r\n\r\n
\r\n
","import { Component, OnInit, OnDestroy, OnChanges, Input, ChangeDetectorRef, Inject, LOCALE_ID, Output, EventEmitter } from '@angular/core';\r\nimport { formatPercent } from '@angular/common';\r\nimport { FormBuilder, FormGroup, AbstractControl, Validators, ValidatorFn, FormControl, FormArray } from '@angular/forms';\r\n\r\nimport { Curriculum, CurriculumSkillUsers, SkillUserStatus, SkillMatrix0 } from './skill-matrix-data';\r\nimport { skillMatrixData } from './skill-matrix-data-2';\r\nimport { DashboardService, CsodExpressClassPayload, ExpressClassUserObs, CsodExpressClassResponse } from './dashboard.service';\r\nimport { Subscription, Observable, forkJoin, BehaviorSubject, combineLatest } from 'rxjs';\r\nimport { AlertService, AlertLevels, AlertData } from 'app/core/alert.service';\r\nimport { filter, finalize, take } from 'rxjs/operators';\r\nimport { PersonService } from 'app/person/person.service';\r\nimport { Person } from 'app/person/person';\r\nimport { ConfigService } from 'app/core/config.service';\r\nimport { SkillsMatrix, SkillsMatrixCurricula, SkillsMatrixSubject, SkillsMatrixUser, SkillsMatrixContentType } from './skill-matrix';\r\nimport { Watch } from './watch';\r\nimport { AuthService } from 'app/core/auth.service';\r\nimport { ClaimService } from 'app/claim/claim.service';\r\nimport { ExtOrgUnitPerson, OrgUnitService } from 'app/org-unit/org-unit.service';\r\nimport { SkillMatrixSummaryComponent } from './skill-matrix-summary.component';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { Collapse, Modal } from 'bootstrap';\r\nimport { UitoolsService as UiToolsService } from 'app/core/uitools.service';\r\nimport { TrainingSubjectCategories } from './training-subject-categories';\r\nimport { ConfigSetting } from 'app/org-unit/config-setting';\r\n\r\nclass CurrSummStatus {\r\n curriculumId: number;\r\n summaryStatus: Array;\r\n};\r\n\r\ntype MatrixDataFunction = (a: number, b: number, c: any, d: string[]) => Observable;\r\n\r\ninterface TabCurr {\r\n [tabKey: string]: {\r\n tabCurrs: Array;\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'ug-skill-matrix',\r\n templateUrl: './skill-matrix.component.html',\r\n styleUrls: ['./skill-matrix.component.scss']\r\n})\r\n\r\nexport class SkillMatrixComponent implements OnInit, OnChanges, OnDestroy {\r\n\r\n @Input() personId: number;\r\n @Input() watchId: string;\r\n @Input() subTitle = '';\r\n @Input() matrixType = SkillsMatrixContentType.curricula;\r\n @Input() hideTabs = false;\r\n @Input() activeTabKey: string = null;\r\n @Input() filterCats: Array = [];\r\n @Input() summaryDisplay = false;\r\n @Output() smLoaded: EventEmitter = new EventEmitter(false);\r\n\r\n filterControls: FormGroup = new FormGroup(\r\n {\r\n 'showMe': new FormControl(true),\r\n 'showDirect': new FormControl(true),\r\n 'showIndirect': new FormControl(true)\r\n }\r\n );\r\n\r\n watchSelect: FormGroup = new FormGroup(\r\n {\r\n 'watchId': new FormControl()\r\n }\r\n )\r\n\r\n extraUserControls: FormGroup = new FormGroup(\r\n {\r\n 'extraUser': new FormControl()\r\n }\r\n )\r\n\r\n bulkSubmitForm: FormGroup = new FormGroup(\r\n {\r\n 'trainingTitle': new FormControl(''),\r\n 'curriculaIndex': new FormControl(-1),\r\n 'userSkillIndex': new FormControl(-1),\r\n 'curriculaKey': new FormControl(''),\r\n 'subjectKey': new FormControl(''),\r\n 'people': new FormArray([])\r\n }\r\n );\r\n\r\n bookSessionForm: FormGroup = new FormGroup(\r\n {\r\n 'formSelectedSession': new FormControl(-1),\r\n 'radioCreateSelect': new FormControl('select'),\r\n 'trainingTitle': new FormControl(''),\r\n 'curriculaIndex': new FormControl(-1),\r\n 'userSkillIndex': new FormControl(-1),\r\n 'curriculaKey': new FormControl(''),\r\n 'subjectKey': new FormControl(''),\r\n 'people': new FormArray([]),\r\n 'newSessionStartDate': new FormControl(),\r\n 'newSessionEndDate': new FormControl(),\r\n 'expiryDate': new FormControl()\r\n }\r\n );\r\n\r\n userList: Array = [];\r\n personList: Array = [];\r\n watchList: Watch[] = [];\r\n\r\n skillsMatrixData: SkillsMatrix = new SkillsMatrix();\r\n curriculaKeys: Array = [];\r\n userKeys: Array = [];\r\n watchUsers: Array = [];\r\n watchUserMap = new Map();\r\n selectedWatchMemberId = -1;\r\n tabbedCurricula: Array> = [];\r\n\r\n extraPeople: Array = [];\r\n\r\n wmCount = 0;\r\n cmCount = 0;\r\n ffCount = 0;\r\n\r\n fullFunc = false;\r\n\r\n statusDescriptionMap = new Map();\r\n statusColourMap = new Map();\r\n statusSymbolMap = new Map();\r\n\r\n skillModalCurrIndex = 0;\r\n skillModalSkillIndex = 0;\r\n skillModalUserIndex = 0;\r\n\r\n skillModalCurrKey = '';\r\n skillModalSkillKey = '';\r\n skillModalUserKey = '';\r\n\r\n skillMatrixSubs = new Subscription();\r\n\r\n loadingData = true;\r\n currFilterText = '';\r\n addingUser = false;\r\n awaitingCompleteConfirmation = false;\r\n\r\n exceptionData = {\r\n 'SKILL_MATRIX': {\r\n level: AlertLevels.ERROR,\r\n code: 'SMX-001',\r\n message: 'Error retrieving skill matrix data'\r\n } as AlertData,\r\n 'EXPRESS_CLASS': {\r\n level: AlertLevels.ERROR,\r\n code: 'SMX-002',\r\n message: 'Error creating Express Class'\r\n } as AlertData,\r\n 'WATCH_PEOPLE': {\r\n level: AlertLevels.ERROR,\r\n code: 'SMX-003',\r\n message: 'Error retrieving watch members'\r\n } as AlertData,\r\n 'EXTRA_PERSON': {\r\n level: AlertLevels.ERROR,\r\n code: 'SMX-003',\r\n message: 'Error retrieving watch members'\r\n } as AlertData,\r\n }\r\n currSummaryStatus = new Map();\r\n\r\n matrixDataFunction: MatrixDataFunction;\r\n\r\n tabData: Array = [\r\n // {\r\n // key: 'MoC',\r\n // title: 'MoC',\r\n // categories: ['MoC0', 'MoC3', 'MoC6', 'MoC12', 'MoC24'],\r\n // subjectId: 854\r\n // },\r\n // {\r\n // key: 'SP',\r\n // title: 'Special Appliances',\r\n // categories: ['SAS12', 'SAS6', 'SAS', 'SP12 MDU AND EQUIP', 'SP3 SW TECH', 'SP6 CSU O', 'SP6 TRU CH O', 'SP6 WF U O'],\r\n // subjectId: 859\r\n // },\r\n // {\r\n // key: 'OS',\r\n // title: 'Operational Skills',\r\n // categories: ['OS', 'OS FI TIER 1', 'OS IRS'],\r\n // subjectId: 855\r\n // },\r\n // {\r\n // key: 'IC',\r\n // title: 'Incident Command',\r\n // categories: ['IC', 'IC CSRO', 'IC GA-AM', 'IC GA-CM', 'IC GA-GM', 'IC GA-SM'],\r\n // subjectId: 857\r\n // },\r\n // {\r\n // key: 'EFAD',\r\n // title: 'Emergency Fire Appliance Driver',\r\n // categories: ['EFAD', 'EFAD FURTHER TRAINING', 'EFAD INITIAL', 'EFAD LGV', 'EFAD LGV CAT C', 'EFAD REFRESH'],\r\n // subjectId: 856\r\n // },\r\n // {\r\n // key: 'CT',\r\n // title: 'Corporate Training',\r\n // categories: ['CORP', 'CT SW FFR I', 'CT SW FR BO I', 'CT SW FR BO IN', 'CT SW FR BO R'],\r\n // subjectId: 858\r\n // },\r\n // {\r\n // key: 'OAS',\r\n // title: 'Ops and Safety Alerts',\r\n // categories: ['OAS'],\r\n // subjectId: -1\r\n // }\r\n ];\r\n\r\n tabMap: Map> = new Map>();\r\n selectedTabCurr: Array = [];\r\n\r\n sessionData = [\r\n {\r\n title: 'Session 1',\r\n id: 0,\r\n startDateTime: new Date('2022-03-18T11:00:00'),\r\n endDateTime: new Date('2022-03-18T14:30:00'),\r\n parts: [\r\n {\r\n title: 'Part A',\r\n startDateTime: new Date('2022-03-18T11:00:00'),\r\n endDateTime: new Date('2022-03-18T11:30:00')\r\n },\r\n {\r\n title: 'Part B',\r\n startDateTime: new Date('2022-03-18T14:00:00'),\r\n endDateTime: new Date('2022-03-18T14:30:00')\r\n }\r\n ]\r\n },\r\n {\r\n title: 'Session 2',\r\n id: 1,\r\n startDateTime: new Date('2022-03-19T10:00:00'),\r\n endDateTime: new Date('2022-03-19T10:30:00'),\r\n parts: [\r\n {\r\n title: 'Part A',\r\n startDateTime: new Date('2022-03-19T10:00:00'),\r\n endDateTime: new Date('2022-03-19T10:30:00')\r\n }\r\n ]\r\n },\r\n {\r\n title: 'Session 3',\r\n id: 2,\r\n startDateTime: new Date('2022-03-20T15:00:00'),\r\n endDateTime: new Date('2022-03-20T15:30:00'),\r\n parts: [\r\n {\r\n title: 'Part A',\r\n startDateTime: new Date('2022-03-20T15:00:00'),\r\n endDateTime: new Date('2022-03-20T15:30:00')\r\n }\r\n ]\r\n }\r\n ];\r\n\r\n // selectedSession = this.sessionData[0];\r\n selectedSession = {};\r\n\r\n activePaneId: string = 'sm-pane-0';\r\n peopleDivList: string[];\r\n\r\n get currFilterActive(): boolean {\r\n return this.currFilterText.length > 0;\r\n }\r\n\r\n // get selectedSession(): any {\r\n // return this.bookSessionForm.get('formSelectedSession');\r\n // }\r\n\r\n constructor(\r\n @Inject(LOCALE_ID) private locale: string,\r\n private fb: FormBuilder,\r\n private alertService: AlertService,\r\n private authService: AuthService,\r\n // private cdCheck: ChangeDetectorRef,\r\n private claimService: ClaimService,\r\n private configService: ConfigService,\r\n private dashboardService: DashboardService,\r\n private orgUnitService: OrgUnitService,\r\n private personService: PersonService,\r\n private uiService: UiToolsService,\r\n private route: ActivatedRoute\r\n ) { }\r\n\r\n get hideMe() {\r\n return !this.filterControls.get('showMe').value;\r\n }\r\n\r\n get hideDirect() {\r\n return !this.filterControls.get('showDirect').value;\r\n }\r\n\r\n get hideIndirect() {\r\n return !this.filterControls.get('showIndirect').value;\r\n }\r\n\r\n // function matrixDataFunction(fn: MatrixDataFunction) {}\r\n\r\n ngOnInit() {\r\n\r\n this.statusDescriptionMap.set('1', 'Not Started / Expired');\r\n this.statusDescriptionMap.set('2', 'Not Started / Expired');\r\n this.statusDescriptionMap.set('3', 'Not Started / Expired');\r\n this.statusDescriptionMap.set('4', 'Not Started / Expired');\r\n this.statusDescriptionMap.set('5', 'Complete');\r\n this.statusDescriptionMap.set('7', 'Awaiting sync');\r\n this.statusDescriptionMap.set('8', 'Updating');\r\n\r\n this.statusColourMap.set('1', 'danger');\r\n this.statusColourMap.set('2', 'danger');\r\n this.statusColourMap.set('3', 'danger');\r\n this.statusColourMap.set('4', 'danger');\r\n this.statusColourMap.set('5', 'success');\r\n this.statusColourMap.set('7', 'danger');\r\n this.statusColourMap.set('8', 'info');\r\n\r\n this.statusSymbolMap.set('1', 'fas fa-times-circle');\r\n this.statusSymbolMap.set('2', 'fas fa-times-circle');\r\n this.statusSymbolMap.set('3', 'fas fa-times-circle');\r\n this.statusSymbolMap.set('4', 'fas fa-times-circle');\r\n this.statusSymbolMap.set('5', 'fas fa-check-circle');\r\n this.statusSymbolMap.set('7', 'fas fa-ellipsis-h');\r\n this.statusSymbolMap.set('8', 'fas fa-spinner fa-spin');\r\n\r\n this.loadingData = true;\r\n\r\n console.log(`Param: ${JSON.stringify(this.route.snapshot.data)}`);\r\n console.log(`Param: ${JSON.stringify(this.route.snapshot.data['contentType'])}`);\r\n console.log(`Input: ${JSON.stringify(this.matrixType)}`);\r\n console.log(`Watch Id Input: ${this.watchId}`);\r\n console.log(`Person Id Input: ${this.personId}`);\r\n\r\n this.matrixType = this.route.snapshot.data['matrixType'];\r\n\r\n this.matrixDataFunction = this.matrixType === SkillsMatrixContentType.jobRoles ?\r\n this.dashboardService.getJobRoleMatrix :\r\n this.dashboardService.getSkillsMatrix;\r\n\r\n this.skillMatrixSubs.add(\r\n forkJoin(\r\n {\r\n smt: this.orgUnitService.getConfigSettingsByKey('SM-TABS') as Observable>,\r\n divs: this.orgUnitService.getConfigSettingsByKey('CSOD-DIVS') as Observable>,\r\n tsc: this.dashboardService.getTrainingSubjectCategories() as Observable>,\r\n // ud: this.authService.userDetailSubj.pipe(take(1)) as BehaviorSubject\r\n wl: this.dashboardService.getWatchList()\r\n }\r\n )\r\n // combineLatest(\r\n // this.orgUnitService.getConfigSettingsByKey('SM-CATS'),\r\n // this.orgUnitService.getConfigSettingsByKey('CSOD-DIVS'),\r\n // this.dashboardService.getTrainingSubjectCategories(),\r\n // this.authService.userDetailSubj.pipe(take(1))\r\n // )\r\n .subscribe( ({smt, divs, tsc, wl}) => {\r\n let tabArray = [] as Array;\r\n if (smt.length > 0) {\r\n tabArray = smt[0].configValue.split(',');\r\n }\r\n this.tabData = this.orgUnitService.sortTabs(tabArray, tsc);\r\n\r\n this.peopleDivList = divs.map(d => d.configValue);\r\n console.log(`CSOD Divs: ${this.peopleDivList}`);\r\n\r\n this.watchList = wl;\r\n\r\n this.skillMatrixSubs.add(\r\n this.authService.userDetailSubj.subscribe(\r\n (ud: Person) => {\r\n if (this.watchId) {\r\n this.watchSelect.get('watchId').setValue(this.watchId);\r\n }\r\n if (!this.watchId && ud.id !== this.personId) {\r\n this.personId = ud.id;\r\n this.watchSelect.get('watchId').setValue(ud.watch);\r\n }\r\n this.fullFunc = ud.watchOfficerOrAbove || false;\r\n this.loadWatchUsers();\r\n this.loadSkillsMatrix();\r\n }\r\n )\r\n )\r\n\r\n this.skillMatrixSubs.add(\r\n this.personService.getPeopleInExternalOu('Division', this.peopleDivList).subscribe(\r\n (pl: Array) => {\r\n this.personList = pl.filter(\r\n p => {return p.externalUserId}\r\n ).sort(\r\n (a, b) => { return (a.externalUserId > b.externalUserId ? 1 : -1); }\r\n );\r\n }\r\n )\r\n )\r\n\r\n // if (!this.watchId && ud.id !== this.personId) {\r\n // this.personId = ud.id;\r\n // this.fullFunc = ud.watchOfficerOrAbove || false;\r\n // this.watchSelect.get('watchId').setValue(ud.watch);\r\n // this.loadWatchUsers();\r\n // this.loadSkillsMatrix();\r\n // }\r\n })\r\n )\r\n\r\n // this.skillMatrixSubs.add(\r\n // this.orgUnitService.getConfigSettingsByKey('SM-CATS').pipe(\r\n // switchMap(smt => this.dashboardService.getTrainingSubjectCategories().pipe(\r\n // map(tsc => [smt, tsc])\r\n // )\r\n // ))\r\n // .subscribe(\r\n // res => {\r\n // const smt = res[0] as Array;\r\n // let tabArray = [] as Array;\r\n // if (smt.length > 0) {\r\n // // tabArray = smt[0].configValue.split(',');\r\n // tabArray = 'All,MoC,Operational Skills,EFAD,Incident Command,Corporate Training,Special Appliances,Ops and Safety Alerts'.split(',');\r\n // }\r\n // const tsc = res[1] as Array;\r\n // // this.tabData = [];\r\n // // this.tabData = this.tabData.concat(tsc);\r\n // this.tabData = this.orgUnitService.sortTabs(tabArray, tsc);\r\n // }\r\n // )\r\n // );\r\n\r\n // if (!this.watchId) {\r\n // this.skillMatrixSubs.add(\r\n // this.authService.userDetailSubj.subscribe(\r\n // (ud: Person) => {\r\n // if (ud.id !== this.personId) {\r\n // this.personId = ud.id;\r\n // this.fullFunc = ud.watchOfficerOrAbove || false;\r\n // this.watchSelect.get('watchId').setValue(ud.watch);\r\n // this.loadWatchUsers();\r\n // this.loadSkillsMatrix();\r\n // }\r\n // }\r\n // )\r\n // )\r\n // }\r\n\r\n // this.skillMatrixSubs.add(\r\n // // this.personService.getPeopleInExternalOu('Division', ['1000ERD', '1399SER']).subscribe( // TODO: Remove hard coding\r\n // this.personService.getPeopleInExternalOu('Division', this.peopleDivList).subscribe( // TODO: Remove hard coding\r\n // (pl: Array) => {\r\n // this.personList = pl.filter(\r\n // p => {return p.externalUserId}\r\n // ).sort(\r\n // (a, b) => { return (a.externalUserId > b.externalUserId ? 1 : -1); }\r\n // );\r\n // }\r\n // )\r\n // )\r\n // this.skillMatrixSubs.add(\r\n // this.dashboardService.getWatchList().subscribe(\r\n // (wl: Array) => { this.watchList = wl; }\r\n // )\r\n // )\r\n\r\n this.skillMatrixSubs.add(\r\n this.bookSessionForm.get('formSelectedSession').valueChanges.subscribe(\r\n (sIdx: number) => {\r\n if (sIdx > -1) {\r\n this.selectedSession = this.sessionData[sIdx];\r\n }\r\n }\r\n )\r\n )\r\n this.skillMatrixSubs.add(\r\n this.bookSessionForm.get('newSessionStartDate').valueChanges.subscribe(\r\n (startDt) => {\r\n this.selectedSession['startDateTime'] = startDt;\r\n }\r\n )\r\n )\r\n this.skillMatrixSubs.add(\r\n this.bookSessionForm.get('newSessionEndDate').valueChanges.subscribe(\r\n (endDt) => {\r\n this.selectedSession['endDateTime'] = endDt;\r\n }\r\n )\r\n )\r\n }\r\n\r\n ngOnChanges() {\r\n this.watchSelect.get('watchId').setValue(this.watchId);\r\n this.loadingData = true;\r\n this.loadWatchUsers();\r\n this.loadSkillsMatrix();\r\n if (this.activeTabKey !== null) {\r\n const activeTabIndex = this.tabData.findIndex(td => td.key === this.activeTabKey);\r\n if (activeTabIndex > -1) {\r\n this.activePaneId = `#sm-pane-${activeTabIndex}`;\r\n // this.activateTab(this.activePaneId);\r\n }\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.skillMatrixSubs.unsubscribe();\r\n }\r\n\r\n loadWatchUsers() {\r\n // this.skillMatrixSubs.add(\r\n // this.orgUnitService.getExtOrgUnitPeople('CSOD', this.watchSelect.get('watchId').value, 'Watch').subscribe( // TODO: Remove hard coding\r\n // (wp: Array) => {\r\n // this.watchUsers = wp;\r\n // this.watchUsers.forEach( wu => { this.watchUserMap.set(wu.personId, wu) });\r\n // },\r\n // err => { this.alertService.createAlert2(this.exceptionData.WATCH_PEOPLE, err); }\r\n // )\r\n // )\r\n }\r\n\r\n loadSkillsMatrix() {\r\n this.watchSelect.disable();\r\n this.skillsMatrixData = new SkillsMatrix();\r\n // this.tabMap.clear();\r\n\r\n if (this.matrixType === SkillsMatrixContentType.jobRoles) {\r\n this.skillMatrixSubs.add(\r\n this.dashboardService.getJobRoleMatrix(\r\n // this.matrixDataFunction(\r\n this.configService.skillMatrixFaId, this.personId, this.watchSelect.get('watchId').value, this.extraPeople\r\n )\r\n .pipe(\r\n finalize( () => {\r\n this.loadingData = false;\r\n this.setTabCurr(this.tabData[0].key);\r\n // this.activateTab('#pane-0');\r\n this.watchSelect.enable();\r\n this.smLoaded.emit(true);\r\n } )\r\n )\r\n .subscribe(\r\n (sm: SkillsMatrix) => {\r\n this.skillsMatrixData = sm;\r\n this.userKeys = Object.keys(this.skillsMatrixData.users);\r\n\r\n if (this.skillsMatrixData.contentType === SkillsMatrixContentType.jobRoles) {\r\n this.curriculaKeys = Object.keys(this.skillsMatrixData.curricula).sort(\r\n (a, b) => {\r\n return this.skillsMatrixData.curricula[a].category.localeCompare(this.skillsMatrixData.curricula[b].category);\r\n }\r\n );\r\n this.userKeys.sort((a, b) => {\r\n if (this.skillsMatrixData.users[a].currCats.join(',') > this.skillsMatrixData.users[b].currCats.join(',')) {\r\n return 1;\r\n } else if (this.skillsMatrixData.users[a].currCats.join(',') < this.skillsMatrixData.users[b].currCats.join(',')) {\r\n return -1;\r\n } else {\r\n return (this.skillsMatrixData.users[a] || {})['userName'].localeCompare((this.skillsMatrixData[b] || {})['userName'])\r\n }\r\n });\r\n } else {\r\n this.curriculaKeys = Object.keys(this.skillsMatrixData.curricula).sort(\r\n (a, b) => {\r\n const aName: string = this.skillsMatrixData.curricula[a].name;\r\n const bName: string = this.skillsMatrixData.curricula[b].name;\r\n return aName < bName ? -1 : 1;\r\n }\r\n );\r\n // TODO: Remove hard coding\r\n this.userKeys.sort((a, b) => {\r\n if (this.skillsMatrixData.users[a].position === 'Watch Manager B') {\r\n return -1;\r\n }\r\n if (this.skillsMatrixData.users[a].position === 'Watch Manager B') {\r\n if (this.skillsMatrixData.users[b].position === 'Crew Manager') {\r\n return 1;\r\n } else {\r\n return -1;\r\n }\r\n }\r\n if (this.skillsMatrixData.users[a].position === 'Firefighter') {\r\n return 1\r\n }\r\n return 1;\r\n }\r\n )\r\n if (this.userKeys.length > 0) {\r\n this.selectedWatchMemberId = Number(this.userKeys[0])\r\n }\r\n }\r\n\r\n // TODO: Remove hard coding\r\n this.wmCount = this.userKeys.reduce(\r\n (a, c) => { return a + (this.skillsMatrixData.users[c].position === 'Watch Manager B' ? 1 : 0)}\r\n , 0)\r\n this.cmCount = this.userKeys.reduce(\r\n (a, c) => { return a + (this.skillsMatrixData.users[c].position === 'Crew Manager' ? 1 : 0)}\r\n , 0)\r\n this.ffCount = this.userKeys.reduce(\r\n (a, c) => { return a + (this.skillsMatrixData.users[c].position === 'Firefighter' ? 1 : 0)}\r\n , 0)\r\n\r\n this.recalcSummStatus();\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.SKILL_MATRIX, err);\r\n }\r\n )\r\n )\r\n\r\n } else {\r\n this.skillMatrixSubs.add(\r\n forkJoin(\r\n {\r\n wp: this.orgUnitService.getExtOrgUnitPeople(\r\n 'CSOD', this.watchSelect.get('watchId').value, 'Watch'\r\n ) as Observable>,\r\n sm: this.dashboardService.getSkillsMatrix(\r\n this.configService.skillMatrixFaId, this.personId, this.watchSelect.get('watchId').value, this.extraPeople\r\n ) as Observable\r\n }\r\n )\r\n .pipe(\r\n finalize( () => {\r\n this.watchSelect.enable();\r\n if (this.activeTabKey !== null) {\r\n const tabIdx = this.tabData.findIndex(td => td.key === this.activeTabKey)\r\n if (tabIdx > -1) {\r\n this.setTabCurr(this.activeTabKey);\r\n this.activePaneId = `sm-pane-${tabIdx}`;\r\n this.activateTab(this.activePaneId);\r\n }\r\n } else {\r\n this.setTabCurr(this.tabData[0].key);\r\n }\r\n // this.activateTab('#pane-0');\r\n this.loadingData = false;\r\n this.smLoaded.emit(true);\r\n } )\r\n )\r\n .subscribe(\r\n ({wp, sm}) => {\r\n this.watchUsers = wp;\r\n this.watchUsers.forEach( wu => { this.watchUserMap.set(wu.personId, wu) });\r\n \r\n this.skillsMatrixData = sm;\r\n this.userKeys = Object.keys(this.skillsMatrixData.users);\r\n\r\n if (this.skillsMatrixData.contentType === SkillsMatrixContentType.jobRoles) {\r\n this.curriculaKeys = Object.keys(this.skillsMatrixData.curricula).sort(\r\n (a, b) => {\r\n return this.skillsMatrixData.curricula[a].category.localeCompare(this.skillsMatrixData.curricula[b].category);\r\n }\r\n );\r\n this.userKeys.sort((a, b) => {\r\n if (this.skillsMatrixData.users[a].currCats.join(',') > this.skillsMatrixData.users[b].currCats.join(',')) {\r\n return 1;\r\n } else if (this.skillsMatrixData.users[a].currCats.join(',') < this.skillsMatrixData.users[b].currCats.join(',')) {\r\n return -1;\r\n } else {\r\n return (this.skillsMatrixData.users[a] || {})['userName'].localeCompare((this.skillsMatrixData[b] || {})['userName'])\r\n }\r\n });\r\n } else {\r\n this.curriculaKeys = Object.keys(this.skillsMatrixData.curricula).sort(\r\n (a, b) => {\r\n const aName: string = this.skillsMatrixData.curricula[a].name;\r\n const bName: string = this.skillsMatrixData.curricula[b].name;\r\n return aName < bName ? -1 : 1;\r\n }\r\n );\r\n\r\n this.tabMap.clear();\r\n this.curriculaKeys.forEach(ck => {\r\n this.tabData.forEach(td => {\r\n if (td.categories.find(c => c === this.skillsMatrixData.curricula[ck].category)) {\r\n this.tabMap.set(td.key, (this.tabMap.get(td.key) || []).concat(ck) );\r\n // console.log('Found category key ' + td.key + ' Curr Key ' + ck);\r\n }\r\n })\r\n });\r\n // console.dir('Tab Map' + this.tabMap);\r\n\r\n // TODO: Remove hard coding\r\n this.userKeys.sort((a, b) => {\r\n if (this.skillsMatrixData.users[a].position === 'Watch Manager B') {\r\n return -1;\r\n }\r\n if (this.skillsMatrixData.users[a].position === 'Watch Manager B') {\r\n if (this.skillsMatrixData.users[b].position === 'Crew Manager') {\r\n return 1;\r\n } else {\r\n return -1;\r\n }\r\n }\r\n if (this.skillsMatrixData.users[a].position === 'Crew Manager' &&\r\n this.skillsMatrixData.users[b].position === 'Firefighter') {\r\n return -1;\r\n }\r\n\r\n if (this.skillsMatrixData.users[a].position === 'Firefighter') {\r\n return 1\r\n }\r\n return 1;\r\n }\r\n )\r\n }\r\n\r\n // TODO: Remove hard coding\r\n this.wmCount = this.userKeys.reduce(\r\n (a, c) => { return a + (this.skillsMatrixData.users[c].position === 'Watch Manager B' ? 1 : 0)}\r\n , 0)\r\n this.cmCount = this.userKeys.reduce(\r\n (a, c) => { return a + (this.skillsMatrixData.users[c].position === 'Crew Manager' ? 1 : 0)}\r\n , 0)\r\n this.ffCount = this.userKeys.reduce(\r\n (a, c) => { return a + (this.skillsMatrixData.users[c].position === 'Firefighter' ? 1 : 0)}\r\n , 0)\r\n\r\n this.recalcSummStatus();\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.SKILL_MATRIX, err);\r\n }\r\n )\r\n )\r\n\r\n }\r\n }\r\n\r\n loadExtraUser(personId: number) {\r\n this.skillMatrixSubs.add(\r\n this.personService.getPersonExternalOus(personId).subscribe(\r\n (p: ExtOrgUnitPerson) => {\r\n this.watchUserMap.set(personId, p);\r\n },\r\n err => { this.alertService.createAlert2(this.exceptionData.EXTRA_PERSON, err); }\r\n )\r\n );\r\n\r\n if (this.matrixType === SkillsMatrixContentType.jobRoles) {\r\n this.skillMatrixSubs.add(\r\n this.dashboardService.getJobRoleMatrix(this.configService.skillMatrixFaId, null, null, [`${personId}`])\r\n // this.matrixDataFunction(this.configService.skillMatrixFaId, null, null, [`${personId}`])\r\n .subscribe(\r\n (sm: SkillsMatrix) => {\r\n const currKeys = Object.keys(sm.curricula)\r\n const userKeys = Object.keys(sm.users)\r\n currKeys.forEach( ck => {\r\n const subjKeys = Object.keys(sm.curricula[ck].subjects)\r\n subjKeys.forEach( sk => {\r\n userKeys.forEach( uk => {\r\n if (!this.skillsMatrixData.curricula[ck]) {\r\n this.skillsMatrixData.curricula[ck] = {\r\n name: sm.curricula[ck].name,\r\n category: sm.curricula[ck].category,\r\n subjects: {}\r\n };\r\n }\r\n if (!this.skillsMatrixData.curricula[ck].subjects[sk]) {\r\n this.skillsMatrixData.curricula[ck].subjects[sk] = {\r\n deepLinkUrl: sm.curricula[ck].subjects[sk].deepLinkUrl,\r\n skillName: sm.curricula[ck].subjects[sk].skillName,\r\n learningObjectId: sm.curricula[ck].subjects[sk].learningObjectId,\r\n users: {}\r\n };\r\n }\r\n if (sm.curricula[ck].subjects[sk].users[uk]) {\r\n this.skillsMatrixData.curricula[ck].subjects[sk].users[uk] = {\r\n statusId: sm.curricula[ck].subjects[sk].users[uk].statusId\r\n }\r\n } else {\r\n this.skillsMatrixData.curricula[ck].subjects[sk].users[uk] = { statusId: '6' } // TODO: Remove hard coding\r\n }\r\n })\r\n })\r\n })\r\n userKeys.forEach( uk => {\r\n this.skillsMatrixData.users[uk] = sm.users[uk]\r\n })\r\n this.userKeys = this.userKeys.concat(userKeys);\r\n // this.cdCheck.detectChanges();\r\n this.recalcSummStatus();\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.SKILL_MATRIX, err);\r\n }\r\n )\r\n )\r\n\r\n } else {\r\n this.skillMatrixSubs.add(\r\n this.dashboardService.getSkillsMatrix(this.configService.skillMatrixFaId, null, null, [`${personId}`])\r\n // this.matrixDataFunction(this.configService.skillMatrixFaId, null, null, [`${personId}`])\r\n .subscribe(\r\n (sm: SkillsMatrix) => {\r\n const currKeys = Object.keys(sm.curricula)\r\n const userKeys = Object.keys(sm.users)\r\n currKeys.forEach( ck => {\r\n const subjKeys = Object.keys(sm.curricula[ck].subjects)\r\n subjKeys.forEach( sk => {\r\n userKeys.forEach( uk => {\r\n if (!this.skillsMatrixData.curricula[ck]) {\r\n this.skillsMatrixData.curricula[ck] = {\r\n name: sm.curricula[ck].name,\r\n category: sm.curricula[ck].category,\r\n subjects: {}\r\n };\r\n }\r\n if (!this.skillsMatrixData.curricula[ck].subjects[sk]) {\r\n this.skillsMatrixData.curricula[ck].subjects[sk] = {\r\n deepLinkUrl: sm.curricula[ck].subjects[sk].deepLinkUrl,\r\n skillName: sm.curricula[ck].subjects[sk].skillName,\r\n learningObjectId: sm.curricula[ck].subjects[sk].learningObjectId,\r\n users: {}\r\n };\r\n }\r\n if (sm.curricula[ck].subjects[sk].users[uk]) {\r\n this.skillsMatrixData.curricula[ck].subjects[sk].users[uk] = {\r\n statusId: sm.curricula[ck].subjects[sk].users[uk].statusId\r\n }\r\n } else {\r\n this.skillsMatrixData.curricula[ck].subjects[sk].users[uk] = { statusId: '6' } // TODO: Remove hard coding\r\n }\r\n })\r\n })\r\n })\r\n userKeys.forEach( uk => {\r\n this.skillsMatrixData.users[uk] = sm.users[uk]\r\n })\r\n this.userKeys = this.userKeys.concat(userKeys);\r\n // this.cdCheck.detectChanges();\r\n this.recalcSummStatus();\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.SKILL_MATRIX, err);\r\n }\r\n )\r\n )\r\n\r\n }\r\n }\r\n\r\n statusHeaderColour(statusId: string): string {\r\n return 'text-' + (this.statusColourMap.get(statusId) || 'secondary');\r\n }\r\n\r\n statusHeaderColourClass(userKey: string, currKey: string): string {\r\n let statusClass = 'text-secondary'\r\n if (this.currAssignedToUser(userKey, currKey)) {\r\n statusClass = 'text-' + (this.statusColourMap.get(this.getCurrUserSummary(currKey, userKey)['status']) || 'secondary');\r\n }\r\n return statusClass\r\n }\r\n\r\n statusColour(statusId: string): string {\r\n return 'bg-' + (this.statusColourMap.get(statusId) || 'secondary');\r\n }\r\n\r\n statusColourClass(userKey: string, subjKey: string, currKey: string): string {\r\n return this.currAssignedToUser(userKey, currKey) ?\r\n 'bg-' + (this.statusColourMap.get(\r\n (this.skillsMatrixData.curricula[currKey].subjects[subjKey].users[userKey] || {})['statusId']\r\n ) || 'secondary') :\r\n 'table-light'\r\n }\r\n\r\n statusSymbol(statusId: string): string {\r\n return this.statusSymbolMap.get(statusId) || 'fas fa-question-circle';\r\n }\r\n\r\n statusSymbolClass(userKey: string, subjKey: string, currKey: string): string {\r\n // if (!currKey || !subjKey || !userKey) { return; }\r\n return this.currAssignedToUser(userKey, currKey) ?\r\n this.statusSymbolMap.get(\r\n (this.skillsMatrixData.curricula[currKey].subjects[subjKey].users[userKey] || {})['statusId']\r\n ) || 'fas fa-question-circle' :\r\n 'fas fa-minus text-secondary'\r\n }\r\n\r\n userHeaderClass(user: SkillUserStatus): string {\r\n if (user.me) {\r\n return 'table-light';\r\n } else if (user.directReport) {\r\n return 'table-light text-muted';\r\n } else {\r\n return 'table-light fw-normal';\r\n }\r\n }\r\n\r\n summaryStatus(curriculumIndex: number, skillUserIndex: number): number {\r\n const userlist: Array = skillMatrixData.curricula[curriculumIndex].userSkills[skillUserIndex].skillUserStatus;\r\n return Math.min(...userlist.map( u => u.statusId));\r\n }\r\n\r\n currAssignedToUser(userKey: string, currKey: string) {\r\n return (\r\n (this.skillsMatrixData.users[userKey] || {})['currCats'] || []).includes((this.skillsMatrixData.curricula[currKey] || {})['category']\r\n )\r\n }\r\n\r\n trackByFn(index: any, item: any) {\r\n return index;\r\n }\r\n\r\n recalcSummStatus() {\r\n this.curriculaKeys.forEach( ck => {\r\n const curricula: SkillsMatrixCurricula = this.skillsMatrixData.curricula[ck];\r\n const subjectKeys: Array = Object.keys(curricula.subjects);\r\n const userStatus = {}\r\n subjectKeys.forEach( sk => {\r\n const subject: SkillsMatrixSubject = curricula.subjects[sk]\r\n const subjectUserKeys = Object.keys(subject.users)\r\n subjectUserKeys.forEach( uk => {\r\n const userData = this.skillsMatrixData.users[uk];\r\n\r\n // if (!userData.currCats.includes(curricula.category)) {\r\n // return; // continue with next record\r\n // }\r\n\r\n // TODO: Remove hard coding\r\n if (!userStatus[uk]) {\r\n userStatus[uk] = {\r\n status: subject.users[uk].statusId,\r\n percentComplete: subject.users[uk].statusId === '5' ? (1 / subjectKeys.length) : 0,\r\n extra: userData.extra\r\n }\r\n } else {\r\n userStatus[uk]['status'] =\r\n userStatus[uk]['status'] > subject.users[uk].statusId ? userStatus[uk]['status'] : subject.users[uk].statusId;\r\n userStatus[uk]['percentComplete'] += (subject.users[uk].statusId === '5' ? (1 / subjectKeys.length) : 0) || 0;\r\n userStatus[uk]['extra'] = userData.extra;\r\n }\r\n\r\n })\r\n })\r\n this.currSummaryStatus.set(ck, userStatus);\r\n })\r\n\r\n }\r\n\r\n modifySkill(currKey: string, subjKey: string, userKey: string ) {\r\n this.awaitingCompleteConfirmation = false;\r\n this.skillModalCurrKey = currKey;\r\n this.skillModalSkillKey = subjKey;\r\n this.skillModalUserKey = userKey;\r\n\r\n const skillModal = new Modal(document.getElementById('skillModal'));\r\n skillModal.show();\r\n }\r\n\r\n updateSkillStatus() {\r\n this.awaitingCompleteConfirmation = true;\r\n }\r\n\r\n onConfirmCompleteClick(newStatusId: string) {\r\n // TODO: Remove hard coding\r\n const prevStatusId: string =\r\n this.skillsMatrixData.curricula[this.skillModalCurrKey]\r\n .subjects[this.skillModalSkillKey]\r\n .users[this.skillModalUserKey] || {}['statusId'] || '6';\r\n this.skillsMatrixData.curricula[this.skillModalCurrKey]\r\n .subjects[this.skillModalSkillKey]\r\n .users[this.skillModalUserKey] = {statusId: '8'};\r\n\r\n const eppl: CsodExpressClassPayload = {\r\n loId: this.skillsMatrixData.curricula[this.skillModalCurrKey].subjects[this.skillModalSkillKey].learningObjectId,\r\n userStatus: [\r\n {\r\n externalId: this.skillsMatrixData.users[this.skillModalUserKey].externalId,\r\n status: 'Passed',\r\n score: 100,\r\n comment: `Completed in Skills Matrix by ${this.authService.me.displayName}`\r\n } as ExpressClassUserObs\r\n ]\r\n } as CsodExpressClassPayload;\r\n\r\n this.dashboardService.createCsodExpressClass(eppl).subscribe(\r\n (r: CsodExpressClassResponse) => {\r\n this.claimService.completeSMClaims(Number(this.skillModalSkillKey), this.authService.me.id, [Number(this.skillModalUserKey)])\r\n .subscribe(\r\n smr => {\r\n this.recalcSummStatus();\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.EXPRESS_CLASS, err);\r\n this.skillsMatrixData.curricula[this.skillModalCurrKey]\r\n .subjects[this.skillModalSkillKey]\r\n .users[this.skillModalUserKey] = {statusId: prevStatusId};\r\n }\r\n )\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.EXPRESS_CLASS, err);\r\n this.skillsMatrixData.curricula[this.skillModalCurrKey]\r\n .subjects[this.skillModalSkillKey]\r\n .users[this.skillModalUserKey] = {statusId: prevStatusId};\r\n },\r\n () => {\r\n this.skillsMatrixData.curricula[this.skillModalCurrKey]\r\n .subjects[this.skillModalSkillKey]\r\n .users[this.skillModalUserKey] = {statusId: newStatusId};\r\n }\r\n )\r\n this.awaitingCompleteConfirmation = false;\r\n }\r\n\r\n onCancelCompleteClick() {\r\n this.awaitingCompleteConfirmation = false;\r\n }\r\n\r\n onDeepLinkClick() {\r\n this.skillsMatrixData.curricula[this.skillModalCurrKey]\r\n .subjects[this.skillModalSkillKey]\r\n .users[this.skillModalUserKey] = {statusId: '7'}; // TODO: Remove hard coding\r\n }\r\n\r\n hideUserCell(userKey: string): boolean {\r\n if (!this.skillsMatrixData.users) { return true; }\r\n const user = this.skillsMatrixData?.users[userKey]\r\n if (!user) { return true; }\r\n if (user.me && !this.hideMe) {\r\n return false;\r\n } else if (user.directReport && !this.hideDirect) {\r\n return false;\r\n } else if (user.indirectReport && !this.hideIndirect) {\r\n return false;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n progressStyle(percentComplete: number): any {\r\n return { 'width': `${percentComplete * 100}%` }\r\n }\r\n\r\n currProgressStyle(currKey: string): any {\r\n return this.progressStyle(this.getCurrMeanCompletion(currKey));\r\n }\r\n\r\n currUserProgressStyle(currKey: string, userKey: string): any {\r\n return this.progressStyle(this.getCurrUserSummary(currKey, userKey)['percentComplete']);\r\n }\r\n\r\n progressClass(percentComplete: number): string {\r\n // TODO: Add to ConfigService\r\n if (percentComplete <= 0.25) {\r\n return 'danger'\r\n } else if (percentComplete <= 0.75) {\r\n return 'warning text-white'\r\n }\r\n return 'success'\r\n }\r\n\r\n get userNameClass(): string {\r\n if (this.configService.blurNames) {\r\n return 'blur-text';\r\n } else {\r\n return '';\r\n }\r\n }\r\n\r\n currBadgeClass(currKey: string): string {\r\n return 'bg-' + this.progressClass(this.getCurrMeanCompletion(currKey));\r\n }\r\n\r\n userCompletionBadgeClass(userKey: string): string {\r\n const score = this.getUserCompletionValue(userKey);\r\n return score === null ? '' : 'bg-' + this.progressClass(score);\r\n }\r\n\r\n currProgressClass(currKey: string): string {\r\n return 'bg-' + this.progressClass(this.getCurrMeanCompletion(currKey));\r\n }\r\n\r\n currUserBadgeClass(currKey: string, userKey: string): string {\r\n let progressClass = 'bg-secondary';\r\n if (this.currAssignedToUser(userKey, currKey)) {\r\n progressClass = 'bg-' + this.progressClass(this.getCurrUserSummary(currKey, userKey)['percentComplete']);\r\n }\r\n return progressClass;\r\n }\r\n\r\n currUserProgressClass(currKey: string, userKey: string): string {\r\n let progressClass = 'bg-secondary';\r\n if (this.currAssignedToUser(userKey, currKey)) {\r\n progressClass = 'bg-' + this.progressClass(this.getCurrUserSummary(currKey, userKey)['percentComplete']);\r\n }\r\n return progressClass;\r\n }\r\n\r\n onFilterTextChange(filterText: string) {\r\n this.currFilterText = filterText;\r\n }\r\n\r\n hideCurriculum(currKey: string) {\r\n if (this.filterCats.length > 0) {\r\n return !this.filterCats.includes(this.skillsMatrixData.curricula[currKey].category)\r\n } else if (this.currFilterActive) {\r\n return !this.skillsMatrixData.curricula[currKey].name.toLowerCase().includes(this.currFilterText.toLowerCase())\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n addExtraUser() {\r\n const extraUser = this.extraUserControls.get('extraUser').value;\r\n if (extraUser) {\r\n const extraUserId = extraUser.split(':', 1)[0]\r\n const extraPerson = this.personList.find( p => { return p.externalUserId === extraUserId})\r\n if (extraPerson) {\r\n this.extraPeople.push(`${extraPerson.id}`);\r\n this.loadExtraUser(extraPerson.id);\r\n }\r\n }\r\n this.extraUserControls.get('extraUser').reset();\r\n }\r\n\r\n showBulkSubmit(currKey: string, subjKey: string) {\r\n this.awaitingCompleteConfirmation = false;\r\n this.bulkSubmitForm.get('trainingTitle').setValue(this.skillsMatrixData.curricula[currKey].subjects[subjKey].skillName);\r\n this.bulkSubmitForm.get('curriculaKey').setValue(currKey);\r\n this.bulkSubmitForm.get('subjectKey').setValue(subjKey);\r\n (this.bulkSubmitForm.get('people') as FormArray).clear();\r\n const peopleArray = [];\r\n this.userKeys.forEach(\r\n uk => {\r\n const userStatus = (this.skillsMatrixData.curricula[currKey].subjects[subjKey].users[uk] || {})['statusId'];\r\n // TODO: Remove hard coding\r\n const checkBoxDisabled =\r\n // ['5', '7', '8'].includes(userStatus) ||\r\n ['7', '8'].includes(userStatus) ||\r\n !this.skillsMatrixData.users[uk].externalId ||\r\n !this.currAssignedToUser(uk, currKey);\r\n const checkBoxControl = new FormControl({ value: !checkBoxDisabled, disabled: checkBoxDisabled});\r\n peopleArray.push(this.fb.group(\r\n {\r\n personId: Number(uk),\r\n personName: this.skillsMatrixData.users[uk].userName,\r\n trainingStatusId: userStatus || '6',\r\n prevTrainingStatusId: userStatus || '6',\r\n includePerson: checkBoxControl,\r\n disabled: checkBoxControl.disabled\r\n }\r\n ))\r\n }\r\n )\r\n this.bulkSubmitForm.setControl('people', this.fb.array(peopleArray));\r\n const submitModal = new Modal(document.getElementById('submitModal'));\r\n submitModal.show();\r\n }\r\n\r\n showBookSession(currKey: string, subjKey: string) {\r\n this.awaitingCompleteConfirmation = false;\r\n this.bookSessionForm.get('trainingTitle').setValue(this.skillsMatrixData.curricula[currKey].subjects[subjKey].skillName);\r\n this.bookSessionForm.get('curriculaKey').setValue(currKey);\r\n this.bookSessionForm.get('subjectKey').setValue(subjKey);\r\n (this.bookSessionForm.get('people') as FormArray).clear();\r\n const peopleArray = [];\r\n this.userKeys.forEach(\r\n uk => {\r\n const userStatus = (this.skillsMatrixData.curricula[currKey].subjects[subjKey].users[uk] || {})['statusId'];\r\n // TODO: Remove hard coding\r\n const checkBoxDisabled =\r\n ['5', '7', '8'].includes(userStatus) ||\r\n !this.skillsMatrixData.users[uk].externalId ||\r\n !this.currAssignedToUser(uk, currKey);\r\n const checkBoxControl = new FormControl({ value: !checkBoxDisabled, disabled: checkBoxDisabled});\r\n peopleArray.push(this.fb.group(\r\n {\r\n personId: Number(uk),\r\n personName: this.skillsMatrixData.users[uk].userName,\r\n trainingStatusId: userStatus || '6',\r\n prevTrainingStatusId: userStatus || '6',\r\n includePerson: checkBoxControl,\r\n disabled: checkBoxControl.disabled\r\n }\r\n ))\r\n }\r\n )\r\n this.bookSessionForm.setControl('people', this.fb.array(peopleArray));\r\n const bookSessionModal = new Modal(document.getElementById('bookSessionModal'));\r\n bookSessionModal.show();\r\n }\r\n\r\n saveBulkSubmit() {\r\n const currKey = this.bulkSubmitForm.get('curriculaKey').value;\r\n const subjectKey = this.bulkSubmitForm.get('subjectKey').value;\r\n const eppl: CsodExpressClassPayload = {\r\n loId: this.skillsMatrixData.curricula[currKey].subjects[subjectKey].learningObjectId,\r\n userStatus: []\r\n } as CsodExpressClassPayload;\r\n\r\n const peopleFormArray: FormArray = this.bulkSubmitForm.get('people') as FormArray;\r\n\r\n this.setBulkStatus(peopleFormArray, '8', currKey, subjectKey);\r\n peopleFormArray.controls.forEach( p => {\r\n if (p.get('includePerson').value) {\r\n eppl.userStatus.push(\r\n {\r\n externalId: this.skillsMatrixData.users[p.get('personId').value].externalId,\r\n comment: `Completed in Skills Matrix by ${this.authService.me.displayName}`,\r\n score: 100,\r\n status: 'Passed'\r\n }\r\n );\r\n p.get('trainingStatusId').setValue('8'); // TODO: Remove hard coding\r\n }\r\n });\r\n this.dashboardService.createCsodExpressClass(eppl).subscribe(\r\n (r: CsodExpressClassResponse) => {\r\n this.claimService.completeSMClaims(\r\n Number(subjectKey),\r\n this.authService.me.id,\r\n peopleFormArray.controls\r\n .filter( p0 => {return p0.get('includePerson').value})\r\n .map(p1 => { return p1.get('personId').value; })\r\n ).subscribe(\r\n smr => {\r\n this.recalcSummStatus();\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.EXPRESS_CLASS, err);\r\n this.setBulkStatus(peopleFormArray, null, currKey, subjectKey)\r\n }\r\n )\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.EXPRESS_CLASS, err);\r\n this.setBulkStatus(peopleFormArray, null, currKey, subjectKey)\r\n },\r\n () => {\r\n this.setBulkStatus(peopleFormArray, '5', currKey, subjectKey, true); // TODO: Remove hard coding\r\n }\r\n )\r\n this.awaitingCompleteConfirmation = false;\r\n }\r\n\r\n setBulkStatus(people: FormArray, statusId: string, currKey: string, subjectKey: string, updateControl: boolean = false) {\r\n people.controls.forEach(\r\n (p: FormControl) => {\r\n if (p.get('includePerson').value) {\r\n this.skillsMatrixData.curricula[currKey].subjects[subjectKey].users[p.get('personId').value] = {\r\n statusId: statusId === null ? p.get('prevTrainingStatusId').value : statusId\r\n };\r\n if (updateControl && statusId) {\r\n p.get('prevTrainingStatusId').setValue(statusId);\r\n }\r\n }\r\n }\r\n )\r\n }\r\n\r\n bookSession() {}\r\n\r\n getCurrMeanCompletion(currKey: string): number {\r\n const userList = [];\r\n const userSumm = this.currSummaryStatus.get(currKey) || {};\r\n const currDetail: SkillsMatrixCurricula = this.skillsMatrixData.curricula[currKey];\r\n\r\n this.userKeys.forEach(\r\n k => {\r\n if (!this.currAssignedToUser(k, currKey) || this.skillsMatrixData.users[k].extra) {\r\n return; // skip to next user\r\n }\r\n userList.push(\r\n userSumm[k] ||\r\n {\r\n status: 0,\r\n percentComplete: 0,\r\n extra: this.skillsMatrixData.users[k].extra\r\n }\r\n )\r\n }\r\n )\r\n return userList\r\n .map( u1 => u1['percentComplete'])\r\n .reduce( (a, b) => a + b, 0) / userList.length;\r\n }\r\n\r\n get personCategories(): Array {\r\n return this.configService.skillMatrixHeadings;\r\n }\r\n\r\n getCurriculaSubjectKeys(currKey: string): Array {\r\n return Object.keys(this.skillsMatrixData.curricula[currKey].subjects).sort(\r\n (a, b) => {\r\n const aName: string = this.skillsMatrixData.curricula[currKey].subjects[a].skillName;\r\n const bName: string = this.skillsMatrixData.curricula[currKey].subjects[b].skillName;\r\n return aName < bName ? -1 : 1;\r\n }\r\n );\r\n }\r\n\r\n getCurriculaSubjectUserKeys(currKey: string, subjKey: string): Array {\r\n return Object.keys(this.skillsMatrixData.curricula[currKey].subjects[subjKey].users)\r\n }\r\n\r\n getCurrUserSummary(currKey: string, userKey: string) {\r\n return ((this.currSummaryStatus.get(currKey) || {})[userKey]) || {\r\n status: 0,\r\n percentComplete: 0,\r\n extra: this.skillsMatrixData.users[userKey].extra\r\n };\r\n }\r\n\r\n getCurrUserSummaryValue(currKey: string, userKey: string): string {\r\n let summValue = 'N/A';\r\n if (this.currAssignedToUser(userKey, currKey)) {\r\n const percentComplete = ((\r\n (this.currSummaryStatus.get(currKey) || {})[userKey]\r\n ) || {\r\n percentComplete: 0,\r\n })['percentComplete'];\r\n summValue = formatPercent(percentComplete, this.locale);\r\n }\r\n\r\n return summValue;\r\n\r\n }\r\n\r\n getUserCompletionValue(userKey: string): number {\r\n let userTotal = 0;\r\n let userCurrCount = 0;\r\n this.selectedTabCurr?.forEach(\r\n tm => {\r\n if (!this.currAssignedToUser(userKey, tm)) { return; }\r\n\r\n const percentComplete = ((\r\n (this.currSummaryStatus.get(tm) || {})[userKey]\r\n ) || {\r\n percentComplete: 0,\r\n })['percentComplete'];\r\n\r\n userTotal += percentComplete;\r\n userCurrCount++;\r\n\r\n }\r\n )\r\n return userCurrCount > 0 ? userTotal/userCurrCount : null;\r\n\r\n }\r\n\r\n removeUser(removeUserKey: string) {\r\n this.curriculaKeys.forEach( ck => {\r\n const subjKeys = Object.keys(this.skillsMatrixData.curricula[ck].subjects);\r\n subjKeys.forEach( sk => {\r\n delete this.skillsMatrixData.curricula[ck].subjects[sk].users[removeUserKey]\r\n })\r\n })\r\n delete this.skillsMatrixData.users[removeUserKey]\r\n this.userKeys = this.userKeys.filter( u => { return u !== removeUserKey})\r\n const idx = this.extraPeople.indexOf(removeUserKey);\r\n if (idx > -1) {\r\n this.extraPeople = this.extraPeople.splice(idx, 1);\r\n }\r\n this.recalcSummStatus();\r\n }\r\n\r\n onWatchChange() { // TODO: rename function\r\n this.loadingData = true;\r\n this.curriculaKeys = [];\r\n this.userKeys = [];\r\n this.ffCount = 0;\r\n this.cmCount = 0;\r\n this.wmCount = 0;\r\n this.skillsMatrixData = new SkillsMatrix();\r\n this.personId = null;\r\n this.extraPeople = [];\r\n this.loadWatchUsers();\r\n this.loadSkillsMatrix();\r\n }\r\n\r\n transformDeepLink(deepLink: string) {\r\n // TODO: Would be nice to use URL if IE11 support not required\r\n // const origUrl = new URL(deepLink)\r\n // const unescOrigSearch = unescape(origUrl.search);\r\n\r\n if (!deepLink) {\r\n return deepLink;\r\n }\r\n\r\n const origUrlParts = deepLink.split('?', 2);\r\n const unescOrigSearch = unescape(origUrlParts[1]);\r\n\r\n const searchParts = unescOrigSearch.split('=transcript&loid=', 2);\r\n const newSearch = encodeURIComponent(`/DeepLink/ProcessRedirect.aspx?module=loRegisterAndLaunch&lo=${searchParts[1]}`)\r\n\r\n return `${origUrlParts[0]}?ReturnUrl=${newSearch}`;\r\n }\r\n\r\n showDeepLink(userKey: string) {\r\n return userKey === this.authService.me.id.toString();\r\n }\r\n\r\n showUserDetail(userKey: string) {\r\n this.selectedWatchMemberId = Number(userKey);\r\n const personDetailModal = new Modal(document.getElementById('personDetailModal'));\r\n personDetailModal.show();\r\n }\r\n\r\n userCurriculaList(userKey: string) {\r\n try {\r\n return ((this.skillsMatrixData?.users[userKey] || {})['currCats'] || []).join(', ');\r\n } catch {\r\n console.log(`Caught userKey: ${userKey}`);\r\n console.log(`loadingData: ${this.loadingData}`);\r\n }\r\n }\r\n\r\n get disableBulkSave() {\r\n return (this.bulkSubmitForm.get('people') as FormArray).controls\r\n .map( (c: FormGroup) => c.get('includePerson') )\r\n .every( (e: FormControl) => { return !e.value } )\r\n }\r\n\r\n get disableBookSession() {\r\n return false;\r\n }\r\n\r\n get blurNames() {\r\n return this.configService.blurNames;\r\n }\r\n\r\n get matrixTitle(): string {\r\n return this.matrixType === SkillsMatrixContentType.jobRoles ?\r\n 'Competency and Skill Matrix (Job Roles)' :\r\n 'Competency and Skill Matrix (Learning)';\r\n }\r\n\r\n get assignmentDescText(): string {\r\n return this.matrixType === SkillsMatrixContentType.jobRoles ?\r\n 'Assigned Job Roles' :\r\n 'Assigned Training Categories'\r\n }\r\n\r\n get curriculaRoleColTitle(): string {\r\n return this.matrixType === SkillsMatrixContentType.jobRoles ?\r\n 'Job Role - Competency / Skill' :\r\n 'Curriculum - Competency / Skill'\r\n }\r\n\r\n toggleCurr(paneIdx: number, currIdx: number) {\r\n this.uiService.toggleCollapseByClass(`collapseCurriculum${paneIdx}-${currIdx}`);\r\n }\r\n\r\n toggleModal(id: string) {\r\n this.uiService.toggleModal(id);\r\n }\r\n\r\n activateTab(paneId: string) {\r\n this.uiService.showTab(paneId);\r\n this.activePaneId = paneId;\r\n }\r\n\r\n setTabCurr(tabKey: string) {\r\n this.selectedTabCurr = this.tabMap.get(tabKey) || [];\r\n }\r\n\r\n tabContentLength(tabKey: string) {\r\n return (this.tabMap.get(tabKey) || []).length\r\n }\r\n\r\n paneClass(paneId: string): string {\r\n return paneId === this.activePaneId ? 'active show' : '';\r\n }\r\n\r\n getCurrUserSkill(currKey: string, subjKey: string, userKey: string): any {\r\n return this.skillsMatrixData.curricula[currKey].subjects[subjKey].users[userKey];\r\n }\r\n\r\n\r\n\r\n // https://stackoverflow.com/questions/34495307/angular2-with-bootstrap-events-does-not-trigger-observable-changes/49122040#49122040\r\n}\r\n","\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Filter results
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Show details for:

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
Key:
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Not Started / Expired
Awaiting Sync
Complete
Unknown Status
Updating
Curricula Not Assigned To User
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
User Competency / Skill Status
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Curriculum{{skillsMatrixData?.curricula[skillModalCurrKey]?.name}}
User{{skillsMatrixData?.users[skillModalUserKey]?.userName}}
Competency / Skill{{skillsMatrixData?.curricula[skillModalCurrKey]?.subjects[skillModalSkillKey]?.skillName}}
Link to training\r\n Click here\r\n
Current Status{{this.statusDescriptionMap.get(skillsMatrixData?.curricula[skillModalCurrKey]?.subjects[skillModalSkillKey]?.users[skillModalUserKey]?.statusId) || 'Unknown'}}
Due Date{{this.skillsMatrixData?.curricula[skillModalCurrKey]?.subjects[skillModalSkillKey]?.users[skillModalUserKey]?.dueDate | date:'mediumDate'}}
Expiry Date{{this.skillsMatrixData?.curricula[skillModalCurrKey]?.subjects[skillModalSkillKey]?.users[skillModalUserKey]?.expiryDate | date:'mediumDate'}}
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
Bulk completion
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Mark {{bulkSubmitForm.controls['trainingTitle'].value}} complete for:

\r\n
\r\n
\r\n
\r\n
Name
\r\n
Current Status
\r\n
Include?
\r\n
\r\n
\r\n
\r\n
{{c.personName}}
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
Book session
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Mark {{bookSessionForm.controls['trainingTitle'].value}} complete for:

\r\n
\r\n
\r\n
\r\n
Name
\r\n
Status
\r\n
Include?
\r\n
\r\n
\r\n
\r\n
{{c.personName}}
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
Person Detail
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
Name
\r\n
{{watchUserMap.get(selectedWatchMemberId).personName}}
\r\n
\r\n
\r\n
ID
\r\n
{{watchUserMap.get(selectedWatchMemberId).userId}}
\r\n
\r\n
\r\n
Username
\r\n
{{watchUserMap.get(selectedWatchMemberId).username}}
\r\n
\r\n
\r\n
Position
\r\n
{{watchUserMap.get(selectedWatchMemberId).position}}
\r\n
\r\n
\r\n
Location
\r\n
{{watchUserMap.get(selectedWatchMemberId).watch}}
\r\n
\r\n\r\n
\r\n
Reports to
\r\n
{{watchUserMap.get(selectedWatchMemberId).supervisor}}
\r\n
\r\n
\r\n
\r\n {{assignmentDescText}}\r\n
\r\n
{{userCurriculaList(selectedWatchMemberId)}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{matrixTitle}}\r\n {{subTitle}}\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n
0\">\r\n
    \r\n
  • \r\n \r\n \r\n
  • \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n \r\n 0\" class=\"text-center table-light esqep-user-me\" [hidden]=\"hideMe\" [attr.colspan]=\"wmCount\">{{personCategories[0]}}0\" class=\"text-center table-light esqep-user-direct-report text-muted\" [attr.colspan]=\"cmCount\" [hidden]=\"hideDirect\">{{personCategories[1]}}0\" class=\"text-center table-light esqep-user-indirect-report fw-normal\" [attr.colspan]=\"ffCount\" [hidden]=\"hideIndirect\">{{personCategories[2]}}Other staff
\r\n {{curriculaRoleColTitle}}\r\n Action\r\n {{(skillsMatrixData?.users || {})[u]?.userName}}\r\n \r\n
\r\n {{getUserCompletionValue(u) | percent}}\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n {{skillsMatrixData.curricula[c].name}}\r\n \r\n \r\n
\r\n \r\n {{getCurrMeanCompletion(c) | percent}}\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n {{getCurrUserSummaryValue(c, s)}}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{this.skillsMatrixData.curricula[c].subjects[us].skillName}} [{{this.skillsMatrixData.curricula[c].subjects[us].skillExtType}}]\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n","export enum SkillsMatrixContentType {\r\n curricula = 0,\r\n jobRoles = 1\r\n}\r\n\r\nexport interface SkillsMatrixStatusMap {\r\n [status: string]: string;\r\n}\r\n\r\nexport interface SkillsMatrixUser {\r\n // [userId: string]: {\r\n currCats: string[];\r\n directReport: boolean;\r\n extra: boolean;\r\n indirectReport: boolean;\r\n me: boolean;\r\n userId: number;\r\n userName: string;\r\n externalId: number;\r\n externalUserId: string;\r\n externalUserName: string;\r\n position: string;\r\n watch: string;\r\n // }\r\n}\r\n\r\nexport interface SkillsMatrixSubjectUser {\r\n statusId: string;\r\n claimId?: string;\r\n dueDate?: Date;\r\n expiryDate?: Date;\r\n}\r\n\r\nexport interface SkillsMatrixSubject {\r\n deepLinkUrl: string,\r\n skillName: string;\r\n skillExtType?: string;\r\n learningObjectId: string;\r\n users: {\r\n [userId: string]: SkillsMatrixSubjectUser;\r\n }\r\n}\r\n\r\nexport interface SkillsMatrixCurricula {\r\n // [curriculaId: string]: {\r\n name: string;\r\n category: string;\r\n externalSubjectId?: number;\r\n externalParentSubjectId?: number;\r\n subjects: {\r\n [subjectId: string]: SkillsMatrixSubject;\r\n }\r\n // }\r\n}\r\n\r\nexport class SkillsMatrix {\r\n contentType: SkillsMatrixContentType;\r\n curricula: {\r\n [curriculaId: string]: SkillsMatrixCurricula\r\n };\r\n // statusMap: SkillsMatrixStatusMap;\r\n statusMap: {[status: string]: string};\r\n users: {\r\n [userId: string]: SkillsMatrixUser\r\n };\r\n}\r\n","import { Component, EventEmitter, Inject, Input, LOCALE_ID, OnChanges, OnDestroy, OnInit, Output } from '@angular/core';\r\nimport { AbstractControl, FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { ActivatedRoute, ActivatedRouteSnapshot } from '@angular/router';\r\n\r\nimport { Subscription, Observable, Subject } from 'rxjs';\r\nimport { finalize, takeUntil } from 'rxjs/operators';\r\n\r\nimport { ClaimService } from 'app/claim/claim.service';\r\nimport { AlertData, AlertLevels, AlertService } from 'app/core/alert.service';\r\nimport { AuthService } from 'app/core/auth.service';\r\nimport { ConfigService } from 'app/core/config.service';\r\nimport { UitoolsService } from 'app/core/uitools.service';\r\nimport { OrgUnitService } from 'app/org-unit/org-unit.service';\r\nimport { PersonService } from 'app/person/person.service';\r\nimport { CsodCreateSessionPayload, CsodCreateSessionResponse, CsodExpressClassPayload, CsodExpressClassResponse, CsodLearningAssignmentPayload, CsodLearningAssignmentResponse, CsodLearningAssignmentUser, CsodSessionPart, DashboardService, ExpressClassUserObs } from '../dashboard.service';\r\nimport { Person } from 'app/person/person';\r\nimport { SkillsMatrix, SkillsMatrixCurricula, SkillsMatrixSubjectUser } from '../skill-matrix';\r\nimport { select } from 'd3';\r\nimport { Modal } from 'bootstrap';\r\nimport { SkillService } from 'app/skill/skill.service';\r\nimport { SkillTrainingSession } from 'app/skill/skill-training-session';\r\nimport { Skill } from 'app/skill/skill';\r\nimport { createAsExpression } from 'typescript';\r\nimport moment from 'moment';\r\n\r\nexport interface CurriculumSubject {\r\n curriculumKey: string;\r\n subjectKey: string;\r\n}\r\n\r\nexport enum SortOptions {\r\n USER_ID,\r\n NAME,\r\n POSITION,\r\n WATCH,\r\n DUE_DATE,\r\n EXPIRY_DATE\r\n};\r\n\r\n@Component({\r\n selector: 'ug-skill-table',\r\n templateUrl: './skill-table.component.html',\r\n styleUrls: ['./skill-table.component.css']\r\n})\r\nexport class SkillTableComponent implements OnInit, OnDestroy {\r\n @Input() watchId = 'G58 Red Watch';\r\n @Input() personId = 17;\r\n @Output() stLoaded: EventEmitter = new EventEmitter(false);\r\n\r\n\r\n exceptionData = {\r\n 'EXPRESS_CLASS': {\r\n level: AlertLevels.ERROR,\r\n code: 'SKT-001',\r\n message: 'Error creating Express Class'\r\n } as AlertData,\r\n 'SESSION': {\r\n level: AlertLevels.ERROR,\r\n code: 'SKT-002',\r\n message: 'Error creating Session'\r\n } as AlertData,\r\n 'LEARNING_ASSIGNMENT': {\r\n level: AlertLevels.ERROR,\r\n code: 'SKT-003',\r\n message: 'Error creating Learning Assignment'\r\n } as AlertData,\r\n }\r\n\r\n skillTableSubs: Subscription = new Subscription();\r\n fullFunc: boolean;\r\n\r\n watchSelect: FormGroup = new FormGroup(\r\n {\r\n 'watchId': new FormControl()\r\n }\r\n )\r\n\r\n sortForm: FormGroup = new FormGroup(\r\n {\r\n 'trainingItem': new FormControl(-1),\r\n 'radioSortBy': new FormControl('userId'),\r\n 'checkHideComplete': new FormControl(false)\r\n }\r\n );\r\n\r\n bookSessionForm: FormGroup = new FormGroup(\r\n {\r\n 'formSelectedSession': new FormControl(-1),\r\n 'radioCreateSelect': new FormControl('select'),\r\n 'trainingTitle': new FormControl(''),\r\n 'curriculaIndex': new FormControl(-1),\r\n 'userSkillIndex': new FormControl(-1),\r\n 'curriculaKey': new FormControl(''),\r\n 'subjectKey': new FormControl(''),\r\n // 'people': new FormArray([]),\r\n 'newSessionStartDate': new FormControl(null, Validators.required),\r\n 'newSessionEndDate': new FormControl(null, Validators.required),\r\n 'newSessionName': new FormControl(null, Validators.required),\r\n 'expiryDate': new FormControl(null),\r\n 'expiryOffset': new FormControl(null)\r\n }\r\n );\r\n\r\n sessionLocationMap = new Map(\r\n [\r\n ['Corporate Training', 'TTA'],\r\n ['EFAD', 'BTSC'],\r\n ['Incident Command', 'ICA']\r\n ]\r\n );\r\n\r\n loadingData: boolean;\r\n skillsMatrixData: SkillsMatrix;\r\n userKeys: string[];\r\n curriculaKeys: string[];\r\n wmCount: number;\r\n ffCount: number;\r\n\r\n awaitingCompleteConfirmation = false;\r\n\r\n curriculaSubjects: Array = [];\r\n\r\n sortOptions: SortOptions;\r\n\r\n selectedSession: SkillTrainingSession = new SkillTrainingSession();\r\n\r\n filterData = [\r\n // {\r\n // key: 'MoC',\r\n // title: 'MoC',\r\n // categories: ['MoC0', 'MoC3', 'MoC6', 'MoC12', 'MoC24'],\r\n // subjectId: 854\r\n // },\r\n // {\r\n // key: 'SAS',\r\n // title: 'Special Appliances',\r\n // categories: ['SAS12', 'SAS6', 'SAS', 'SP12 MDU AND EQUIP', 'SP3 SW TECH', 'SP6 CSU O', 'SP6 TRU CH O', 'SP6 WF U O'],\r\n // subjectId: 859\r\n // },\r\n // {\r\n // key: 'OS',\r\n // title: 'Operational Skills',\r\n // categories: ['OS', 'OS FI TIER 1', 'OS IRS'],\r\n // subjectId: 855\r\n // },\r\n // {\r\n // key: 'Incident Command',\r\n // title: 'Incident Command',\r\n // categories: ['IC', 'IC CSRO', 'IC GA-AM', 'IC GA-CM', 'IC GA-GM', 'IC GA-SM'],\r\n // subjectId: 857\r\n // },\r\n // {\r\n // key: 'EFAD',\r\n // title: 'Emergency Fire Appliance Driver',\r\n // categories: ['EFAD', 'EFAD FURTHER TRAINING', 'EFAD INITIAL', 'EFAD LGV', 'EFAD LGV CAT C', 'EFAD REFRESH'],\r\n // subjectId: 856\r\n // },\r\n // {\r\n // key: 'Corporate Training',\r\n // title: 'Corporate Training',\r\n // categories: ['CORP', 'CT SW FFR I', 'CT SW FR BO I', 'CT SW FR BO IN', 'CT SW FR BO R'],\r\n // subjectId: 858\r\n // },\r\n // {\r\n // key: 'OAS',\r\n // title: 'Ops and Safety Alerts',\r\n // categories: ['OAS'],\r\n // subjectId: -1\r\n // }\r\n ];\r\n\r\n // sessionData = [\r\n // {\r\n // title: 'Session 1',\r\n // id: 0,\r\n // startDateTime: new Date('2022-03-18T11:00:00'),\r\n // endDateTime: new Date('2022-03-18T14:30:00'),\r\n // parts: [\r\n // {\r\n // title: 'Part A',\r\n // startDateTime: new Date('2022-03-18T11:00:00'),\r\n // endDateTime: new Date('2022-03-18T11:30:00')\r\n // },\r\n // {\r\n // title: 'Part B',\r\n // startDateTime: new Date('2022-03-18T14:00:00'),\r\n // endDateTime: new Date('2022-03-18T14:30:00')\r\n // }\r\n // ]\r\n // },\r\n // {\r\n // title: 'Session 2',\r\n // id: 1,\r\n // startDateTime: new Date('2022-03-19T10:00:00'),\r\n // endDateTime: new Date('2022-03-19T10:30:00'),\r\n // parts: [\r\n // {\r\n // title: 'Part A',\r\n // startDateTime: new Date('2022-03-19T10:00:00'),\r\n // endDateTime: new Date('2022-03-19T10:30:00')\r\n // }\r\n // ]\r\n // },\r\n // {\r\n // title: 'Session 3',\r\n // id: 2,\r\n // startDateTime: new Date('2022-03-20T15:00:00'),\r\n // endDateTime: new Date('2022-03-20T15:30:00'),\r\n // parts: [\r\n // {\r\n // title: 'Part A',\r\n // startDateTime: new Date('2022-03-20T15:00:00'),\r\n // endDateTime: new Date('2022-03-20T15:30:00')\r\n // }\r\n // ]\r\n // }\r\n // ];\r\n\r\n selectedEventSessions: SkillTrainingSession[] = [];\r\n selectedUserKey: string;\r\n learningAssignmentMessage: string;\r\n learningAssignmentSuccess = false;\r\n learningAssignmentComplete = false;\r\n isSessionSelected = false;\r\n assignSession = true;\r\n completeSession = false;\r\n private ngUnsubscribe: Subject = new Subject();\r\n sessionCreateInProgress: boolean;\r\n\r\n\r\n constructor(\r\n @Inject(LOCALE_ID) private locale: string,\r\n private fb: FormBuilder,\r\n private alertService: AlertService,\r\n private authService: AuthService,\r\n // private cdCheck: ChangeDetectorRef,\r\n private claimService: ClaimService,\r\n private configService: ConfigService,\r\n private dashboardService: DashboardService,\r\n private orgUnitService: OrgUnitService,\r\n private personService: PersonService,\r\n private skillService: SkillService,\r\n private uiService: UitoolsService,\r\n private route: ActivatedRoute\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.loadingData = true;\r\n\r\n this.skillTableSubs.add(\r\n this.dashboardService.getTrainingSubjectCategories().subscribe(\r\n tsc => {\r\n this.filterData = [];\r\n this.filterData = this.filterData.concat(tsc);\r\n }\r\n )\r\n )\r\n this.skillTableSubs.add(\r\n this.authService.userDetailSubj.subscribe(\r\n (ud: Person) => {\r\n // if (ud.id !== this.personId) {\r\n this.personId = ud.id;\r\n this.fullFunc = ud.watchOfficerOrAbove || false;\r\n this.watchSelect.get('watchId').setValue(ud.watch);\r\n this.loadSkillsTable();\r\n }\r\n )\r\n );\r\n\r\n this.skillTableSubs.add(\r\n this.sortForm.get('radioSortBy').valueChanges.subscribe(\r\n (sortBy) => {\r\n if (sortBy === 'userId') {\r\n this.userKeys = Object.keys(this.skillsMatrixData?.users).sort((a, b) => {\r\n const aExtUserId: string = this.skillsMatrixData.users[a].externalUserId;\r\n const bExtUserId: string = this.skillsMatrixData.users[b].externalUserId;\r\n return aExtUserId < bExtUserId ? -1 : 1;\r\n })\r\n } else\r\n if (sortBy === 'name') {\r\n this.userKeys = Object.keys(this.skillsMatrixData.users).sort((a, b) => {\r\n const aName: string = this.skillsMatrixData.users[a].userName.toLowerCase().split(' ', 2)[1];\r\n const bName: string = this.skillsMatrixData.users[b].userName.toLowerCase().split(' ', 2)[1];\r\n return aName < bName ? -1 : 1;\r\n })\r\n } else\r\n if (sortBy === 'position') {\r\n this.userKeys = Object.keys(this.skillsMatrixData.users).sort((a, b) => {\r\n const aPosition: string = this.skillsMatrixData.users[a].position;\r\n const bPosition: string = this.skillsMatrixData.users[b].position;\r\n return aPosition < bPosition ? -1 : 1;\r\n })\r\n } else\r\n if (sortBy === 'watch') {\r\n this.userKeys = Object.keys(this.skillsMatrixData.users).sort((a, b) => {\r\n const aWatch: string = this.skillsMatrixData.users[a].watch;\r\n const bWatch: string = this.skillsMatrixData.users[b].watch;\r\n return aWatch < bWatch ? -1 : 1;\r\n })\r\n } else\r\n if (sortBy === 'dueDate') {\r\n this.userKeys = Object.keys(this.skillsMatrixData.users).sort((a, b) => {\r\n const aDueDate: Date = this.skillsMatrixData.curricula[this.selectedCurrSubject.curriculumKey]\r\n .subjects[this.selectedCurrSubject.subjectKey]\r\n .users[a]\r\n ?.dueDate;\r\n const bDueDate: Date = this.skillsMatrixData.curricula[this.selectedCurrSubject.curriculumKey]\r\n .subjects[this.selectedCurrSubject.subjectKey]\r\n .users[b]\r\n ?.dueDate;\r\n if (!aDueDate) {return -1; }\r\n if (!bDueDate) {return 1; }\r\n return aDueDate < bDueDate ? -1 : 1;\r\n })\r\n }\r\n if (sortBy === 'expiryDate') {\r\n this.userKeys = Object.keys(this.skillsMatrixData.users).sort((a, b) => {\r\n const aExpiryDate: Date = this.skillsMatrixData.curricula[this.selectedCurrSubject.curriculumKey]\r\n .subjects[this.selectedCurrSubject.subjectKey]\r\n .users[a]\r\n ?.expiryDate;\r\n const bExpiryDate: Date = this.skillsMatrixData.curricula[this.selectedCurrSubject.curriculumKey]\r\n .subjects[this.selectedCurrSubject.subjectKey]\r\n .users[b]\r\n ?.expiryDate;\r\n if (!aExpiryDate) {return -1; }\r\n if (!bExpiryDate) {return 1; }\r\n return aExpiryDate < bExpiryDate ? -1 : 1;\r\n })\r\n }\r\n }\r\n )\r\n );\r\n\r\n this.skillTableSubs.add(\r\n this.sortForm.get('trainingItem').valueChanges.subscribe(\r\n (ti) => {}\r\n )\r\n );\r\n\r\n this.skillTableSubs.add(\r\n this.bookSessionForm.get('formSelectedSession').valueChanges.subscribe(\r\n (sIdx: number) => {\r\n if (sIdx > -1) {\r\n this.selectedSession = this.selectedEventSessions[sIdx];\r\n } else {\r\n this.selectedSession = new SkillTrainingSession();\r\n }\r\n this.isSessionSelected = sIdx > - 1;\r\n }\r\n )\r\n )\r\n this.skillTableSubs.add(\r\n this.bookSessionForm.get('newSessionStartDate').valueChanges.subscribe(\r\n (startDt) => {\r\n this.selectedSession['startDateTime'] = startDt;\r\n }\r\n )\r\n )\r\n this.skillTableSubs.add(\r\n this.bookSessionForm.get('newSessionEndDate').valueChanges.subscribe(\r\n (endDt) => {\r\n this.selectedSession['endDateTime'] = endDt;\r\n }\r\n )\r\n )\r\n\r\n this.skillTableSubs.add(\r\n this.bookSessionForm.get('radioCreateSelect').valueChanges.subscribe(\r\n () => {\r\n this.clearSelectedForm();\r\n this.bookSessionForm.get('formSelectedSession').setValue(-1);\r\n }\r\n )\r\n )\r\n\r\n this.skillTableSubs.add(\r\n this.bookSessionForm.get('expiryOffset').valueChanges.subscribe(\r\n (eo) => {\r\n console.log(eo);\r\n this.bookSessionForm.get('expiryDate').setValue(moment(this.selectedSession.stsEndDate).add(Number(eo), 'years').format('yyyy-MM-DD'));\r\n }\r\n )\r\n )\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.ngUnsubscribe.next(true);\r\n this.ngUnsubscribe.complete();\r\n this.skillTableSubs.unsubscribe();\r\n }\r\n\r\n loadWatchUsers() {\r\n throw new Error('Method not implemented.');\r\n }\r\n loadSkillsTable() {\r\n this.skillTableSubs.add(\r\n this.dashboardService.getSkillsMatrix(\r\n // this.matrixDataFunction(\r\n this.configService.skillMatrixFaId, this.personId, this.watchSelect.get('watchId').value, [], this.route.snapshot.data['trainingCategory']\r\n )\r\n .pipe(\r\n finalize( () => {\r\n this.loadingData = false;\r\n this.watchSelect.enable();\r\n // this.setTabCurr(this.tabData[0].key);\r\n // this.activateTab('#pane-0');\r\n this.stLoaded.emit(true);\r\n } )\r\n )\r\n .subscribe(\r\n (sm: SkillsMatrix) => {\r\n this.skillsMatrixData = sm;\r\n this.userKeys = Object.keys(this.skillsMatrixData.users);\r\n\r\n const filterKey = this.route.snapshot.data['filterKey'];\r\n\r\n this.curriculaKeys = Object.keys(this.skillsMatrixData.curricula)\r\n .filter(c => {\r\n // const currFilter = this.filterData.find(fd => fd.key === this.route.snapshot.data['trainingCategory']);\r\n const currFilter = this.filterData.find(fd => fd.key === filterKey);\r\n return currFilter.categories?.some(cat => cat === this.skillsMatrixData.curricula[c].category);\r\n }\r\n )\r\n .sort(\r\n (a, b) => {\r\n const aName: string = this.skillsMatrixData.curricula[a].name;\r\n const bName: string = this.skillsMatrixData.curricula[b].name;\r\n return aName < bName ? -1 : 1;\r\n }\r\n );\r\n // this.sortForm.get('trainingItem').setValue(this.curriculaKeys[0] || '');\r\n\r\n this.curriculaSubjects = [];\r\n this.curriculaKeys.forEach(ck => {\r\n Object.keys(this.skillsMatrixData.curricula[ck].subjects).forEach(csk => {\r\n this.curriculaSubjects.push(\r\n {curriculumKey: ck, subjectKey: csk} as CurriculumSubject\r\n )\r\n })\r\n });\r\n\r\n this.sortForm.get('radioSortBy').setValue('userId');\r\n },\r\n err => {\r\n // this.alertService.createAlert2(this.exceptionData.SKILL_MATRIX, err);\r\n console.table(err);\r\n }\r\n )\r\n )\r\n }\r\n\r\n curriculaColSpan(currKey: string): number {\r\n return this.visibleCurriculaSubjects.filter(cs => cs.curriculumKey === currKey).length;\r\n // return Object.keys(this.skillsMatrixData?.curricula[currKey]?.subjects).length\r\n }\r\n\r\n get visibleCurricula(): Array {\r\n if (this.sortForm.get('trainingItem').value < 0) {\r\n return [...new Set(this.curriculaSubjects.map(cs => cs.curriculumKey))];\r\n } else {\r\n return [this.curriculaSubjects[this.sortForm.get('trainingItem').value]?.curriculumKey];\r\n }\r\n }\r\n\r\n get visibleCurriculaSubjects(): Array {\r\n if (this.sortForm.get('trainingItem').value < 0) {\r\n return this.curriculaSubjects;\r\n } else {\r\n return [this.curriculaSubjects[this.sortForm.get('trainingItem').value]];\r\n }\r\n }\r\n\r\n get visibleUserKeys(): Array {\r\n if (this.sortForm.get('checkHideComplete').value === true) {\r\n return this.userKeys.filter(uk => {\r\n return this.skillsMatrixData\r\n .curricula[this.selectedCurrSubject.curriculumKey]\r\n .subjects[this.selectedCurrSubject.subjectKey]\r\n .users[uk]?.statusId !== '5';\r\n })\r\n } else {\r\n return this.userKeys;\r\n }\r\n }\r\n\r\n get selectedCurrSubject(): CurriculumSubject {\r\n return this.sortForm.get('trainingItem').value < 0 ? null : this.curriculaSubjects[this.sortForm.get('trainingItem').value]\r\n\r\n }\r\n\r\n get dashboardGroup(): string {\r\n return this.route.snapshot.data['trainingCategory'];\r\n }\r\n\r\n get dashboardTitle(): string {\r\n return this.route.snapshot.data['title'];\r\n }\r\n\r\n get disableBookSession(): boolean {\r\n return this.learningAssignmentComplete || !this.isSessionSelected;\r\n }\r\n\r\n get disableCompleteSession(): boolean {\r\n return (this.learningAssignmentComplete || !this.isSessionSelected) &&\r\n !moment(this.bookSessionForm.get('newSessionEndDate').value).isBefore(new Date(), 'day')\r\n }\r\n\r\n get disableExpiryOffset(): boolean {\r\n return !this.isSessionSelected;\r\n }\r\n\r\n trackByFn(index: any, item: any) {\r\n return index;\r\n }\r\n\r\n updateSkillStatus(action: string) {\r\n this.assignSession = action === 'Assign';\r\n this.completeSession = !this.assignSession;\r\n this.awaitingCompleteConfirmation = true;\r\n }\r\n\r\n saveNewSession() {\r\n this.sessionCreateInProgress = true;\r\n const skillLoId = this.skillsMatrixData.curricula[this.bookSessionForm.get('curriculaKey').value].subjects[this.bookSessionForm.get('subjectKey').value].learningObjectId;\r\n const sessPayload: CsodCreateSessionPayload = {\r\n EventLoRef: skillLoId,\r\n Parts: [\r\n {\r\n PartName: this.bookSessionForm.get('newSessionName').value,\r\n PartLocation: this.sessionLocationMap.get(this.route.snapshot.data['filterKey']) || '',\r\n PartStartDateTime: this.bookSessionForm.get('newSessionStartDate').value,\r\n PartEndDateTime: this.bookSessionForm.get('newSessionEndDate').value,\r\n PartOccurrence: ''\r\n } as CsodSessionPart\r\n ]\r\n } as CsodCreateSessionPayload;\r\n\r\n this.skillTableSubs.add(\r\n this.dashboardService.createCsodSession(sessPayload)\r\n .pipe(\r\n finalize( () => { this.sessionCreateInProgress = false; })\r\n )\r\n .subscribe(\r\n (r: SkillTrainingSession) => {\r\n this.bookSessionForm.get('formSelectedSession').setValue(this.selectedEventSessions.push(r) - 1);\r\n // this.bookSessionForm.get('formSelectedSession').setValue(this.selectedEventSessions.push({\r\n // stsEndDate: new Date(sessPayload.Parts[0].PartEndDateTime),\r\n // stsStartDate: new Date(sessPayload.Parts[0].PartStartDateTime),\r\n // stsExtGuid: r.records[0].loId,\r\n // stsLocation: sessPayload.Parts[0].PartLocation,\r\n // stsSkillId: Number(this.bookSessionForm.get('subjectKey').value),\r\n // stsExtId: null,\r\n // stsId: null,\r\n // stsLastTouchedDt: null\r\n // } as SkillTrainingSession) - 1 );\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.SESSION, err);\r\n // this.skillsMatrixData.curricula[this.skillModalCurrKey]\r\n // .subjects[this.skillModalSkillKey]\r\n // .users[this.skillModalUserKey] = {statusId: prevStatusId};\r\n },\r\n () => {\r\n // this.skillsMatrixData.curricula[this.skillModalCurrKey]\r\n // .subjects[this.skillModalSkillKey]\r\n // .users[this.skillModalUserKey] = {statusId: newStatusId};\r\n }\r\n )\r\n )\r\n }\r\n\r\n saveBookSessionSubmit(bookedCsodUserId: string) {\r\n this.learningAssignmentComplete = false;\r\n // const skillLoId = this.skillsMatrixData.curricula[this.bookSessionForm.get('curriculaKey').value].subjects[this.bookSessionForm.get('subjectKey').value].learningObjectId;\r\n const skillLoId = this.selectedSession.stsExtGuid;\r\n const csodUserId = this.skillsMatrixData.users[this.selectedUserKey].externalId;\r\n const currentDate = new Date();\r\n const fallbackDueDate = moment(currentDate).add(1, 'h').toDate(); // CSOD Won't allow due dates in past for completions\r\n\r\n const ck = this.bookSessionForm.get('curriculaKey').value;\r\n const sk = this.bookSessionForm.get('subjectKey').value;\r\n const uk = this.selectedUserKey;\r\n\r\n let bookSessionPayload: CsodLearningAssignmentPayload;\r\n\r\n if (!this.skillsMatrixData.curricula[ck].subjects[sk].users[uk]) {\r\n this.skillsMatrixData.curricula[ck].subjects[sk].users[uk] = {\r\n // statusId: 'aa',\r\n // claimId: '123',\r\n // dueDate: this.assignSession ? new Date(this.selectedSession.stsEndDate) : completeDueDate,\r\n // expiryDate: new Date(this.bookSessionForm.get('expiryDate').value)\r\n } as SkillsMatrixSubjectUser;\r\n }\r\n\r\n let sessionDueDate: Date;\r\n\r\n if (!this.skillsMatrixData.curricula[ck].subjects[sk].users[uk].dueDate) {\r\n sessionDueDate = moment(this.selectedSession.stsEndDate).toDate();\r\n } else {\r\n sessionDueDate = moment(this.skillsMatrixData.curricula[ck].subjects[sk].users[uk].dueDate).toDate();\r\n }\r\n if (sessionDueDate < fallbackDueDate) {\r\n sessionDueDate = fallbackDueDate; // Due date can't be in past\r\n }\r\n\r\n this.skillsMatrixData.curricula[ck].subjects[sk].users[uk].statusId = '8';\r\n\r\n if (this.assignSession) {\r\n bookSessionPayload = {\r\n name: 'Scheduled by Skills Matrix',\r\n learningObjectIds: [skillLoId],\r\n users: [{id: csodUserId, includeSubordinates: false} as CsodLearningAssignmentUser],\r\n description: 'Scheduled by Skills Matrix',\r\n comments: `Booked by ${this.authService.me.displayName} (${this.authService.me.externalUserId || ''}) on ${currentDate.toString()}`,\r\n assignmentStatus: 'Register',\r\n dueDate: sessionDueDate,\r\n expiryDate: this.bookSessionForm.get('expiryDate').value\r\n } as CsodLearningAssignmentPayload;\r\n } else if (this.completeSession) {\r\n bookSessionPayload = {\r\n name: 'Completed by Skills Matrix',\r\n learningObjectIds: [skillLoId],\r\n users: [{id: csodUserId, includeSubordinates: false} as CsodLearningAssignmentUser],\r\n description: 'Completed by Skills Matrix',\r\n comments: `Completed by ${this.authService.me.displayName} (${this.authService.me.externalUserId || ''}) on ${currentDate.toString()}`,\r\n assignmentStatus: 'Complete',\r\n dueDate: sessionDueDate,\r\n expiryDate: this.bookSessionForm.get('expiryDate').value\r\n } as CsodLearningAssignmentPayload;\r\n }\r\n\r\n console.table(bookSessionPayload);\r\n\r\n this.dashboardService.createCsodLearningAssignment(bookSessionPayload)\r\n .pipe(\r\n takeUntil(this.ngUnsubscribe),\r\n finalize( () => {\r\n this.awaitingCompleteConfirmation = false;\r\n })\r\n )\r\n .subscribe(\r\n (r: CsodLearningAssignmentResponse) => {\r\n this.learningAssignmentSuccess = true;\r\n this.learningAssignmentComplete = true;\r\n this.learningAssignmentMessage = `Session registered, assignment id: ${r?.assignment?.id}`;\r\n this.claimService.completeSMClaims(\r\n this.bookSessionForm.get('subjectKey').value,\r\n this.authService.me.id,\r\n [Number(this.selectedUserKey)],\r\n !this.completeSession,\r\n new Date(this.selectedSession.stsEndDate),\r\n new Date(this.bookSessionForm.get('expiryDate').value)\r\n )\r\n .pipe(\r\n takeUntil(this.ngUnsubscribe),\r\n )\r\n .subscribe(\r\n c => {\r\n this.skillsMatrixData\r\n .curricula[this.bookSessionForm.get('curriculaKey').value]\r\n .subjects[this.bookSessionForm.get('subjectKey').value]\r\n .users[this.selectedUserKey].statusId = this.assignSession ? '3' : '5';\r\n this.skillsMatrixData\r\n .curricula[this.bookSessionForm.get('curriculaKey').value]\r\n .subjects[this.bookSessionForm.get('subjectKey').value]\r\n .users[this.selectedUserKey].dueDate = sessionDueDate;\r\n this.skillsMatrixData\r\n .curricula[this.bookSessionForm.get('curriculaKey').value]\r\n .subjects[this.bookSessionForm.get('subjectKey').value]\r\n .users[this.selectedUserKey].expiryDate = new Date(this.bookSessionForm.get('expiryDate').value);\r\n },\r\n err => {}\r\n )\r\n },\r\n err => {\r\n this.learningAssignmentSuccess = false;\r\n this.learningAssignmentComplete = false;\r\n this.learningAssignmentMessage = 'Failed to register session';\r\n this.alertService.createAlert2(this.exceptionData.LEARNING_ASSIGNMENT, err);\r\n this.skillsMatrixData\r\n .curricula[this.bookSessionForm.get('curriculaKey').value]\r\n .subjects[this.bookSessionForm.get('subjectKey').value]\r\n .users[this.selectedUserKey].statusId = '7';\r\n // this.skillsMatrixData.curricula[this.skillModalCurrKey]\r\n // .subjects[this.skillModalSkillKey]\r\n // .users[this.skillModalUserKey] = {statusId: prevStatusId};\r\n }\r\n )\r\n /*\r\n } else if (this.completeSession) {\r\n const expressClassPayload: CsodExpressClassPayload = {\r\n loId: skillLoId,\r\n userStatus: [\r\n {\r\n externalId: csodUserId,\r\n status: 'Passed',\r\n score: 100,\r\n comment: `Completed in Skills Matrix by ${this.authService.me.displayName} (${this.authService.me.externalUserId})`\r\n } as ExpressClassUserObs\r\n ]\r\n } as CsodExpressClassPayload;\r\n\r\n this.skillTableSubs.add(\r\n this.dashboardService.createCsodExpressClass(expressClassPayload)\r\n .pipe(\r\n finalize( () => {\r\n this.awaitingCompleteConfirmation = false;\r\n })\r\n )\r\n .subscribe(\r\n (r: CsodExpressClassResponse) => {\r\n this.learningAssignmentSuccess = true;\r\n this.learningAssignmentComplete = true;\r\n this.learningAssignmentMessage = `Session completed, id: ${r.data.expressClassId}`;\r\n },\r\n err => {\r\n this.learningAssignmentSuccess = false;\r\n this.learningAssignmentComplete = false;\r\n this.learningAssignmentMessage = 'Failed to complete session';\r\n this.alertService.createAlert2(this.exceptionData.EXPRESS_CLASS, err);\r\n }\r\n )\r\n )\r\n\r\n }\r\n*/\r\n // this.dismissBookSession();\r\n return;\r\n }\r\n\r\n onCancelCompleteClick() {\r\n this.awaitingCompleteConfirmation = false;\r\n }\r\n\r\n showBookSession(currKey: string, subjKey: string, userKey: string) {\r\n if (this.skillsMatrixData.curricula[currKey].subjects[subjKey].skillExtType !== 'Event') {\r\n return;\r\n }\r\n this.clearSelectedForm();\r\n\r\n this.learningAssignmentComplete = false;\r\n this.selectedUserKey = userKey;\r\n this.selectedSession = new SkillTrainingSession();\r\n this.skillTableSubs.add(\r\n this.skillService.listTrainingSessions(Number(subjKey)).subscribe(\r\n (sessionList: Array) => {\r\n this.selectedEventSessions = sessionList;\r\n }\r\n )\r\n );\r\n this.awaitingCompleteConfirmation = false;\r\n this.bookSessionForm.get('trainingTitle').setValue(this.skillsMatrixData.curricula[currKey].subjects[subjKey].skillName);\r\n this.bookSessionForm.get('curriculaKey').setValue(currKey);\r\n this.bookSessionForm.get('subjectKey').setValue(subjKey);\r\n // (this.bookSessionForm.get('people') as FormArray).clear();\r\n const peopleArray = [];\r\n // this.userKeys.forEach(\r\n // uk => {\r\n // const userStatus = (this.skillsMatrixData.curricula[currKey].subjects[subjKey].users[uk] || {})['statusId'];\r\n // // TODO: Remove hard coding\r\n // const checkBoxDisabled =\r\n // ['5', '7', '8'].includes(userStatus) ||\r\n // !this.skillsMatrixData.users[uk].externalId ||\r\n // !this.currAssignedToUser(uk, currKey);\r\n // const checkBoxControl = new FormControl({ value: !checkBoxDisabled, disabled: checkBoxDisabled});\r\n // peopleArray.push(this.fb.group(\r\n // {\r\n // personId: Number(uk),\r\n // personName: this.skillsMatrixData.users[uk].userName,\r\n // trainingStatusId: userStatus || '6',\r\n // prevTrainingStatusId: userStatus || '6',\r\n // includePerson: checkBoxControl,\r\n // disabled: checkBoxControl.disabled\r\n // }\r\n // ))\r\n // }\r\n // )\r\n // this.bookSessionForm.setControl('people', this.fb.array(peopleArray));\r\n const bookSessionModal = new Modal(document.getElementById('bookSessionModal'));\r\n bookSessionModal.show();\r\n }\r\n\r\n private clearSelectedForm() {\r\n this.bookSessionForm.get('newSessionStartDate').setValue(null);\r\n this.bookSessionForm.get('newSessionEndDate').setValue(null);\r\n this.bookSessionForm.get('newSessionName').setValue(null);\r\n this.bookSessionForm.get('expiryDate').setValue(null);\r\n this.bookSessionForm.get('expiryOffset').setValue(null);\r\n }\r\n\r\n dismissBookSession(): void {\r\n const bookSessionModal = new Modal(document.getElementById('bookSessionModal'));\r\n bookSessionModal.hide();\r\n }\r\n\r\n formControlValid(controlName: string): boolean {\r\n const c: AbstractControl = this.bookSessionForm.get(controlName);\r\n return c.disabled || !(c.touched && c.invalid);\r\n }\r\n}\r\n","\r\n\r\n
\r\n
\r\n
\r\n
\r\n
Book session
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
Session title is required
\r\n
\r\n
\r\n
\r\n \r\n \r\n
Start date is required
\r\n
\r\n
\r\n \r\n \r\n
End date is required
\r\n
\r\n
\r\n
\r\n
\r\n Creating session - please wait\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{learningAssignmentMessage}}\r\n
\r\n
\r\n {{learningAssignmentMessage}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
Training Dashboard - {{dashboardTitle}}
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
Sort by:
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Training Dashboard - displaying {{visibleUserKeys?.length}} of {{userKeys?.length}} people
{{skillsMatrixData.curricula[ck].name}}
IdNamePositionWatch{{skillsMatrixData.curricula[cso.curriculumKey].subjects[cso.subjectKey].skillName}}Due DateExpiry Date
{{skillsMatrixData.users[uk].externalUserId}}{{skillsMatrixData.users[uk].userName}}{{skillsMatrixData.users[uk].position}}{{skillsMatrixData.users[uk].watch}}\r\n \r\n \r\n \r\n {{skillsMatrixData.curricula[selectedCurrSubject.curriculumKey].subjects[selectedCurrSubject.subjectKey].users[uk]?.dueDate | date:'medium'}}{{skillsMatrixData.curricula[selectedCurrSubject.curriculumKey].subjects[selectedCurrSubject.subjectKey].users[uk]?.expiryDate | date:'medium'}}
\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ug-succession-team',\r\n templateUrl: './succession-team.component.html',\r\n styleUrls: ['./succession-team.component.scss']\r\n})\r\nexport class SuccessionTeamComponent implements OnInit {\r\n\r\n teamData = {\r\n teamName: 'Demo team',\r\n manager: {\r\n name: 'Grace Jeddler',\r\n personId: 552,\r\n role: 'Global HRS Manager',\r\n lengthOfService: '20y 11m',\r\n timeInRole: '6y 3m'\r\n },\r\n members: [\r\n {\r\n name: 'Woolwich Bagnet',\r\n personId: 16,\r\n role: 'America Team Lead',\r\n lengthOfService: '14y 6m',\r\n timeInRole: '2y 2m',\r\n emergencyCover: {\r\n name: 'James Carker',\r\n personId: 573\r\n },\r\n successors: [\r\n {\r\n name: 'James Carker',\r\n personId: 573,\r\n whenReady: 'Now'\r\n },\r\n {\r\n name: 'Bella Wilfer',\r\n personId: 600,\r\n whenReady: 'Now'\r\n },\r\n {\r\n name: 'Flora Finching',\r\n personId: 554,\r\n whenReady: '2 years'\r\n }\r\n ]\r\n },\r\n {\r\n name: 'Rosa Dartle',\r\n personId: 561,\r\n role: 'HRIS Specialist',\r\n lengthOfService: '16y 5m',\r\n timeInRole: '3y 0m',\r\n emergencyCover: null,\r\n successors: [\r\n {\r\n name: 'Caleb Plummer',\r\n personId: 592,\r\n whenReady: 'Now'\r\n },\r\n ]\r\n },\r\n {\r\n name: 'John Harmon',\r\n personId: 575,\r\n role: 'CSOD Consultant',\r\n lengthOfService: '15y 3m',\r\n timeInRole: '6y 4m',\r\n emergencyCover: {\r\n name: 'John Rokesmith',\r\n personId: 590\r\n },\r\n successors: [\r\n {\r\n name: 'Bella Wilfer',\r\n personId: 600,\r\n whenReady: 'Now'\r\n },\r\n ]\r\n },\r\n {\r\n name: 'Thomas Bardell',\r\n personId: 77,\r\n role: 'HRIS Apprentice',\r\n lengthOfService: '11y 11m',\r\n timeInRole: '9y 8m',\r\n emergencyCover: {\r\n name: 'Flora Finching',\r\n personId: 554,\r\n },\r\n successors: [\r\n {\r\n name: 'Caleb Plummer',\r\n personId: 592,\r\n whenReady: 'Now'\r\n },\r\n ]\r\n },\r\n ]\r\n }\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n getSuccessor(successors: any[], when: string)\r\n {\r\n return successors.filter(e => {return e.whenReady === when});\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n Team Succession Chart\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n

Team manager

\r\n
\r\n
\r\n

{{teamData.manager.name}}

\r\n
\r\n
\r\n
\r\n
\r\n

Manager position

\r\n
\r\n
\r\n

{{teamData.manager.role}}

\r\n
\r\n
\r\n
\r\n
\r\n

Length of service

\r\n
\r\n
\r\n

{{teamData.manager.lengthOfService}}

\r\n
\r\n
\r\n
\r\n
\r\n

Time in role

\r\n
\r\n
\r\n

{{teamData.manager.timeInRole}}

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
NamePositionLength of serviceTime in roleEmergency coverReady nowReady <2 yearsReady 2-4 yearsReady 4+ years
{{member.name}}{{member.role}}{{member.lengthOfService}}{{member.timeInRole}}{{member.emergencyCover?.name}}\r\n

{{now.name}}

\r\n
\r\n

{{now.name}}

\r\n
\r\n

{{now.name}}

\r\n
\r\n

{{now.name}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\nimport { AuthGuard } from '../auth.guard';\r\nimport { AdminGuard } from 'app/core/admin.guard';\r\nimport { SecurityRoleGuard } from 'app/core/security-role.guard';\r\n\r\nimport { RouteSecurityRole } from 'app/core/menus';\r\n\r\nimport { GraphComponent } from '../graph/graph.component';\r\nimport { GraphUserListComponent } from '../graph/graph-user-list.component';\r\nimport { GraphUsersPostSummaryComponent } from '../graph/graph-users-post-summary.component';\r\nimport { UserImportComponent } from '../graph/user-import.component';\r\nimport { GraphUpdateSummResolverService } from '../graph/graph-update-summ-resolver.service';\r\nimport { MsalGuard } from '@azure/msal-angular';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'graph',\r\n component: GraphComponent,\r\n canActivate: [MsalGuard, SecurityRoleGuard],\r\n data: {minimumRole: RouteSecurityRole['ADMIN']},\r\n children: [\r\n {\r\n path: 'users',\r\n component: GraphUserListComponent,\r\n canActivate: [MsalGuard]\r\n },\r\n {\r\n path: 'update-summary',\r\n component: GraphUsersPostSummaryComponent,\r\n canActivate: [MsalGuard],\r\n resolve: {\r\n upr: GraphUpdateSummResolverService\r\n }\r\n },\r\n {\r\n path: 'user-import',\r\n component: UserImportComponent,\r\n canActivate: [MsalGuard, SecurityRoleGuard],\r\n data: {minimumRole: RouteSecurityRole['ADMIN_USER-IMPORT']}\r\n },\r\n ]\r\n },\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n providers: [GraphUpdateSummResolverService]\r\n})\r\nexport class GraphRoutingModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, Resolve, Router, RouterStateSnapshot } from '@angular/router';\r\n\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\n\r\n// import 'rxjs/add/operator/take';\r\n\r\nimport { GraphService, UsersPostResponse } from '../graph/graph.service';\r\n\r\n@Injectable()\r\nexport class GraphUpdateSummResolverService implements Resolve {\r\n\r\n constructor(private graphService: GraphService, private router: Router) { }\r\n\r\n resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable {\r\n return this.graphService.postGraphUsers()\r\n .pipe(\r\n map(\r\n upr => {\r\n if (upr) {\r\n return upr;\r\n } else {\r\n this.router.navigate(['/']);\r\n return null;\r\n }\r\n }\r\n )\r\n );\r\n }\r\n\r\n}\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\n// import { SafeResourceUrl } from '@angular/platform-browser';\r\n\r\nimport { GraphPerson } from '../graph/graph-person';\r\nimport { GraphUser } from '../graph/graph-user';\r\n\r\n\r\n@Component({\r\n selector: 'ug-graph-user-detail',\r\n templateUrl: './graph-user-detail.component.html',\r\n styleUrls: ['./graph-user-detail.component.css']\r\n})\r\nexport class GraphUserDetailComponent implements OnInit {\r\n\r\n @Input() pu: GraphUser;\r\n @Input() manager: GraphUser;\r\n @Input() reports: Array;\r\n // @Input() userPhotoUrl: SafeResourceUrl | null; // Workaround for build warning\r\n @Input() userPhotoUrl: any; // Workaround for build warning\r\n @Input() photoLoaded = false;\r\n @Input() warnings: {missingManager: boolean; missingDepartment: boolean; };\r\n @Input() ignoreManager = false;\r\n @Output() ignoreManagerChange = new EventEmitter();\r\n\r\n constructor() { }\r\n\r\n ngOnInit() { }\r\n\r\n get managerTextStyleClass(): any {\r\n return {\r\n 'text-info': (this.pu.importStatus.isValid) && this.warnings.missingManager,\r\n // 'text-danger': !(this.pu.importStatus.isValid) && ((this.pu.importStatus.errors || {})['UNKNOWN_MANAGER'] || (this.pu.importStatus.errors || {})['MANAGER_LOOP'])\r\n 'text-danger': !(this.pu.importStatus.isValid) && this.managerError(this.pu.importStatus.errors)\r\n };\r\n }\r\n\r\n get managerDisplayName(): string {\r\n const managerDisplayName = (this.manager || {})['displayName'] || this.pu.managerId || 'n/a';\r\n/*\r\n let managerDisplayName = '';\r\n // if (!this.pu.importStatus.isValid || this.pu.importStatus.isValid === true) {\r\n if (this.pu.importStatus.isValid === true) {\r\n managerDisplayName = (this.manager || {})['displayName'] || this.pu.managerId || 'n/a';\r\n } else\r\n if ((this.pu.importStatus.errors || {})['UNKNOWN_MANAGER']) {\r\n managerDisplayName = '*REFERENCED MANAGER NOT FOUND*';\r\n } else\r\n if ((this.pu.importStatus.errors || {})['MANAGER_LOOP']) {\r\n managerDisplayName = '*LOOPING HIERARCHY DETECTED*';\r\n }\r\n*/\r\n return managerDisplayName;\r\n }\r\n\r\n get managerSymbolClass(): any {\r\n return {\r\n 'fas': true,\r\n 'fa-info-circle': (this.pu.importStatus.isValid) && this.warnings.missingManager,\r\n // 'fa-exclamation-circle': !(this.pu.importStatus.isValid) && ((this.pu.importStatus.errors || {})['UNKNOWN_MANAGER'] || (this.pu.importStatus.errors || {})['MANAGER_LOOP'])\r\n 'fa-exclamation-circle': !(this.pu.importStatus.isValid) && this.managerError(this.pu.importStatus.errors)\r\n };\r\n }\r\n\r\n managerError(userErrors: any) {\r\n const errorTypes = ['UNKNOWN_MANAGER', 'MANAGER_LOOP', 'INVALID_MANAGER', 'MISSING_MANAGER'];\r\n let managerErrorFound = false;\r\n for (const e of Object.keys(userErrors)) {\r\n if (errorTypes.includes(e)) {\r\n managerErrorFound = true;\r\n break;\r\n }\r\n }\r\n return managerErrorFound;\r\n };\r\n\r\n onIgnoreManagerChange() {\r\n this.ignoreManagerChange.emit(this.ignoreManager);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \"User \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n

Loading photo...

\r\n
\r\n \r\n \r\n

Photo unavailable

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
Given Name
\r\n
{{pu.givenName}}
\r\n \r\n
Surname\r\n \r\n
\r\n
{{pu.surname || '*NOT SPECIFIED*'}}
\r\n
\r\n
Mail
\r\n
{{pu.mail || 'n/a'}}
\r\n
Phone
\r\n
Business: {{pu.businessPhones[0] || 'n/a'}}
Mobile: {{pu.mobilePhone || 'n/a'}}
\r\n \r\n
Principal Name
\r\n
{{pu.userPrincipalName}}
\r\n \r\n
Unique ID\r\n \r\n
\r\n
{{pu.id}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Job Title
\r\n
{{pu.jobTitle || 'n/a'}}
\r\n \r\n
Department\r\n \r\n
\r\n
{{pu.department || 'n/a'}}
\r\n
\r\n
Location
\r\n
{{pu.officeLocation}}
\r\n
Address
\r\n
{{pu.streetAddress}}
\r\n
{{pu.city}}
\r\n
{{pu.state}}
\r\n
{{pu.postalCode}}
\r\n
{{pu.country}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
Manager\r\n \r\n \r\n
\r\n \r\n
{{managerDisplayName}}
\r\n \r\n
Dotted manager(s)
\r\n
n/a
\r\n\r\n
Direct Reports
\r\n
0; else noDirectReports\">\r\n
{{report?.displayName || 'n/a'}}
\r\n
\r\n \r\n
None
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n\r\nimport { Observable , Subject , Subscription , of } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\n\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { ApiException } from '../core/api-exception';\r\nimport { ConfigService } from '../core/config.service';\r\nimport { GraphUserDetailComponent } from '../graph/graph-user-detail.component';\r\nimport { GraphUser } from './graph-user';\r\nimport { GraphService, UsersPostResponse, UserFeedSource } from './graph.service';\r\nimport { GraphPerson } from '../graph/graph-person';\r\nimport { ImportErrorListComponent } from '../graph/import-error-list.component';\r\nimport { OrgUnitService } from '../org-unit/org-unit.service';\r\nimport { OrgUnit } from '../org-unit/org-unit';\r\nimport { Person } from '../person/person';\r\nimport { PersonService } from '../person/person.service';\r\nimport { SafeResourceUrl } from '@angular/platform-browser';\r\n// import { forEach } from '@angular/router/src/utils/collection';\r\n// import { formatPrefix } from '../../../node_modules/@types/d3';\r\n\r\nexport interface UserPhotoDetail {\r\n isAvailable: boolean;\r\n isLoaded: boolean;\r\n hasError: boolean;\r\n url: SafeResourceUrl;\r\n}\r\n\r\nenum userImportExceptionType {\r\n MISSING_SURNAME,\r\n MISSING_MANAGER,\r\n UNKNOWN_MANAGER,\r\n INVALID_MANAGER,\r\n MANGER_LOOP,\r\n MISSING_DEPARTMENT\r\n}\r\n\r\n@Component({\r\n selector: 'ug-graph-user-list',\r\n templateUrl: './graph-user-list.component.html',\r\n styleUrls: ['./graph-user-list.component.css']\r\n})\r\n\r\nexport class GraphUserListComponent implements OnDestroy, OnInit {\r\n\r\n // graphDataMe: any;\r\n graphUsers: Array = [];\r\n // graphUsers3: Array = [];\r\n // appUsers: Array;\r\n appUserLookup = {};\r\n importUserLookup = {};\r\n // userInvalid = {};\r\n userPhotoUrlList: any = {};\r\n allOrgUnitNames: Array;\r\n\r\n userMetadata = {};\r\n\r\n directoryFeedSource = false;\r\n usersLoading = true;\r\n\r\n usersPostResponse: UsersPostResponse;\r\n\r\n private ngUnsubscribe: Subject = new Subject();\r\n\r\n exceptionData = {\r\n 'DIRECTORY_USERS': {\r\n level: AlertLevels.ERROR,\r\n code: 'GUL-001',\r\n message: 'Error retrieving external user list'\r\n } as AlertData,\r\n 'APP_USERS': {\r\n level: AlertLevels.ERROR,\r\n code: 'GUL-002',\r\n message: 'Error retrieving application user list'\r\n } as AlertData,\r\n 'ORG_UNITS': {\r\n level: AlertLevels.ERROR,\r\n code: 'GUL-003',\r\n message: 'Error retrieving org unit list'\r\n } as AlertData,\r\n 'MANAGER': {\r\n level: AlertLevels.ERROR,\r\n code: 'GUL-004',\r\n message: 'Error retrieving manager detail'\r\n } as AlertData,\r\n 'DIRECT_REPORTS': {\r\n level: AlertLevels.ERROR,\r\n code: 'GUL-005',\r\n message: 'Error retrieving direct reports'\r\n } as AlertData,\r\n 'USER_PHOTO': {\r\n level: AlertLevels.WARNING,\r\n code: 'GUL-006',\r\n message: 'Error retrieving user photo'\r\n } as AlertData,\r\n };\r\n\r\n appName = this.configService.title;\r\n clog = (msg, lvl) => { this.configService.logging.newMsg(msg, lvl); };\r\n\r\n constructor(\r\n private alertService: AlertService,\r\n private configService: ConfigService,\r\n private graphService: GraphService,\r\n private orgUnitService: OrgUnitService,\r\n private personService: PersonService,\r\n private router: Router,\r\n private sanitizer: DomSanitizer\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.graphUsers = [];\r\n\r\n this.usersLoading = true;\r\n this.personService.getPersonList()\r\n .pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n )\r\n .subscribe(\r\n (pl) => {\r\n // this.appUsers = pl;\r\n // this.appUsers.forEach(element => {\r\n pl.forEach(element => {\r\n if (element.adGUID) {\r\n this.appUserLookup[element.adGUID.toLowerCase()] = {user: element};\r\n }\r\n });\r\n\r\n this.graphService.userFeed\r\n .pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n )\r\n .subscribe(\r\n (gdu) => {\r\n // if (gdu.userList.length === 0) {\r\n // this.router.navigate(['graph/user-import']);\r\n // }\r\n this.directoryFeedSource = (gdu.feedSource === UserFeedSource.DIRECTORY);\r\n this.graphUsers = gdu.userList;\r\n this.graphUsers.sort( (a, b) => {\r\n const surnameA = (a.surname || '').toUpperCase();\r\n const givenNameA = (a.givenName || '').toUpperCase();\r\n const surnameB = (b.surname || '').toUpperCase();\r\n const givenNameB = (b.givenName || '').toUpperCase();\r\n if (surnameA < surnameB) { return -1; } else\r\n if (surnameA > surnameB) { return 1; } else\r\n if (givenNameA < givenNameB) { return -1; } else\r\n if (givenNameA > givenNameB) { return 1; } else { return 0; }\r\n });\r\n this.graphUsers.forEach( (guElement, guIndex) => {\r\n this.userMetadata[guIndex] = {\r\n selected: false,\r\n directReports: [],\r\n ignoreManager: false,\r\n isCollapsed: true,\r\n isValid: guElement.importStatus.isValid,\r\n validity: () => {\r\n let allValid = true;\r\n for (const v of Object.keys(this.userMetadata[guIndex].validators)) {\r\n if (!this.userMetadata[guIndex].validators[v]()) {\r\n allValid = false;\r\n break;\r\n }\r\n }\r\n return allValid;\r\n },\r\n required: () => { return this.userMetadata[guIndex].isValid && this.userMetadata[guIndex].requiredByUsers.length > 0; },\r\n requiredByUsers: [],\r\n includeInImport: () => {\r\n return this.userMetadata[guIndex].isValid && (\r\n this.userMetadata[guIndex].selected ||\r\n this.userMetadata[guIndex].required()\r\n );\r\n },\r\n invalidateDependents: () => {\r\n this.userMetadata[guIndex].requiredByUsers.forEach( d => {\r\n const dependentUserId = this.userIndexFromUUID(d);\r\n this.userMetadata[dependentUserId].isValid = false;\r\n this.graphUsers[dependentUserId].importStatus.isValid = false;\r\n this.graphUsers[dependentUserId].importStatus.errors['INVALID_MANAGER'] = true;\r\n this.userMetadata[dependentUserId].invalidateDependents();\r\n });\r\n },\r\n validators:\r\n {\r\n manager: () => {\r\n const errorTypes = ['UNKNOWN_MANAGER', 'MANAGER_LOOP', 'INVALID_MANAGER', 'MISSING_MANAGER'];\r\n let managerValid = true;\r\n if (!this.userMetadata[guIndex].ignoreManager) {\r\n for (const e of Object.keys(this.graphUsers[guIndex].importStatus.errors)) {\r\n if (errorTypes.includes(e)) {\r\n managerValid = false;\r\n break;\r\n }\r\n }\r\n }\r\n return managerValid;\r\n },\r\n surname: () => {\r\n return (this.graphUsers[guIndex].surname || '').length > 0;\r\n }\r\n }\r\n };\r\n this.importUserLookup[guElement.id] = {user: guElement};\r\n/*\r\n if (gdu.feedSource === UserFeedSource.FILE) {\r\n // this.importUserLookup[guElement.id] = {user: guElement};\r\n this.userMetadata[guIndex].isValid = guElement.importStatus.isValid;\r\n } else {\r\n guElement.valid = true;\r\n guElement['importStatus'] = {isValid: true, errors: {}, warnings: {}};\r\n guElement['manager'] = {id: null, displayName: '' };\r\n if (guElement.surname !== null) {\r\n this.userMetadata[guIndex].isValid = true;\r\n } else {\r\n this.userMetadata[guIndex].isValid = false;\r\n guElement['importStatus']['errors']['INVALID_SURNAME'] = true;\r\n guElement['importStatus']['isValid'] = false;\r\n }\r\n }\r\n*/\r\n });\r\n this.usersLoading = false;\r\n },\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.DIRECTORY_USERS, err);\r\n this.usersLoading = false;\r\n });\r\n },\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.APP_USERS, err);\r\n this.usersLoading = false;\r\n }\r\n );\r\n\r\n this.orgUnitService.getOrgUnits()\r\n .pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n )\r\n .subscribe(\r\n (ou) => this.allOrgUnitNames = ou.map( element => { return element.name; }),\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.ORG_UNITS, err);\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n this.ngUnsubscribe.next(true);\r\n this.ngUnsubscribe.complete();\r\n }\r\n\r\n onUserClick(userIndex: number) {\r\n const clickedUserId = this.graphUsers[userIndex].id;\r\n this.clog('Clicked on user id: ' + clickedUserId, 'VERBOSE');\r\n\r\n this.setManagerDetails(userIndex);\r\n\r\n if (this.directoryFeedSource && !this.userMetadata[userIndex].directReports.length) {\r\n this.graphService.getUserDirectReports(clickedUserId)\r\n .pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n )\r\n .subscribe(\r\n (dr) => {\r\n this.clog('Direct Reports:' + JSON.stringify(dr), 'VERBOSE');\r\n this.userMetadata[userIndex]['directReports'] = dr;\r\n },\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.DIRECT_REPORTS, err);\r\n }\r\n );\r\n }\r\n\r\n if (!this.userPhotoUrlList[clickedUserId]) {\r\n if (!this.directoryFeedSource) {\r\n this.userPhotoUrlList[clickedUserId] = {\r\n isAvailable: this.directoryFeedSource,\r\n isLoaded: true,\r\n hasError: false,\r\n url: this.sanitizer.bypassSecurityTrustResourceUrl('')\r\n };\r\n } else {\r\n this.graphService.getUserPhoto(clickedUserId)\r\n .pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n )\r\n .subscribe(\r\n (up) => {\r\n let photoUrl = '';\r\n const photoBlob = new Blob([up], {type: up.type});\r\n if (photoBlob.type === 'image/jpeg' || photoBlob.type === 'image/png') {\r\n photoUrl = window.URL.createObjectURL(photoBlob);\r\n this.userPhotoUrlList[clickedUserId] = {\r\n isAvailable: this.directoryFeedSource,\r\n isLoaded: true,\r\n hasError: false,\r\n url: this.sanitizer.bypassSecurityTrustResourceUrl(photoUrl)\r\n };\r\n }\r\n },\r\n (err) => {\r\n this.clog('Error getting photo', 'WARNING');\r\n this.userPhotoUrlList[clickedUserId] = {\r\n isAvailable: this.directoryFeedSource,\r\n isLoaded: false,\r\n hasError: true,\r\n url: null\r\n };\r\n this.alertService.createAlert2(this.exceptionData.USER_PHOTO, err);\r\n }\r\n );\r\n }\r\n }\r\n this.userMetadata[userIndex].isCollapsed = !this.userMetadata[userIndex].isCollapsed;\r\n }\r\n\r\n personExists(graphUUID) {\r\n return graphUUID.toLowerCase() in this.appUserLookup;\r\n }\r\n\r\n onUserDeselect(userIndex: number) {\r\n this.userMetadata[userIndex]['selected'] = false; // !this.userMetadata[userIndex]['selected'];\r\n\r\n if (this.graphUsers[userIndex].managerId) {\r\n this.removeDependentUser(userIndex);\r\n\r\n // const selectedUUID = this.graphUsers[userIndex].id;\r\n // const managerUserIndex = this.userIndexFromUUID(this.graphUsers[userIndex].managerId);\r\n // if (managerUserIndex !== -1) {\r\n // const requiredByUserIndex = this.userMetadata[managerUserIndex].requiredByUsers.indexOf(selectedUUID);\r\n // if (requiredByUserIndex !== -1 ) {\r\n // this.userMetadata[managerUserIndex].requiredByUsers.splice(requiredByUserIndex, 1);\r\n // }\r\n // }\r\n\r\n }\r\n }\r\n\r\n removeDependentUser(userIndex: number) {\r\n const selectedUUID = this.graphUsers[userIndex].id;\r\n const managerUserIndex = this.userIndexFromUUID(this.graphUsers[userIndex].managerId);\r\n if (managerUserIndex !== -1) {\r\n const requiredByUserIndex = this.userMetadata[managerUserIndex].requiredByUsers.indexOf(selectedUUID);\r\n if (requiredByUserIndex !== -1 ) {\r\n this.userMetadata[managerUserIndex].requiredByUsers.splice(requiredByUserIndex, 1);\r\n if (!this.userMetadata[managerUserIndex].includeInImport()) {\r\n this.removeDependentUser(managerUserIndex);\r\n }\r\n }\r\n // this.userMetadata[managerUserIndex].required = true;\r\n }\r\n }\r\n\r\n onUserSelect(userIndex: number) {\r\n // if (!this.graphUsers[userIndex].managerId && this.directoryFeedSource) {\r\n // this.graphService.getUserManager(this.graphUsers[userIndex].id).subscribe(\r\n // (m) => {\r\n // this.clog('Manager Id: ' + m['id'], 'VERBOSE');\r\n // this.graphUsers[userIndex].managerId = m.id;\r\n // this.graphUsers[userIndex].manager = {\r\n // id: m.id,\r\n // displayName: m.displayName\r\n // };\r\n // },\r\n // (err) => {\r\n // this.alertService.createAlert2(this.exceptionData.MANAGER, err);\r\n // }\r\n // );\r\n // }\r\n this.userMetadata[userIndex]['selected'] = true; // !(this.userMetadata[userIndex]['selected']);\r\n this.setManagerDetails(userIndex);\r\n // if (this.graphUsers[userIndex].managerId) {\r\n // const selectedUUID = this.graphUsers[userIndex].id;\r\n // const managerUserIndex = this.userIndexFromUUID(this.graphUsers[userIndex].managerId);\r\n // if (managerUserIndex !== -1 && !this.personExists(this.graphUsers[userIndex].managerId)) {\r\n // if (this.userMetadata[managerUserIndex].requiredByUsers.indexOf(selectedUUID) === -1 ) {\r\n // this.userMetadata[managerUserIndex].requiredByUsers.push(selectedUUID);\r\n // }\r\n // // this.userMetadata[managerUserIndex].required = true;\r\n // }\r\n // }\r\n }\r\n\r\n retrieveManagerDetails(userIndex: number): Observable {\r\n let manager: Observable;\r\n if (this.directoryFeedSource) {\r\n manager = this.graphService.getUserManager(this.graphUsers[userIndex].id);\r\n } else {\r\n const clickedUser = this.graphUsers[userIndex];\r\n let returnManager = {};\r\n if (clickedUser.managerId) {\r\n if (clickedUser.managerId in this.appUserLookup) {\r\n returnManager = {\r\n id: clickedUser.managerId,\r\n displayName: this.appUserLookup[clickedUser.managerId].user.displayName\r\n };\r\n } else\r\n if (clickedUser.managerId in this.importUserLookup) {\r\n returnManager = {\r\n id: clickedUser.managerId,\r\n displayName: this.importUserLookup[clickedUser.managerId].user.displayName\r\n };\r\n }\r\n }\r\n manager = of({id: returnManager['id'], displayName: returnManager['displayName']});\r\n }\r\n return manager;\r\n }\r\n\r\n setManagerDetails(userIndex: number) {\r\n // if (this.graphUsers[userIndex].managerId && !(this.graphUsers[userIndex].manager || {})['id']) {\r\n // if (!(this.graphUsers[userIndex].manager || {})['id']) {\r\n // const m = await this.retrieveManagerDetails(userIndex).toPromise();\r\n\r\n // this.clog('Manager Id: ' + m['id'], 'VERBOSE');\r\n // this.graphUsers[userIndex].managerId = m.id;\r\n // this.graphUsers[userIndex].manager = {\r\n // id: m.id,\r\n // displayName: m.displayName\r\n // };\r\n // if (m.id in this.importUserLookup) {\r\n // this.setManagerDetails(this.userIndexFromUUID(m.id));\r\n // }\r\n\r\n if (true) { // TODO: If no manager set id to -1 and then check for that here\r\n // if (!this.graphUsers[userIndex].managerId) {\r\n this.retrieveManagerDetails(userIndex)\r\n .pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n )\r\n .subscribe(\r\n (m) => {\r\n this.clog('Manager Id: ' + m['id'], 'VERBOSE');\r\n this.graphUsers[userIndex].managerId = m.id;\r\n this.graphUsers[userIndex].manager = {\r\n id: m.id,\r\n displayName: m.displayName\r\n };\r\n if (this.graphUsers[userIndex].id === m.id) {\r\n this.graphUsers[userIndex].importStatus.errors['MANAGER_LOOP'] = true;\r\n this.graphUsers[userIndex].importStatus.isValid = false;\r\n this.userMetadata[userIndex].isValid = false;\r\n } // else {\r\n if (m.id) {\r\n const selectedUUID = this.graphUsers[userIndex].id;\r\n const managerUserIndex = this.userIndexFromUUID(m.id);\r\n // if (managerUserIndex !== -1 && this.userMetadata[userIndex].selected && !this.personExists(m.id)) {\r\n if (managerUserIndex !== -1 && this.userMetadata[userIndex].includeInImport() && !this.personExists(m.id)) {\r\n if (this.userMetadata[managerUserIndex].requiredByUsers.indexOf(selectedUUID) === -1 ) {\r\n this.userMetadata[managerUserIndex].requiredByUsers.push(selectedUUID);\r\n }\r\n }\r\n }\r\n\r\n // if (!this.userMetadata[userIndex].isValid) {\r\n // this.userMetadata[userIndex].requiredByUsers.forEach( u => {\r\n // const requiredByUserIndex = this.userIndexFromUUID(u);\r\n // this.graphUsers[requiredByUserIndex].importStatus.isValid = false;\r\n // this.graphUsers[requiredByUserIndex].importStatus.errors['INVALID_MANAGER'] = true;\r\n // this.userMetadata[requiredByUserIndex].isValid = false;\r\n // });\r\n // }\r\n\r\n if (m.id in this.importUserLookup) {\r\n const managerUserIndex = this.userIndexFromUUID(m.id);\r\n if (this.userMetadata[managerUserIndex].isValid) {\r\n this.setManagerDetails(managerUserIndex);\r\n }\r\n if (!this.userMetadata[managerUserIndex].isValid) {\r\n this.graphUsers[userIndex].importStatus.isValid = false;\r\n this.graphUsers[userIndex].importStatus.errors['INVALID_MANAGER'] = true;\r\n this.userMetadata[userIndex].isValid = false;\r\n this.userMetadata[userIndex].invalidateDependents();\r\n }\r\n }\r\n // }\r\n },\r\n (err) => {\r\n this.graphUsers[userIndex].importStatus.errors['UNKNOWN_MANAGER'] = true;\r\n this.graphUsers[userIndex].importStatus.isValid = false;\r\n this.userMetadata[userIndex].isValid = false;\r\n this.alertService.createAlert2(this.exceptionData.MANAGER, err);\r\n }\r\n );\r\n }\r\n }\r\n\r\n onSelectAll() {\r\n // this.graphUsers.forEach( (e) => {this.graphUsers3[e.id].selected = true && !this.userInvalid[e.id]; });\r\n this.graphUsers.forEach(\r\n (e, i) => {\r\n // this.userMetadata[i]['selected'] = this.userMetadata[i].isValid;\r\n this.onUserSelect(i);\r\n }\r\n );\r\n }\r\n\r\n onClearAll() {\r\n // this.graphUsers.forEach( (e) => {this.graphUsers3[e.id].selected = false; });\r\n this.graphUsers.forEach(\r\n (e, i) => {\r\n // this.userMetadata[i].selected = false;\r\n this.onUserDeselect(i);\r\n }\r\n );\r\n }\r\n\r\n getWarnings(userIndex: number) {\r\n const warnings = {missingManager: false, missingDepartment: false};\r\n // if ((this.userMetadata[userIndex] || {})['selected']) {\r\n if (this.userMetadata[userIndex].includeInImport()) {\r\n warnings.missingManager = !!(\r\n this.graphUsers[userIndex].manager &&\r\n !(Object.keys(this.appUserLookup).concat(this.selectedUsers.users)).includes(this.graphUsers[userIndex].manager.id) &&\r\n !!this.graphUsers[userIndex].manager.id\r\n );\r\n warnings.missingDepartment = this.graphUsers[userIndex].department &&\r\n !this.allOrgUnitNames.includes(this.graphUsers[userIndex].department);\r\n }\r\n return warnings;\r\n }\r\n\r\n getUserImportExceptions(userIndex: string) {\r\n const exceptions = {\r\n [userImportExceptionType.MISSING_SURNAME]: false,\r\n [userImportExceptionType.MISSING_MANAGER]: false,\r\n [userImportExceptionType.UNKNOWN_MANAGER]: false,\r\n [userImportExceptionType.MANGER_LOOP]: false,\r\n [userImportExceptionType.MISSING_DEPARTMENT]: false,\r\n };\r\n\r\n if (this.userMetadata[userIndex].selected) {\r\n exceptions[userImportExceptionType.MISSING_SURNAME] = this.graphUsers[userIndex].surname.length() < 1;\r\n\r\n exceptions[userImportExceptionType.MISSING_MANAGER] = !!(\r\n this.graphUsers[userIndex].manager &&\r\n !(Object.keys(this.appUserLookup).concat(this.selectedUsers.users)).includes(this.graphUsers[userIndex].manager.id) &&\r\n !!this.graphUsers[userIndex].manager.id\r\n );\r\n\r\n exceptions[userImportExceptionType.UNKNOWN_MANAGER] = (\r\n !this.directoryFeedSource &&\r\n this.graphUsers[userIndex].managerId && !(\r\n this.graphUsers[userIndex].id in this.importUserLookup ||\r\n this.personExists(this.graphUsers[userIndex].id)\r\n )\r\n );\r\n\r\n exceptions[userImportExceptionType.MISSING_DEPARTMENT] = !this.allOrgUnitNames.includes(this.graphUsers[userIndex].department);\r\n\r\n }\r\n return exceptions;\r\n\r\n }\r\n\r\n onSaveClick() {\r\n this.graphService.postUsersList = this.selectedUsers;\r\n this.router.navigate(['graph/update-summary']);\r\n }\r\n\r\n get selectedUserCount(): number {\r\n let selectCount = 0;\r\n this.graphUsers.forEach(\r\n (e, i) => {\r\n if (this.userMetadata[i]['selected']) { selectCount += 1; }\r\n }\r\n );\r\n return selectCount;\r\n }\r\n\r\n get selectedUsers(): any {\r\n return {\r\n source: this.directoryFeedSource ? 'DIRECTORY' : 'FILE',\r\n // users: this.graphUsers.filter( (gu1, guIndex) => { return this.userMetadata[guIndex].selected; }).map( gu2 => gu2.id)\r\n users: this.graphUsers.filter(\r\n (gu1, guIndex) => {\r\n return this.userMetadata[guIndex].includeInImport();\r\n }\r\n ).map( gu2 => {\r\n // const userDetail = {\r\n // uuid: gu2.id,\r\n return {\r\n accountEnabled: true,\r\n id: gu2.id,\r\n displayName: gu2.displayName,\r\n surname: gu2.surname,\r\n givenName: gu2.givenName,\r\n userPrincipalName: gu2.userPrincipalName,\r\n managerId: gu2.managerId,\r\n // managerId: () => {\r\n // return this.userMetadata[guIndex2].ignoreManager ? null : gu2.managerId;\r\n // },\r\n department: gu2.department || ''\r\n };\r\n // const userRecord = {};\r\n // userRecord[gu2.id] = this.directoryFeedSource ? {} : userDetail;\r\n // return userRecord;\r\n })\r\n };\r\n }\r\n\r\n userIndexFromUUID(uuid: string): number {\r\n return this.graphUsers.findIndex( gu => {\r\n return gu.id === uuid;\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

\r\n This screen presents a list of users that are defined within your organisation's directory or have been imported from a file.\r\n Users that have previously been added to {{appName}} are shown with the\r\n Existing User label, and those which have not are shown with the\r\n Missing User label. Click on the\r\n Details link to toggle full information of the user from your organisation's directory.\r\n

\r\n

\r\n To update the details of an existing user click on the Update button.\r\n To add a new user click on the Add button. \r\n Once you have selected all users to be added / updated click on the Save button to update\r\n the {{appName}} database.\r\n

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n

Selected {{selectedUsers['users']?.length}} of {{graphUsers?.length}} users

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Import Users from {{directoryFeedSource ? 'Directory' : 'File'}}
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n {{pu.displayName}}\r\n \r\n \r\n \r\n \r\n \r\n Invalid Source Data\r\n {{personExists(pu.id) ? 'Existing User' : 'Missing User'}}\r\n \r\n \r\n Required\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n

\r\n \r\n This user's manager does not currently exist in {{appName}}. \r\n To ensure data integrity the manager details have been automatically selected for import.\r\n

\r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n This user's department does not currently exist in {{appName}}. \r\n To ensure data integrity the department will be automatically created when this user is imported.\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n","import { Component, Input, OnInit } from '@angular/core';\r\n\r\nimport { Person } from '../person/person';\r\n\r\n@Component({\r\n selector: 'ug-graph-user-table',\r\n templateUrl: './graph-user-table.component.html',\r\n styleUrls: ['./graph-user-table.component.css']\r\n})\r\nexport class GraphUserTableComponent implements OnInit {\r\n\r\n @Input()\r\n tableTitle: string;\r\n @Input()\r\n userList: Array;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n console.log('XXX');\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
{{tableTitle}} ({{userList?.length}} items)
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 0, 'text-muted': userList?.length === 0}\">\r\n \r\n \r\n \r\n
NameSupervisorOrganisation Unit
{{updatedUser.displayName}}{{updatedUser.supervisorName}}{{updatedUser.orgUnitName}}
{{tableTitle}}: {{userList?.length}}
\r\n
\r\n \r\n
\r\n
\r\n","import { Component, Input, OnDestroy, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router} from '@angular/router';\r\n\r\nimport { Observable , Subject , Subscription, throwError } from 'rxjs';\r\nimport { catchError, flatMap, map, takeUntil } from 'rxjs/operators';\r\n\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { ConfigService } from '../core/config.service';\r\n\r\nimport { OrgUnit } from '../org-unit/org-unit';\r\nimport { OrgUnitService, OrgUnitDescendants } from '../org-unit/org-unit.service';\r\nimport { UsersPostResponse } from '../graph/graph.service';\r\nimport { GraphUserTableComponent } from '../graph/graph-user-table.component';\r\n// import { BindingDef } from '../../../node_modules/@angular/core/src/view';\r\n\r\n@Component({\r\n selector: 'ug-graph-users-post-summary',\r\n templateUrl: './graph-users-post-summary.component.html',\r\n styleUrls: ['./graph-users-post-summary.component.css']\r\n})\r\nexport class GraphUsersPostSummaryComponent implements OnDestroy, OnInit {\r\n\r\n @Input()\r\n usersPostResponse: UsersPostResponse;\r\n\r\n updateInProgress = false;\r\n\r\n allOrgUnits: Array;\r\n orgUnitDescendants: any = {};\r\n\r\n parentOrgUnitList: Array<{\r\n selectedOrgUnit: OrgUnit;\r\n selectList: Array;\r\n }> = [];\r\n\r\n orgUnitsSubs = new Subscription();\r\n ngUnsubscribe: Subject = new Subject();\r\n\r\n exceptionData = {\r\n 'ORG_UNITS': {\r\n level: AlertLevels.ERROR,\r\n code: 'GUS-001',\r\n message: 'Error retrieving org units'\r\n } as AlertData,\r\n 'UPDATE_ORG_UNIT': {\r\n level: AlertLevels.ERROR,\r\n code: 'GUS-002',\r\n message: 'Error updating parent org unit'\r\n } as AlertData,\r\n };\r\n\r\n appName = this.configService.title;\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private router: Router,\r\n private alertService: AlertService,\r\n private configService: ConfigService,\r\n private orgUnitService: OrgUnitService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.orgUnitsSubs = this.orgUnitService.getOrgUnits().pipe(\r\n map( ou => this.allOrgUnits = ou),\r\n flatMap( () => this.orgUnitService.getOrgUnitsDescendants().pipe(\r\n map (oud => this.orgUnitDescendants = this.buildDescendantDict(oud)),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n )),\r\n flatMap( () => this.route.data),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n )\r\n .subscribe(\r\n (data: {upr: UsersPostResponse}) => {\r\n this.usersPostResponse = data.upr;\r\n this.usersPostResponse.orgUnits.new.forEach(\r\n (newOrgUnit, index) => {\r\n this.parentOrgUnitList[index] = {selectedOrgUnit: new OrgUnit(), selectList: []};\r\n this.parentOrgUnitList[index].selectedOrgUnit.id = newOrgUnit.parentOrgUnitId;\r\n this.parentOrgUnitList[index].selectList =\r\n this.buildParentSelectList(\r\n this.allOrgUnits, this.orgUnitDescendants, newOrgUnit,\r\n this.parentOrgUnitList[index].selectedOrgUnit\r\n );\r\n }\r\n );\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.ORG_UNITS, err);\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n this.orgUnitsSubs.unsubscribe();\r\n this.ngUnsubscribe.next(true);\r\n this.ngUnsubscribe.complete();\r\n }\r\n\r\n onOUParentUpdateClick(ouIndex: number) {\r\n this.updateInProgress = true;\r\n console.log(JSON.stringify(this.usersPostResponse.orgUnits.new[ouIndex]));\r\n const OUUpdateData = Object.assign(new OrgUnit(), this.usersPostResponse.orgUnits.new[ouIndex]);\r\n OUUpdateData.parentOrgUnitId = this.parentOrgUnitList[ouIndex].selectedOrgUnit.id;\r\n OUUpdateData.parentOrgUnitName = this.parentOrgUnitList[ouIndex].selectedOrgUnit.name;\r\n OUUpdateData.parentOrgUnitDescription = this.parentOrgUnitList[ouIndex].selectedOrgUnit.description;\r\n\r\n this.orgUnitService.updateOrgUnitParent(OUUpdateData).pipe(\r\n map(ou => this.usersPostResponse.orgUnits.new[ouIndex] = ou),\r\n flatMap(() => this.orgUnitService.getOrgUnitsDescendants()),\r\n catchError(err => { return throwError(err); }),\r\n takeUntil(this.ngUnsubscribe)\r\n ).subscribe(\r\n (oud: Array) => {\r\n this.parentOrgUnitList.forEach( element => element.selectList = [] );\r\n this.orgUnitDescendants = this.buildDescendantDict(oud);\r\n console.log(JSON.stringify(this.orgUnitDescendants));\r\n this.usersPostResponse.orgUnits.new.forEach(\r\n (newOrgUnit, index) => {\r\n this.parentOrgUnitList[index].selectList =\r\n this.buildParentSelectList(\r\n this.allOrgUnits, this.orgUnitDescendants, newOrgUnit,\r\n this.parentOrgUnitList[index].selectedOrgUnit\r\n );\r\n this.updateInProgress = false;\r\n }\r\n );\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.UPDATE_ORG_UNIT, err);\r\n }\r\n );\r\n }\r\n\r\n buildDescendantDict(descendantData: Array): any {\r\n const descendantDict = {};\r\n descendantData.forEach(\r\n descendant => (descendantDict[descendant['orgUnitId']] = descendantDict[descendant['orgUnitId']] || [])\r\n .push(descendant.descendantOrgUnitId)\r\n );\r\n return descendantDict;\r\n }\r\n\r\n buildParentSelectList(\r\n allOrgUnits: Array,\r\n orgUnitDescendants: any,\r\n newOrgUnit: OrgUnit,\r\n selectedParentOU: OrgUnit\r\n ): Array {\r\n\r\n const parentSelectList: Array = [];\r\n\r\n allOrgUnits.forEach( orgUnit => {\r\n if (!(orgUnitDescendants[newOrgUnit.id] || []).includes(orgUnit.id) && orgUnit.id !== newOrgUnit.id) {\r\n parentSelectList.push(orgUnit);\r\n }\r\n });\r\n return parentSelectList;\r\n }\r\n\r\n onUpdateCancelClick(ouIndex: number) {\r\n const j = Object.assign(new OrgUnit(), this.parentOrgUnitList[ouIndex].selectedOrgUnit);\r\n j.id = this.usersPostResponse.orgUnits.new[ouIndex].parentOrgUnitId;\r\n this.parentOrgUnitList[ouIndex].selectedOrgUnit = j;\r\n }\r\n\r\n disableUpdateButton(ouIndex: number) {\r\n if ( this.parentOrgUnitList[ouIndex].selectedOrgUnit.id === this.usersPostResponse.orgUnits.new[ouIndex].parentOrgUnitId ||\r\n this.updateInProgress === true ) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n disableCancelButton(ouIndex: number) {\r\n return this.disableUpdateButton(ouIndex);\r\n }\r\n\r\n matchOUParent( ou1: OrgUnit, ou2: OrgUnit) {\r\n return ou1 && ou2 ? ou1.id === ou2.id : ou1 === ou2;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
User Import Summary
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
Organisation Units Added ({{usersPostResponse?.orgUnits.new.length}} items)
\r\n

\r\n Organisation Units are added when a user is added or modified and their Organisation Unit does not exist in {{appName}}.\r\n These new Organisation Units are created with a default value for their parent organisation unit.\r\n

\r\n

\r\n If required, the parent value may be modified in the table below.\r\n

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 0, 'text-muted': usersPostResponse?.orgUnits.new.length === 0}\">\r\n \r\n \r\n \r\n
Organisation UnitParent Organisation Unit
{{addedOrgUnit.name}}\r\n \r\n \r\n \r\n
Organisation Units added: {{usersPostResponse?.orgUnits.new.length}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ug-graph',\r\n templateUrl: './graph.component.html',\r\n styleUrls: ['./graph.component.css']\r\n})\r\nexport class GraphComponent implements OnInit {\r\n\r\n constructor( ) { }\r\n\r\n ngOnInit() {\r\n }\r\n}\r\n\r\n","\r\n\r\n\r\n \r\n \r\n\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { ControlsModule } from '../controls/controls.module';\r\nimport { GraphRoutingModule } from './graph-routing.module';\r\n\r\nimport { GraphService } from './graph.service';\r\nimport { GraphComponent } from './graph.component';\r\nimport { GraphUserDetailComponent } from './graph-user-detail.component';\r\nimport { GraphUsersPostSummaryComponent } from './graph-users-post-summary.component';\r\nimport { GraphUserListComponent } from './graph-user-list.component';\r\nimport { GraphUserTableComponent } from './graph-user-table.component';\r\nimport { UserImportComponent } from './user-import.component';\r\nimport { ImportErrorListComponent } from './import-error-list.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ControlsModule,\r\n GraphRoutingModule\r\n ],\r\n declarations: [\r\n GraphComponent,\r\n GraphUserDetailComponent,\r\n GraphUsersPostSummaryComponent,\r\n GraphUserListComponent,\r\n GraphUserTableComponent,\r\n UserImportComponent,\r\n ImportErrorListComponent\r\n ],\r\n providers: [GraphService],\r\n exports: [\r\n GraphComponent,\r\n GraphUserDetailComponent,\r\n GraphUsersPostSummaryComponent,\r\n GraphUserListComponent,\r\n GraphUserTableComponent,\r\n UserImportComponent,\r\n ImportErrorListComponent\r\n ]\r\n})\r\nexport class GraphModule { }\r\n","import { Injectable, OnDestroy } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { BehaviorSubject, Observable, Subscription, of, throwError } from 'rxjs';\r\nimport { catchError, map } from 'rxjs/operators';\r\n\r\nimport { environment } from 'environments/environment';\r\n\r\nimport { GraphUser } from '../graph/graph-user';\r\nimport { OrgUnit } from '../org-unit/org-unit';\r\nimport { Person} from '../person/person';\r\nimport { json } from 'd3';\r\n\r\nexport abstract class UsersPostResponse {\r\n people: {\r\n new: Array;\r\n updated: Array;\r\n associated: Array;\r\n rejected: Array;\r\n };\r\n orgUnits: {\r\n new: Array;\r\n };\r\n}\r\n\r\nabstract class UsersPostPayload {\r\n users: Array;\r\n}\r\n\r\nexport interface UserFeed {\r\n feedSource?: number;\r\n userList: Array;\r\n}\r\n\r\nexport enum UserFeedSource {\r\n UNDEFINED,\r\n CSOD,\r\n DIRECTORY,\r\n FILE\r\n}\r\n\r\nconst apiServerUri = environment.apiUrl;\r\n\r\n@Injectable()\r\nexport class GraphService implements OnDestroy {\r\n\r\n upro: UsersPostResponse;\r\n postUsersList: UsersPostPayload = {users: []};\r\n\r\n userFeed: BehaviorSubject = new BehaviorSubject({\r\n feedSource: UserFeedSource.UNDEFINED, userList: []\r\n });\r\n userFeedSubs = new Subscription();\r\n\r\n constructor( private http: HttpClient) {\r\n this.userFeedSubs = this.userFeed.subscribe(\r\n uf => console.log('user feed changed:' + JSON.stringify(uf))\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n this.userFeedSubs.unsubscribe();\r\n }\r\n\r\n get ursusUpdateSummary(): Observable {\r\n return of(this.upro);\r\n }\r\n\r\n getUsers(): Observable> {\r\n return this.http.get>(`${apiServerUri}/graph/users`).pipe(\r\n map( (resp) => { return resp; }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getUserManager(userId: string): any { // Observable {\r\n return this.http.get(`${apiServerUri}/graph/users/${userId}/manager`).pipe(\r\n map(\r\n resp => {\r\n console.log(JSON.stringify(resp));\r\n return resp || null;\r\n },\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n )\r\n );\r\n }\r\n\r\n postGraphUsers(): Observable {\r\n return this.http.post(\r\n `${apiServerUri}/graph/users`,\r\n this.postUsersList,\r\n )\r\n .pipe(\r\n map( resp => {\r\n this.upro = resp['usersPostResponse'];\r\n return resp['usersPostResponse'] || {};\r\n }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getUserDirectReports(userId: string) {\r\n return this.http.get(`${apiServerUri}/graph/users/${userId}/direct-reports`)\r\n .pipe(\r\n map(\r\n resp => {\r\n return resp['value'] || null;\r\n }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getUserGroups(userId: string): Observable {\r\n return this.http.get(`${apiServerUri}/graph/users/${userId}/security-groups`).pipe(\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getUserPhoto(userId: string): Observable {\r\n return this.http.get(\r\n `${apiServerUri}/graph/users/${userId}/photo`,\r\n {responseType: 'blob'}\r\n )\r\n // return this.http.get(\r\n // 'https://graph.microsoft.com/v1.0/me/photo/$value',\r\n // {\r\n // responseType: 'blob'\r\n // }\r\n // )\r\n .pipe(\r\n map( resp => {\r\n return new Blob([resp], {type: resp.type} );\r\n }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n parseUserImportFile(userImportData: FormData): Observable {\r\n return this.http.post(\r\n `${apiServerUri}/graph/users/parse-user-file`,\r\n userImportData\r\n ).pipe(\r\n map( resp => {\r\n console.log(resp);\r\n return resp;\r\n }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n setUserFeed(userFeed: UserFeed) {\r\n this.userFeed.next(userFeed);\r\n }\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ug-import-error-list',\r\n templateUrl: './import-error-list.component.html',\r\n styleUrls: ['./import-error-list.component.css']\r\n})\r\nexport class ImportErrorListComponent implements OnInit {\r\n\r\n @Input()\r\n errors: any;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n get hasErrors(): boolean {\r\n return Object.keys(this.errors).length > 0;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
This record has the following error(s) preventing its import:
\r\n
    \r\n
  • \r\n This user is not enabled\r\n
  • \r\n
  • \r\n The ID associated with this user is not unique\r\n
  • \r\n
  • \r\n No surname has been supplied for this user\r\n
  • \r\n
  • \r\n The manager for this user does not already exist in the system and has not been supplied in the import file\r\n
  • \r\n
  • \r\n The manager for this user does not already exist in the system and cannot be imported as it is invalid\r\n
  • \r\n
  • \r\n A loop has been detected in the management hierarchy for this user.\r\n This could be caused by them being defined as their own manager or by one of their reports (direct or indirect) also existing above them in the management hierarchy.\r\n
  • \r\n
\r\n

\r\n Please refer to the issues highlighted above, correct the problem(s) in the source system / file and then re-import the user.\r\n

\r\n
\r\n \r\n
","import { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { Observable , of } from 'rxjs';\r\nimport { concatMap, takeWhile } from 'rxjs/operators';\r\n\r\nimport { AlertService, AlertLevels, AlertData} from '../core/alert.service';\r\nimport { GraphService, UserFeed, UserFeedSource } from '../graph/graph.service';\r\nimport { tree } from 'd3';\r\n\r\n@Component({\r\n selector: 'ug-user-import',\r\n templateUrl: './user-import.component.html',\r\n styleUrls: ['./user-import.component.css']\r\n})\r\nexport class UserImportComponent implements OnDestroy, OnInit {\r\n\r\n importUserFile = new FormData();\r\n userImportSource: number;\r\n\r\n userFeedSource = UserFeedSource;\r\n\r\n selectedFileName: string;\r\n\r\n private ngUnsubscribe = false;\r\n\r\n exceptionData = {\r\n 'DIRECTORY_USERS': {\r\n level: AlertLevels.ERROR,\r\n code: 'UIM-001',\r\n message: 'Error retrieving directory user list'\r\n } as AlertData,\r\n 'FILE_USERS': {\r\n level: AlertLevels.ERROR,\r\n code: 'UIM-002',\r\n message: 'Error parsing user import file'\r\n } as AlertData,\r\n };\r\n\r\n constructor(private alertService: AlertService, private graphService: GraphService, private router: Router) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n ngOnDestroy() {\r\n this.ngUnsubscribe = true;\r\n }\r\n\r\n onImportFileChange(event) {\r\n this.selectedFileName = event.target.files[0].name;\r\n this.importUserFile.append('userImportFile', event.target.files[0], event.target.files[0].name);\r\n }\r\n\r\n onSubmitClick() {\r\n let userFeedSupplier: Observable = new Observable();\r\n\r\n if (this.userImportSource === this.userFeedSource.DIRECTORY) {\r\n userFeedSupplier = this.graphService.getUsers();\r\n } else if (this.userImportSource === this.userFeedSource.FILE) {\r\n userFeedSupplier = this.graphService.parseUserImportFile(this.importUserFile);\r\n } else {\r\n return;\r\n }\r\n\r\n userFeedSupplier\r\n .pipe(\r\n // Fudge to allow takeWhile operator to complete subscription while still providing\r\n // the final (only in this case) value returned by observable.\r\n concatMap( uf => {\r\n if (this.ngUnsubscribe) {\r\n // unsunscribe has been triggered, so emit current value followed by null\r\n return of(uf, null);\r\n } else {\r\n // shouldn't happen in this particular feed\r\n return of(uf);\r\n }\r\n }),\r\n // null value emitted above will cause takeWhile() to complete subscription\r\n // It is likely that we could get away with using take(1) instead and not worry about the ngUnsubscribe flag\r\n // but this more complex version is included for flexibility and example code\r\n takeWhile( uf => uf !== null)\r\n )\r\n .subscribe(\r\n r => {\r\n this.graphService.setUserFeed(\r\n {\r\n feedSource: this.userImportSource,\r\n userList: r\r\n } as UserFeed\r\n );\r\n },\r\n err => this.alertService.createAlert2(this.exceptionData.DIRECTORY_USERS, err)\r\n );\r\n this.router.navigate(['graph/users']); // triggers ngOnDestory() and setting of ngUnsubscribe flag to true\r\n }\r\n\r\n get continueButtonDisabled(): boolean {\r\n return !(\r\n this.userImportSource === UserFeedSource.DIRECTORY ||\r\n ( this.userImportSource === UserFeedSource.FILE && (this.selectedFileName || '').length > 0 )\r\n );\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n
Import Users
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
Select a file to upload
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, EventEmitter, OnDestroy, OnInit, Output } from '@angular/core';\r\nimport { AlertService, AlertData, AlertLevels } from '../core/alert.service';\r\nimport { FormBuilder, FormGroup, AbstractControl, Validators, ValidatorFn } from '@angular/forms';\r\n\r\nimport { Subject , Subscription } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\n\r\nimport { JobRoleService, JobFamily, JobGradeSet } from './job-role.service';\r\n// import { tickStep } from '../../../node_modules/@types/d3';\r\n\r\n@Component({\r\n selector: 'ug-job-family',\r\n templateUrl: './job-family.component.html',\r\n styleUrls: ['./job-family.component.css']\r\n})\r\nexport class JobFamilyComponent implements OnDestroy, OnInit {\r\n\r\n @Output() selectedJobFamilyChange: EventEmitter = new EventEmitter();\r\n\r\n exceptionData = {\r\n 'JOB_GRADE_SET_LIST': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRL-001',\r\n message: 'Error retrieving job grade sets'\r\n } as AlertData,\r\n 'JOB_GRADE_SET_CREATE': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRL-002',\r\n message: 'Error creating job grade set'\r\n } as AlertData,\r\n 'JOB_GRADE_SET_UPDATE': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRL-003',\r\n message: 'Error updating job grade set'\r\n } as AlertData,\r\n };\r\n\r\n fgJobFamilies: FormGroup;\r\n jobFamilyList: Array = [];\r\n jobGradeSets: Array = [];\r\n // parentGraph: any = {};\r\n selectedJobGradeIndex = null;\r\n addingJobFamilyInProgress = false;\r\n loadingData = true;\r\n\r\n jobFamiliesSubs = new Subscription();\r\n jobGradeSetsSubs = new Subscription();\r\n private ngUnsubscribe: Subject = new Subject();\r\n\r\n constructor(private alertService: AlertService, private fb: FormBuilder, private jobRoleService: JobRoleService ) {\r\n this.createForm();\r\n }\r\n\r\n ngOnInit() {\r\n this.loadingData = true;\r\n this.jobFamiliesSubs = this.jobRoleService.getJobFamilies().subscribe(\r\n jf => {\r\n this.jobFamilyList = jf;\r\n this.populateFormInitial();\r\n this.loadingData = false;\r\n // jf.forEach( j => this.parentGraph[j.id] = {parentJobFamilyId: j.parentJobFamilyId} );\r\n // console.dir(this.parentGraph);\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.JOB_GRADE_SET_LIST, err);\r\n this.loadingData = false;\r\n }\r\n );\r\n this.jobGradeSetsSubs = this.jobRoleService.getJobGradeSets().subscribe(\r\n jgs => {\r\n this.jobGradeSets = jgs;\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n this.jobFamiliesSubs.unsubscribe();\r\n this.jobGradeSetsSubs.unsubscribe();\r\n this.ngUnsubscribe.next(true);\r\n this.ngUnsubscribe.complete();\r\n }\r\n\r\n createForm() {\r\n this.fgJobFamilies = this.fb.group(\r\n {\r\n jobFamilies: this.fb.array([])\r\n }\r\n );\r\n }\r\n\r\n populateFormInitial() {\r\n this.fgJobFamilies.setControl(\r\n 'jobFamilies',\r\n this.fb.array(this.getJobFamiliesControls(this.jobFamilyList))\r\n );\r\n }\r\n\r\n formControlValid(controlName: string): boolean {\r\n const c: AbstractControl = this.fgJobFamilies.get(controlName);\r\n return c.disabled || !(c.touched && c.invalid);\r\n }\r\n\r\n getJobFamiliesControls(jobFamiliesArray: Array): Array {\r\n const jobFamiliesControlArray = [];\r\n jobFamiliesArray.forEach(\r\n gs => {\r\n jobFamiliesControlArray.push(this.fb.group(\r\n {\r\n description: gs.description,\r\n id: gs.id,\r\n jobGradeSetId: [gs.jobGradeSetId, Validators.required],\r\n name: [gs.name, Validators.required],\r\n parentJobFamilyId: [gs.parentJobFamilyId, this.parentNoLoopValidator()]\r\n })\r\n );\r\n }\r\n );\r\n return jobFamiliesControlArray;\r\n }\r\n\r\n onJobFamilyClick(listIndex: number) {\r\n this.selectedJobGradeIndex = listIndex;\r\n this.selectedJobFamilyChange.emit(listIndex);\r\n }\r\n\r\n onAddJobFamilyClick() {\r\n this.fgJobFamilies.addControl(\r\n 'newJobFamily',\r\n this.fb.group(\r\n {\r\n description: [''],\r\n id: [null],\r\n jobGradeSetId: [null, Validators.required],\r\n name: ['', Validators.required],\r\n parentJobFamilyId: [-1, [this.parentNoLoopValidator(), this.notUnspecified()]]\r\n }\r\n )\r\n );\r\n this.addingJobFamilyInProgress = true;\r\n }\r\n\r\n onDeleteJobFamilyClick(index: number ) {}\r\n onRestoreJobFamilyClick(index: number) {}\r\n onDiscardJobFamilyClick(jobFamilyIndex: number) {\r\n const jobFamily = this.fgJobFamilies.get('jobFamilies.' + jobFamilyIndex);\r\n jobFamily.patchValue(\r\n {\r\n description: this.jobFamilyList[jobFamilyIndex].description,\r\n id: this.jobFamilyList[jobFamilyIndex].id,\r\n jobGradeSetId: this.jobFamilyList[jobFamilyIndex].jobGradeSetId,\r\n name: this.jobFamilyList[jobFamilyIndex].name,\r\n parentJobFamilyId: this.jobFamilyList[jobFamilyIndex].parentJobFamilyId\r\n }\r\n );\r\n jobFamily.markAsPristine();\r\n }\r\n\r\n onUpdateJobFamilyClick(jobFamilyIndex: number) {\r\n const jobFamily = this.fgJobFamilies.get('jobFamilies.' + jobFamilyIndex);\r\n this.jobRoleService.updateJobFamily(jobFamily.value.id, jobFamily.value).pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n ).subscribe(\r\n jgs => {\r\n this.jobFamilyList[jobFamilyIndex] = jgs;\r\n // this.fgJobFamilies.get('jobFamilys.' + jobFamilyIndex).patchValue(\r\n jobFamily.patchValue(\r\n {\r\n description: jgs.description,\r\n id: jgs.id,\r\n jobGradeSetId: jgs.jobGradeSetId,\r\n name: jgs.name,\r\n parentJobFamilyId: jgs.parentJobFamilyId\r\n }\r\n );\r\n jobFamily.markAsPristine();\r\n }\r\n );\r\n }\r\n\r\n onNewJobFamilyDoneClick() {\r\n const newJobFamily = this.fgJobFamilies.get('newJobFamily').value;\r\n (\r\n newJobFamily.id ?\r\n this.jobRoleService.updateJobFamily(newJobFamily.id, newJobFamily) :\r\n this.jobRoleService.createJobFamily(newJobFamily)\r\n ).pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n ).subscribe(\r\n jgs => {\r\n // console.log(JSON.stringify(jgs));\r\n this.jobFamilyList.push(jgs);\r\n this.populateFormInitial();\r\n this.addingJobFamilyInProgress = false;\r\n this.fgJobFamilies.removeControl('newJobFamily');\r\n },\r\n err => {\r\n this.alertService.createAlert2(\r\n this.exceptionData[newJobFamily.id ? 'JOB_GRADE_SET_UPDATE' : 'JOB_GRADE_SET_CREATE'],\r\n err\r\n );\r\n }\r\n );\r\n\r\n }\r\n\r\n onNewJobFamilyDeleteClick() {\r\n this.fgJobFamilies.removeControl('newJobFamily');\r\n this.addingJobFamilyInProgress = false;\r\n }\r\n\r\n trackByFn(index: any, item: any) {\r\n return index;\r\n }\r\n\r\n parentNoLoopValidator(): ValidatorFn {\r\n return (control: AbstractControl): {[key: string]: any} => {\r\n let currentJobFamilyId = control.value;\r\n if ((control.value || -1) > 0 && control.parent) {\r\n // console.log(`In PJF Validator for parent id: ${control.value}, id: ${control.parent.get('id').value}`);\r\n if (control.value === control.parent.get('id').value) {\r\n return {'parentNoSelf': {value: control.value}};\r\n }\r\n while ((this.parentGraph[currentJobFamilyId] || {}).parentJobFamilyId) {\r\n // console.log('Validate JF ID: ' + currentJobFamilyId);\r\n // console.log('Parent Job Family: ' + this.parentGraph[currentJobFamilyId].parentJobFamilyId);\r\n // if (this.parentGraph[currentJobFamilyId].parentJobFamilyId === control.value) {\r\n if (this.parentGraph[currentJobFamilyId].parentJobFamilyId === control.parent.get('id').value) {\r\n // if (this.parentGraph[control.value].parentJobFamilyId === control.parent.get('id').value) {\r\n // console.log('JF Matched');\r\n return {'parentNoLoop': {value: control.value}};\r\n }\r\n // console.log('JF Not matched');\r\n currentJobFamilyId = this.parentGraph[currentJobFamilyId].parentJobFamilyId;\r\n }\r\n }\r\n return null;\r\n };\r\n }\r\n\r\n notUnspecified(): ValidatorFn {\r\n return (control: AbstractControl): {[key: string]: any} => {\r\n if (control.value === -1) {\r\n return {'valueUnspecified': {value: control.value}};\r\n }\r\n return null;\r\n };\r\n }\r\n\r\n gradeSetNameFromId(jobGradeSetId: number) {\r\n return (jobGradeSetId && this.jobGradeSets.find( jgs => { return jgs.id === jobGradeSetId; }) || {})['name'];\r\n }\r\n\r\n jobFamilyNameFromId(jobFamilyId: number) {\r\n return (jobFamilyId && this.jobFamilyList.find( jf => { return jf.id === jobFamilyId; }) || {})['name'];\r\n }\r\n\r\n get jobFamiliesArray(): Array {\r\n return this.fgJobFamilies.get('jobFamilies').value;\r\n }\r\n\r\n get parentGraph() {\r\n const parentGraph = {};\r\n this.jobFamiliesArray.forEach( j => parentGraph[j.id] = {parentJobFamilyId: j.parentJobFamilyId} );\r\n // console.dir(parentGraph);\r\n return parentGraph;\r\n\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n Job Families\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
NameDescriptionParent Job FamilyJob Grade Set
\r\n
\r\n \r\n
Job Family Name is required
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
Job Family cannot be its own parent
\r\n
Loop detected in Job Family hierarchy
\r\n
Parent Job Family (or 'n/a') is required
\r\n
\r\n
\r\n
\r\n \r\n
Job Grade Set is required
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
Job Family Name is required
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
Job Family cannot be its own parent
\r\n
Loop detected in Job Family hierarchy
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\nimport { JobGradeSetComponent } from '../job-role/job-grade-set.component';\r\nimport { JobGradeComponent } from '../job-role/job-grade.component';\r\nimport { JobGradeSet } from '../job-role/job-role.service';\r\n\r\n@Component({\r\n selector: 'ug-job-grade-set-grade',\r\n templateUrl: './job-grade-set-grade.component.html',\r\n styleUrls: ['./job-grade-set-grade.component.css']\r\n})\r\nexport class JobGradeSetGradeComponent implements OnInit {\r\n\r\n selectedJobGradeSet: JobGradeSet;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n onjobGradeSetChange(newJobGradeSet: JobGradeSet) {\r\n this.selectedJobGradeSet = newJobGradeSet;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n","import { Component, EventEmitter, OnDestroy, OnInit, Output, ViewEncapsulation } from '@angular/core';\r\nimport { FormArray, FormBuilder, FormControl, FormGroup, Validators, ValidatorFn, AbstractControl } from '@angular/forms';\r\n\r\nimport { Subject , Subscription } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\n\r\nimport { AlertService, AlertData, AlertLevels} from '../core/alert.service';\r\nimport { JobRoleService, JobGradeSet} from '../job-role/job-role.service';\r\n// import { formatPrefix } from '../../../node_modules/@types/d3';\r\n\r\n@Component({\r\n encapsulation: ViewEncapsulation.None, // Allow styles on injected elements\r\n selector: 'ug-job-grade-set',\r\n templateUrl: './job-grade-set.component.html',\r\n styleUrls: ['./job-grade-set.component.css']\r\n})\r\nexport class JobGradeSetComponent implements OnDestroy, OnInit {\r\n\r\n @Output() selectedJobGradeSetChange: EventEmitter = new EventEmitter();\r\n\r\n exceptionData = {\r\n 'JOB_GRADE_SET_LIST': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRL-001',\r\n message: 'Error retrieving job grade sets'\r\n } as AlertData,\r\n 'JOB_GRADE_SET_CREATE': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRL-002',\r\n message: 'Error creating job grade set'\r\n } as AlertData,\r\n 'JOB_GRADE_SET_UPDATE': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRL-003',\r\n message: 'Error updating job grade set'\r\n } as AlertData,\r\n };\r\n\r\n fgGradeSets: FormGroup;\r\n jobGradeSetsList: Array = [];\r\n selectedJobGradeIndex = -1;\r\n addingGradeSetInProgress = false;\r\n loadingData = true;\r\n\r\n jobGradeSetsSubs = new Subscription();\r\n private ngUnsubscribe: Subject = new Subject();\r\n\r\n constructor(private alertService: AlertService, private fb: FormBuilder, private jobRoleService: JobRoleService) {\r\n this.createForm();\r\n }\r\n\r\n ngOnInit() {\r\n this.loadingData = true;\r\n this.jobGradeSetsSubs = this.jobRoleService.getJobGradeSets().subscribe(\r\n jgs => {\r\n this.jobGradeSetsList = jgs;\r\n this.populateFormInitial();\r\n this.loadingData = false;\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.JOB_GRADE_SET_LIST, err);\r\n this.loadingData = false;\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n this.jobGradeSetsSubs.unsubscribe();\r\n this.ngUnsubscribe.next(true);\r\n this.ngUnsubscribe.complete();\r\n }\r\n\r\n createForm() {\r\n this.fgGradeSets = this.fb.group(\r\n {\r\n gradeSets: this.fb.array([])\r\n }\r\n );\r\n }\r\n\r\n populateFormInitial() {\r\n this.fgGradeSets.setControl(\r\n 'gradeSets',\r\n this.fb.array(this.getGradeSetsControls(this.jobGradeSetsList))\r\n );\r\n }\r\n\r\n formControlValid(controlName: string): boolean {\r\n const c: AbstractControl = this.fgGradeSets.get(controlName);\r\n return c.disabled || !(c.touched && c.invalid);\r\n }\r\n\r\n getGradeSetsControls(gradeSetsArray: Array): Array {\r\n const gradeSetsControlArray = [];\r\n gradeSetsArray.forEach(\r\n gs => {\r\n gradeSetsControlArray.push(this.fb.group(\r\n {\r\n description: gs.description,\r\n id: gs.id,\r\n name: [gs.name, Validators.required]\r\n })\r\n );\r\n }\r\n );\r\n return gradeSetsControlArray;\r\n }\r\n\r\n onGradeSetClick(listIndex: number) {\r\n console.log('Row clicked');\r\n this.selectedJobGradeIndex = listIndex;\r\n this.selectedJobGradeSetChange.emit(this.jobGradeSetsList[listIndex]);\r\n }\r\n\r\n onAddGradeSetClick() {\r\n this.fgGradeSets.addControl(\r\n 'newGradeSet',\r\n this.fb.group(\r\n {\r\n description: [''],\r\n id: [null],\r\n name: ['', Validators.required]\r\n }\r\n )\r\n );\r\n this.addingGradeSetInProgress = true;\r\n }\r\n\r\n onDeleteGradeSetClick(index: number ) {}\r\n onRestoreGradeSetClick(index: number) {}\r\n onDiscardGradeSetClick(gradeSetIndex: number) {\r\n const gradeSet = this.fgGradeSets.get('gradeSets.' + gradeSetIndex);\r\n gradeSet.patchValue(\r\n {\r\n description: this.jobGradeSetsList[gradeSetIndex].description,\r\n id: this.jobGradeSetsList[gradeSetIndex].id,\r\n name: this.jobGradeSetsList[gradeSetIndex].name\r\n }\r\n );\r\n gradeSet.markAsPristine();\r\n }\r\n\r\n onUpdateGradeSetClick(gradeSetIndex: number) {\r\n const gradeSet = this.fgGradeSets.get('gradeSets.' + gradeSetIndex);\r\n this.jobRoleService.updateJobGradeSet(gradeSet.value.id, {jobGradeSet: gradeSet.value}).pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n ).subscribe(\r\n jgs => {\r\n this.jobGradeSetsList[gradeSetIndex] = jgs;\r\n gradeSet.patchValue(\r\n {\r\n description: jgs.description,\r\n id: jgs.id,\r\n name: jgs.name\r\n }\r\n );\r\n gradeSet.markAsPristine();\r\n }\r\n );\r\n }\r\n\r\n onNewGradeSetDoneClick() {\r\n const newGradeSet = this.fgGradeSets.get('newGradeSet').value;\r\n (\r\n newGradeSet.id ?\r\n this.jobRoleService.updateJobGradeSet(newGradeSet.id, newGradeSet) :\r\n this.jobRoleService.createJobGradeSet({jobGradeSet: newGradeSet})\r\n ).pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n ).subscribe(\r\n jgs => {\r\n console.log(JSON.stringify(jgs));\r\n this.jobGradeSetsList.push(jgs);\r\n this.populateFormInitial();\r\n this.addingGradeSetInProgress = false;\r\n this.fgGradeSets.removeControl('newGradeSet');\r\n },\r\n err => {\r\n this.alertService.createAlert2(\r\n this.exceptionData[newGradeSet.id ? 'JOB_GRADE_SET_UPDATE' : 'JOB_GRADE_SET_CREATE'],\r\n err\r\n );\r\n }\r\n );\r\n\r\n }\r\n\r\n onNewGradeSetDeleteClick() {\r\n this.fgGradeSets.removeControl('newGradeSet');\r\n this.addingGradeSetInProgress = false;\r\n }\r\n\r\n trackByFn(index: any, item: any) {\r\n return index;\r\n }\r\n\r\n get gradeSetsArray(): Array {\r\n return this.fgGradeSets.get('gradeSets').value;\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n Job Grade Sets\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
NameDescription
\r\n
\r\n \r\n
Grade Set Name is required
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
Grade Set Name is required
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n","import { Component, Input, OnChanges, OnDestroy, OnInit } from '@angular/core';\r\nimport { AlertLevels, AlertData, AlertService } from '../core/alert.service';\r\nimport { FormGroup, FormBuilder, AbstractControl, Validators } from '@angular/forms';\r\n\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\n\r\nimport { JobRoleService, JobGrade, JobGradeSet } from './job-role.service';\r\n// import { formatPrefix } from '../../../node_modules/@types/d3';\r\n\r\n@Component({\r\n selector: 'ug-job-grade',\r\n templateUrl: './job-grade.component.html',\r\n styleUrls: ['./job-grade.component.css']\r\n})\r\nexport class JobGradeComponent implements OnChanges, OnDestroy, OnInit {\r\n\r\n @Input() jobGradeSet: JobGradeSet;\r\n\r\n exceptionData = {\r\n 'JOB_GRADE_LIST': {\r\n level: AlertLevels.ERROR,\r\n code: 'JGL-001',\r\n message: 'Error retrieving job grades'\r\n } as AlertData,\r\n 'JOB_GRADE_CREATE': {\r\n level: AlertLevels.ERROR,\r\n code: 'JGL-002',\r\n message: 'Error creating job grade'\r\n } as AlertData,\r\n 'JOB_GRADE_UPDATE': {\r\n level: AlertLevels.ERROR,\r\n code: 'JGL-003',\r\n message: 'Error updating job grade'\r\n } as AlertData,\r\n };\r\n\r\n fgJobGrades: FormGroup;\r\n jobGradesList: Array = [];\r\n selectedJobGradeIndex = -1;\r\n addingJobGradeInProgress = false;\r\n loadingData = false;\r\n\r\n private ngUnsubscribe: Subject = new Subject();\r\n\r\n constructor(private alertService: AlertService, private fb: FormBuilder, private jobRoleService: JobRoleService) {\r\n this.createForm();\r\n }\r\n\r\n ngOnInit() {}\r\n\r\n ngOnChanges() {\r\n if (!this.jobGradeSet) { return; }\r\n this.jobGradesList = [];\r\n this.populateFormInitial();\r\n this.loadingData = true;\r\n this.jobRoleService.getJobGradesForGradeSet(this.jobGradeSet.id).pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n ).subscribe(\r\n jgs => {\r\n this.jobGradesList = jgs;\r\n this.populateFormInitial();\r\n this.loadingData = false;\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.JOB_GRADE_LIST, err);\r\n this.loadingData = false;\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n this.ngUnsubscribe.next(true);\r\n this.ngUnsubscribe.complete();\r\n }\r\n\r\n createForm() {\r\n this.fgJobGrades = this.fb.group(\r\n {\r\n jobGrades: this.fb.array([])\r\n }\r\n );\r\n }\r\n\r\n populateFormInitial() {\r\n this.fgJobGrades.setControl(\r\n 'jobGrades',\r\n this.fb.array(this.getJobGradesControls(this.jobGradesList))\r\n );\r\n }\r\n\r\n formControlValid(controlName: string): boolean {\r\n const c: AbstractControl = this.fgJobGrades.get(controlName);\r\n return c.disabled || !(c.touched && c.invalid);\r\n }\r\n\r\n getJobGradesControls(jobGradesArray: Array): Array {\r\n const jobGradesControlArray = [];\r\n jobGradesArray.forEach(\r\n gs => {\r\n jobGradesControlArray.push(this.fb.group(\r\n {\r\n description: gs.description,\r\n id: gs.id,\r\n jobGradeSetId: gs.jobGradeSetId,\r\n name: [gs.name, Validators.required]\r\n })\r\n );\r\n }\r\n );\r\n return jobGradesControlArray;\r\n }\r\n\r\n onAddJobGradeClick() {\r\n this.fgJobGrades.addControl(\r\n 'newJobGrade',\r\n this.fb.group(\r\n {\r\n description: [''],\r\n id: [null],\r\n jobGradeSetId: [this.jobGradeSet.id],\r\n name: ['', Validators.required]\r\n }\r\n )\r\n );\r\n this.addingJobGradeInProgress = true;\r\n }\r\n\r\n onDeleteJobGradeClick(index: number ) {}\r\n\r\n onRestoreJobGradeClick(index: number) {}\r\n\r\n onDiscardJobGradeClick(jobGradeIndex: number) {\r\n const jobGrade = this.fgJobGrades.get('jobGrades.' + jobGradeIndex);\r\n jobGrade.patchValue(\r\n {\r\n description: this.jobGradesList[jobGradeIndex].description,\r\n id: this.jobGradesList[jobGradeIndex].id,\r\n jobGradeSetId: this.jobGradesList[jobGradeIndex].jobGradeSetId,\r\n name: this.jobGradesList[jobGradeIndex].name\r\n }\r\n );\r\n jobGrade.markAsPristine();\r\n }\r\n\r\n onUpdateJobGradeClick(jobGradeIndex: number) {\r\n const jobGrade = this.fgJobGrades.get('jobGrades.' + jobGradeIndex);\r\n this.jobRoleService.updateJobGrade(jobGrade.value.id, jobGrade.value).pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n ).subscribe(\r\n jgs => {\r\n this.jobGradesList[jobGradeIndex] = jgs;\r\n jobGrade.patchValue(\r\n {\r\n description: jgs.description,\r\n id: jgs.id,\r\n jobGradeSetId: jgs.jobGradeSetId,\r\n name: jgs.name\r\n }\r\n );\r\n jobGrade.markAsPristine();\r\n },\r\n err => this.alertService.createAlert2(this.exceptionData.JOB_GRADE_UPDATE, err)\r\n );\r\n }\r\n\r\n onNewJobGradeDoneClick() {\r\n this.jobRoleService.createJobGrade(this.fgJobGrades.get('newJobGrade').value).pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n ).subscribe(\r\n jgs => {\r\n console.log(JSON.stringify(jgs));\r\n this.jobGradesList.push(jgs);\r\n this.populateFormInitial();\r\n this.addingJobGradeInProgress = false;\r\n this.fgJobGrades.removeControl('newJobGrade');\r\n },\r\n err => this.alertService.createAlert2(this.exceptionData.JOB_GRADE_CREATE, err)\r\n );\r\n }\r\n\r\n onNewJobGradeDeleteClick() {\r\n this.fgJobGrades.removeControl('newJobGrade');\r\n this.addingJobGradeInProgress = false;\r\n }\r\n\r\n trackByFn(index: any, item: any) {\r\n return index;\r\n }\r\n\r\n get jobGradesArray(): Array {\r\n return this.fgJobGrades.get('jobGrades').value;\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n Job Grades for Grade Set: {{jobGradeSet?.name}}\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
NameDescription
\r\n
\r\n \r\n
Grade Set Name is required
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
Grade Set Name is required
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n","import { Component, OnDestroy, OnInit } from '@angular/core';\r\n\r\nimport { Subject , Subscription } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\n\r\nimport { JobRoleCompareComponent } from '../job-role/job-role-compare.component';\r\n\r\nimport { PersonService } from '../person/person.service';\r\nimport { JobRoleService, JobRole, JobRoleOrPersonOptions } from './job-role.service';\r\nimport { AlertService, AlertData, AlertLevels } from '../core/alert.service';\r\nimport { Person } from '../person/person';\r\n// import { formatPrefix } from '../../../node_modules/@types/d3';\r\n\r\n@Component({\r\n selector: 'ug-job-role-analysis',\r\n templateUrl: './job-role-analysis.component.html',\r\n styleUrls: ['./job-role-analysis.component.css']\r\n})\r\n\r\nexport class JobRoleAnalysisComponent implements OnDestroy, OnInit {\r\n\r\n exceptionData = {\r\n 'PEOPLE_LIST': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRA-001',\r\n message: 'Error retrieving people list'\r\n } as AlertData,\r\n 'JOB_ROLE_LIST': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRA-002',\r\n message: 'Error retrieving job role list'\r\n } as AlertData,\r\n 'JOB_ROLE_PEOPLE': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRA-003',\r\n message: 'Error retrieving people for job role'\r\n } as AlertData,\r\n 'PERSON_JOB_ROLES': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRA-004',\r\n message: 'Error retrieving job role for person'\r\n } as AlertData,\r\n };\r\n\r\n jobRolePeopleCountMessageMap = {\r\n '=-1': 'Select a Job Role / Person to view',\r\n '=0': 'No data for this selection criteria',\r\n '=1': '1 record found',\r\n 'other': '# records found'\r\n };\r\n\r\n jobRoleOrPersonOptions = JobRoleOrPersonOptions;\r\n jobRoleOrPersonSelection = this.jobRoleOrPersonOptions.JOB_ROLE;\r\n\r\n peopleList: Array;\r\n jobRoleList: Array;\r\n jobRolePeopleList: Array<{\r\n jobRoleId: number;\r\n personId: number;\r\n unassigned?: boolean;\r\n }>;\r\n\r\n jobRoleListSubs = new Subscription();\r\n peopleListSubs = new Subscription();\r\n private ngUnsubscribe: Subject = new Subject();\r\n\r\n selectedJobRoleId: number;\r\n selectedPersonId: number;\r\n\r\n selectedOtherJobRoleId: number = null;\r\n selectedOtherPersonId: number = null;\r\n\r\n jobRoleQueryInProgress = false;\r\n\r\n constructor( private alertService: AlertService, private jobRoleService: JobRoleService, private personService: PersonService) { }\r\n\r\n ngOnInit() {\r\n this.jobRoleListSubs = this.jobRoleService.getJobRoles().subscribe(\r\n jrl => this.jobRoleList = jrl,\r\n err => this.alertService.createAlert2(this.exceptionData.JOB_ROLE_LIST, err)\r\n );\r\n this.peopleListSubs = this.personService.getPersonList().subscribe(\r\n pl => this.peopleList = pl,\r\n err => this.alertService.createAlert2(this.exceptionData.PEOPLE_LIST, err)\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n this.jobRoleListSubs.unsubscribe();\r\n this.peopleListSubs.unsubscribe();\r\n this.ngUnsubscribe.next(true);\r\n this.ngUnsubscribe.complete();\r\n }\r\n\r\n get viewButtonDisabled(): boolean {\r\n return (\r\n (this.jobRoleOrPersonSelection === this.jobRoleOrPersonOptions.JOB_ROLE && !this.selectedJobRoleId) ||\r\n (this.jobRoleOrPersonSelection === this.jobRoleOrPersonOptions.PERSON && !this.selectedPersonId) ||\r\n this.jobRoleQueryInProgress\r\n );\r\n }\r\n\r\n get addButtonDisabled(): boolean {\r\n return (\r\n (this.jobRoleOrPersonSelection === this.jobRoleOrPersonOptions.JOB_ROLE && !this.selectedOtherPersonId) ||\r\n (this.jobRoleOrPersonSelection === this.jobRoleOrPersonOptions.PERSON && !this.selectedOtherJobRoleId) ||\r\n this.jobRoleQueryInProgress\r\n );\r\n }\r\n\r\n get selectedPersonName(): string {\r\n return (this.peopleList.find( p => p.id === this.selectedPersonId) || {})['displayName'] || '';\r\n }\r\n\r\n get selectedJobRoleName(): string {\r\n return (this.jobRoleList.find( jr => jr.id === this.selectedJobRoleId) || {})['name'] || '';\r\n }\r\n\r\n get otherJobRoleList(): Array {\r\n const currentJobRoleIdList = this.jobRolePeopleList.map(\r\n jrp => { return jrp.jobRoleId; }\r\n );\r\n return this.jobRoleList.filter(\r\n jr => { return currentJobRoleIdList.indexOf(jr.id) === -1; }\r\n );\r\n }\r\n\r\n get otherPersonList(): Array {\r\n const currentPersonIdList = (this.jobRolePeopleList || []).map(\r\n jrp => { return jrp.personId; }\r\n );\r\n return this.peopleList.filter(\r\n p => { return currentPersonIdList.indexOf(p.id) === -1; }\r\n );\r\n }\r\n\r\n onRadioChange() {\r\n // this.jobRolePeopleList = [];\r\n this.jobRolePeopleList = undefined;\r\n }\r\n\r\n onViewClick() {\r\n this.jobRoleQueryInProgress = true;\r\n this.jobRolePeopleList = [];\r\n if (this.jobRoleOrPersonSelection === this.jobRoleOrPersonOptions.JOB_ROLE) {\r\n this.jobRoleService.getJobRolePeople(this.selectedJobRoleId).pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n ).subscribe(\r\n jrp => {\r\n jrp['people']\r\n // .sort( (a, b) => { return a['personRoleScore'] - b['personRoleScore']; })\r\n .forEach(\r\n p => this.jobRolePeopleList.push({jobRoleId: this.selectedJobRoleId, personId: p.personId, unassigned: false})\r\n );\r\n this.jobRoleQueryInProgress = false;\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.JOB_ROLE_PEOPLE, err);\r\n this.jobRoleQueryInProgress = false;\r\n }\r\n );\r\n } else if (this.jobRoleOrPersonSelection === this.jobRoleOrPersonOptions.PERSON) {\r\n this.personService.getPersonJobRoles(this.selectedPersonId).pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n ).subscribe(\r\n pjr => {\r\n pjr['jobRoles']\r\n // .sort( (a, b) => { return a['personRoleScore'] - b['personRoleScore']; })\r\n .forEach(\r\n j => this.jobRolePeopleList.push({jobRoleId: j.jobRoleId, personId: this.selectedPersonId, unassigned: false})\r\n );\r\n this.jobRoleQueryInProgress = false;\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.PERSON_JOB_ROLES, err);\r\n this.jobRoleQueryInProgress = false;\r\n }\r\n );\r\n }\r\n }\r\n\r\n onAddJobRoleClick() {\r\n this.jobRolePeopleList.push({jobRoleId: this.selectedOtherJobRoleId, personId: this.selectedPersonId, unassigned: true});\r\n this.selectedOtherJobRoleId = null;\r\n }\r\n\r\n onAddPersonClick() {\r\n this.jobRolePeopleList.push({jobRoleId: this.selectedJobRoleId, personId: this.selectedOtherPersonId, unassigned: true});\r\n this.selectedOtherPersonId = null;\r\n }\r\n\r\n onCompareRemove(listIndex: number) {\r\n this.jobRolePeopleList.splice(listIndex, 1);\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
Job Role / People Match Analysis
\r\n \r\n
\r\n
\r\n
\r\n \r\n Perspective:\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
0\">\r\n
\r\n \r\n Job Role Skill Profiles compared to: \r\n {{selectedPersonName}}\r\n \r\n \r\n People Skill Profiles compared to: \r\n {{selectedJobRoleName}}\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
0\">\r\n \r\n {{(jobRolePeopleList === undefined ? -1 : jobRolePeopleList.length) | i18nPlural: jobRolePeopleCountMessageMap}}\r\n
\r\n
0\" class=\"form bg-light border p-3 pb-md-0 pt-md-3 mt-3\">\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n","import { Component, EventEmitter, Input, OnDestroy, OnInit, Output, OnChanges } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { UitoolsService } from 'app/core/uitools.service';\r\n\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { Claim } from '../claim/claim';\r\n\r\nimport { ClaimService } from '../claim/claim.service';\r\nimport { JobRoleService, JobRole, JobRoleRequirement, JobRoleOrPersonOptions} from './job-role.service';\r\n\r\n@Component({\r\n selector: 'ug-job-role-compare',\r\n templateUrl: './job-role-compare.component.html',\r\n styleUrls: ['./job-role-compare.component.css']\r\n})\r\nexport class JobRoleCompareComponent implements OnChanges, OnDestroy { // , OnInit {\r\n\r\n jobRoleOrPersonOptions = JobRoleOrPersonOptions;\r\n\r\n @Input() jobRoleId: number;\r\n @Input() personId: number;\r\n @Input() componentIndex = 0;\r\n @Input() jobRoleOrPerson = this.jobRoleOrPersonOptions.JOB_ROLE;\r\n @Input() unassigned = false;\r\n @Input() isCollapsed = true;\r\n @Output()\r\n remove: EventEmitter = new EventEmitter(true);\r\n\r\n personClaims: Array;\r\n jobRoleRequirements: Array;\r\n jobRoleVsPerson = {};\r\n chartDataArray: Array = [];\r\n isLoading = true;\r\n\r\n jobRolePersonSubs = new Subscription();\r\n\r\n mandatoryCountMessageMap = {\r\n '=-1': 'No mandatory requirements for this job role',\r\n '=0': 'All mandatory requirements met',\r\n '=1': '1 mandatory requirement unmet',\r\n 'other': '# mandatory requirements unmet'\r\n };\r\n\r\n constructor(\r\n private claimService: ClaimService,\r\n private jobRoleService: JobRoleService,\r\n private uiToolsService: UitoolsService,\r\n private route: ActivatedRoute\r\n ) { }\r\n\r\n // ngOnInit() {\r\n ngOnChanges() {\r\n const jobRoleId = this.jobRoleId;\r\n const personId = this.personId;\r\n // const jobRoleId = this.jobRoleId || parseInt(this.route.snapshot.url[1].path, 10);\r\n // const personId = this.personId || parseInt(this.route.snapshot.url[3].path, 10);\r\n this.chartDataArray = [];\r\n\r\n if (!jobRoleId || !personId) { return; }\r\n\r\n this.jobRolePersonSubs = this.jobRoleService.getJobRoleVsPerson(jobRoleId, personId).subscribe(\r\n jrp => {\r\n this.jobRoleVsPerson = jrp;\r\n if (!this.jobRoleVsPerson['summary'].some( jr => { return jr['mandatory'] === true; }) ) {\r\n this.jobRoleVsPerson['unmetMandatoryCount'] = -1;\r\n }\r\n this.generateChartData(jrp);\r\n this.isLoading = false;\r\n console.dir(this.chartDataArray);\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n this.jobRolePersonSubs.unsubscribe();\r\n }\r\n\r\n meetsReqClass(reqIndex: number): string {\r\n const roleScore = this.jobRoleVsPerson['summary'][reqIndex]['roleLevel']['score'] || 0;\r\n const personScore = this.jobRoleVsPerson['summary'][reqIndex]['personLevel']['score'] || 0;\r\n let classString = '';\r\n\r\n if (personScore >= roleScore) {\r\n classString = 'far fa-check-circle text-success fa-2x';\r\n }\r\n if (personScore < roleScore) {\r\n if (this.jobRoleVsPerson['summary'][reqIndex]['mandatory']) {\r\n classString = 'far fa-times-circle text-danger fa-2x';\r\n } else {\r\n classString = 'far fa-times-circle text-warning fa-2x';\r\n }\r\n }\r\n\r\n return classString;\r\n }\r\n\r\n roleScoreAlertClass(roleScore: number): string {\r\n let alertClass = 'alert alert-success';\r\n if (roleScore < 0.4) {\r\n alertClass = 'alert alert-danger';\r\n } else if ( roleScore < 0.75) {\r\n alertClass = 'alert alert-warning';\r\n }\r\n return alertClass;\r\n }\r\n\r\n roleScoreTextClass(roleScore: number) {\r\n let textClass = 'text-success';\r\n if (roleScore < 0.4) {\r\n textClass = 'text-danger';\r\n } else if ( roleScore < 0.75) {\r\n textClass = 'text-warning';\r\n }\r\n return textClass;\r\n }\r\n\r\n roleScoreBgClass(roleScore: number): string {\r\n let bgClass = 'bg-success';\r\n if (roleScore < 0.4) {\r\n bgClass = 'bg-danger';\r\n } else if ( roleScore < 0.75) {\r\n bgClass = 'bg-warning';\r\n }\r\n return bgClass;\r\n }\r\n\r\n onExpandToggleClick(jobRoleIndex: number) {\r\n // this.uiToolsService.toggleCollapseById(`jobRoleCompareCollapse${this.componentIndex}`);\r\n this.isCollapsed = !this.isCollapsed;\r\n }\r\n\r\n generateChartData( chartDataSet: any) {\r\n const chartData = [];\r\n const chartKeys = ['role', 'person'];\r\n for (const dataRow of chartDataSet.summary) {\r\n const chartRow = {};\r\n chartRow['category'] = dataRow.disciplineName + ' / ' + dataRow.skillName;\r\n chartRow['role'] = dataRow.roleLevel.score * dataRow.weighting;\r\n chartRow['person'] = dataRow.personLevel.score * dataRow.weighting;\r\n chartRow['total'] = chartRow['role'] + chartRow['person'];\r\n chartData.push(chartRow);\r\n }\r\n console.log(JSON.stringify(chartData));\r\n this.chartDataArray.push(\r\n {\r\n data: chartData,\r\n keys: chartKeys,\r\n title: chartDataSet.name\r\n }\r\n );\r\n }\r\n\r\n removeComparison() {\r\n this.remove.emit(null);\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n Loading...\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n Job Role: \r\n {{jobRoleVsPerson['name']}}\r\n \r\n \r\n Person: \r\n {{jobRoleVsPerson['personName']}}\r\n \r\n Unassigned\r\n Assigned\r\n
\r\n
\r\n Match score: \r\n \r\n {{jobRoleVsPerson['personRoleScore'] | percent:'1.1-1'}}\r\n \r\n 0 ? 'fa-exclamation-circle text-danger' : 'fa-check-circle text-success']\">\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Required Discipline / SkillMandatoryRequired LevelPerson Level
{{jrvp.disciplineName}} / {{jrvp.skillName}}{{jrvp.mandatory ? 'Yes' : 'No'}}{{jrvp.roleLevel.name}}{{jrvp.personLevel.name || 'n/a'}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Person / Role match score: {{jobRoleVsPerson['personRoleScore'] | percent:'1.1-1'}}
\r\n
\r\n
\r\n
\r\n
\r\n
0 ? 'bg-danger': 'bg-success']\">\r\n
\r\n
{{jobRoleVsPerson['unmetMandatoryCount'] | i18nPlural: mandatoryCountMessageMap}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { AfterViewInit, Component, EventEmitter, Input, OnChanges, OnDestroy, OnInit, Output } from '@angular/core';\r\nimport { FormArray, FormBuilder, FormControl, FormGroup, Validators, ValidatorFn, AbstractControl } from '@angular/forms';\r\n\r\nimport { BehaviorSubject , Subject , Subscription } from 'rxjs';\r\nimport { debounceTime, distinctUntilChanged, map, switchMap, takeUntil } from 'rxjs/operators';\r\n\r\nimport { AlertData, AlertLevels, AlertService } from '../core/alert.service';\r\nimport { ClaimService } from '../claim/claim.service';\r\nimport { JobRole, JobRolePayload, JobRoleRequirement, JobRoleService, JobFamily, JobGrade } from '../job-role/job-role.service';\r\nimport { OrgUnitService } from '../org-unit/org-unit.service';\r\nimport { PersonService } from '../person/person.service';\r\nimport { SkillService } from '../skill/skill.service';\r\nimport { UitoolsService } from '../core/uitools.service';\r\n\r\nimport { Claim } from '../claim/claim';\r\nimport { FuncArea } from '../skill/func-area';\r\nimport { OrgUnit } from '../org-unit/org-unit';\r\nimport { Person } from '../person/person';\r\nimport { select } from 'd3';\r\nimport { Modal, Collapse } from 'bootstrap';\r\n\r\n@Component({\r\n selector: 'ug-job-role-detail',\r\n templateUrl: './job-role-detail.component.html',\r\n styleUrls: ['./job-role-detail.component.css']\r\n})\r\nexport class JobRoleDetailComponent implements OnChanges, OnDestroy, OnInit, AfterViewInit {\r\n\r\n @Input() jobRole: JobRole;\r\n @Input() jobRoleIndex: number;\r\n @Input() isCollapsed = true;\r\n @Output() jobRoleChange: EventEmitter = new EventEmitter();\r\n @Output() createdJobRole: EventEmitter = new EventEmitter();\r\n\r\n private roleNameSubj = new BehaviorSubject('Loading...');\r\n\r\n exceptionData = {\r\n 'JOB_ROLE_CREATE': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRD-001',\r\n message: 'Error creating job role'\r\n } as AlertData,\r\n 'JOB_ROLE_UPDATE': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRD-002',\r\n message: 'Error updating job role'\r\n } as AlertData,\r\n 'JOB_ROLE_DELETE': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRD-003',\r\n message: 'Error deleting job role'\r\n } as AlertData,\r\n 'DISCIPLINE_LIST': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRD-004',\r\n message: 'Error retrieving disciplines'\r\n } as AlertData,\r\n 'ORG_UNIT_LIST': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRD-005',\r\n message: 'Error retrieving organisation units'\r\n } as AlertData,\r\n 'PEOPLE_LIST': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRD-006',\r\n message: 'Error retrieving people'\r\n } as AlertData,\r\n 'JOB_FAMILY_LIST': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRD-007',\r\n message: 'Error retrieving job families'\r\n } as AlertData,\r\n 'JOB_GRADE_LIST': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRD-008',\r\n message: 'Error retrieving job grades'\r\n } as AlertData,\r\n 'SKILLS_LIST': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRD-009',\r\n message: 'Error retrieving skills'\r\n } as AlertData,\r\n 'CLAIM_LEVELS': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRD-010',\r\n message: 'Error retrieving claim levels'\r\n } as AlertData,\r\n };\r\n\r\n addingReqInProgress = false;\r\n addingPersonInProgress = false;\r\n awaitingDeleteConfirmation = false;\r\n preDeleteReqControlStatus = {};\r\n preDeletePeopleControlStatus = {};\r\n\r\n levelSetsCache: any = {};\r\n skillsCache: any = {};\r\n disciplineList: Array;\r\n orgUnitList: Array;\r\n peopleList: Array;\r\n jobFamilyList: Array;\r\n jobGradeList: Array;\r\n\r\n // claimLevelsSubsStore: {[disciplineId: number]: Subscription} = {};\r\n disciplineFeedSubs = new Subscription();\r\n jobFamiliesFeedSubs = new Subscription();\r\n jobGradesFeedSubs = new Subscription();\r\n jobRoleIdCodesSubs = new Subscription();\r\n jobRoleNameSubs = new Subscription();\r\n orgUnitFeedSubs = new Subscription();\r\n peopleFeedSubs = new Subscription();\r\n // skillSubs = new Subscription();\r\n // writeJobRoleSubs = new Subscription();\r\n private ngUnsubscribe: Subject = new Subject();\r\n\r\n // filteredJobGradeList: Array = [];\r\n idCodeList: Array = [];\r\n\r\n jobRoleTitle: string; // = 'New job Role';\r\n\r\n fgJobRoleDetail: FormGroup;\r\n\r\n reqCountMessageMap = {\r\n '=0': 'None specified',\r\n '=1': '1 requirement',\r\n 'other': '# requirements'\r\n };\r\n\r\n peopleCountMessageMap = {\r\n '=0': 'Nobody',\r\n '=1': '1 person',\r\n 'other': '# people'\r\n };\r\n\r\n constructor(\r\n private fb: FormBuilder,\r\n private alertService: AlertService,\r\n private claimService: ClaimService,\r\n private jobRoleService: JobRoleService,\r\n private orgUnitService: OrgUnitService,\r\n private personService: PersonService,\r\n private skillService: SkillService,\r\n private uiToolsService: UitoolsService\r\n ) {\r\n // this.roleNameSubj.pipe(\r\n // debounceTime(100)\r\n // ).subscribe(\r\n // rn => this.jobRoleTitle = rn\r\n // );\r\n this.createForm();\r\n this.jobRoleNameSubs = this.fgJobRoleDetail.get('name').valueChanges.subscribe(\r\n newTitle => this.jobRoleTitle = newTitle || 'New job Role'\r\n // newTitle => this.roleNameSubj.next(newTitle)\r\n );\r\n this.jobRoleIdCodesSubs = this.jobRoleService.jobRoleIdCodesFeed.subscribe(\r\n id => {\r\n console.log(id);\r\n this.idCodeList = id;\r\n }\r\n );\r\n }\r\n\r\n createForm() {\r\n this.fgJobRoleDetail = this.fb.group(\r\n {\r\n description: [''],\r\n id: [null],\r\n identifierCode: [null, this.roleIdCodeUniquenessValidator()],\r\n // identifierCode: [null],\r\n jobFamilyId: [null],\r\n jobGradeId: [null],\r\n name: ['', Validators.required],\r\n organisationUnitId: [null, Validators.required],\r\n requirements: this.fb.array([]),\r\n people: this.fb.array([])\r\n }\r\n );\r\n }\r\n\r\n ngOnInit() {\r\n this.disciplineFeedSubs = this.skillService.disciplineFeed.subscribe(\r\n dl => this.disciplineList = dl,\r\n err => this.alertService.createAlert2(this.exceptionData.DISCIPLINE_LIST, err)\r\n );\r\n\r\n this.orgUnitFeedSubs = this.orgUnitService.orgUnitFeed.subscribe(\r\n oul => this.orgUnitList = oul,\r\n err => this.alertService.createAlert2(this.exceptionData.ORG_UNIT_LIST, err)\r\n );\r\n\r\n this.peopleFeedSubs = this.personService.peopleFeed.subscribe(\r\n pl => this.peopleList = pl,\r\n err => this.alertService.createAlert2(this.exceptionData.PEOPLE_LIST, err)\r\n );\r\n\r\n this.jobFamiliesFeedSubs = this.jobRoleService.jobFamiliesFeed.subscribe(\r\n jfl => this.jobFamilyList = jfl,\r\n err => this.alertService.createAlert2(this.exceptionData.JOB_FAMILY_LIST, err)\r\n );\r\n\r\n this.jobGradesFeedSubs = this.jobRoleService.jobGradesFeed.subscribe(\r\n jgl => this.jobGradeList = jgl,\r\n err => this.alertService.createAlert2(this.exceptionData.JOB_GRADE_LIST, err)\r\n );\r\n\r\n this.populateFormInitial();\r\n\r\n this.jobRole.requirements.forEach(\r\n r => {\r\n this.addLevelSetToCache(r.disciplineId);\r\n }\r\n );\r\n this.isCollapsed = !!this.jobRole.id;\r\n }\r\n\r\n ngAfterViewInit() {\r\n if (!this.isCollapsed) {\r\n // $('.new-role.collapse').collapse('show');\r\n const newRoleCollapse = new Collapse(document.getElementsByClassName('.new-role.collapse')[0]);\r\n newRoleCollapse.show();\r\n }\r\n }\r\n\r\n ngOnChanges() {\r\n }\r\n\r\n ngOnDestroy() {\r\n // for (const disciplineId in this.claimLevelsSubsStore) {\r\n // if (this.claimLevelsSubsStore.hasOwnProperty(disciplineId)) {\r\n // this.claimLevelsSubsStore[disciplineId].unsubscribe();\r\n // }\r\n // }\r\n this.disciplineFeedSubs.unsubscribe();\r\n this.jobFamiliesFeedSubs.unsubscribe();\r\n this.jobGradesFeedSubs.unsubscribe();\r\n this.jobRoleIdCodesSubs.unsubscribe();\r\n this.jobRoleNameSubs.unsubscribe();\r\n this.orgUnitFeedSubs.unsubscribe();\r\n this.peopleFeedSubs.unsubscribe();\r\n // this.skillSubs.unsubscribe();\r\n // this.writeJobRoleSubs.unsubscribe();\r\n this.ngUnsubscribe.next(true);\r\n this.ngUnsubscribe.complete();\r\n }\r\n\r\n populateFormInitial() {\r\n this.fgJobRoleDetail.patchValue(\r\n {\r\n description: this.jobRole.description,\r\n id: this.jobRole.id,\r\n identifierCode: this.jobRole.identifierCode,\r\n jobFamilyId: this.jobRole.jobFamilyId || null,\r\n jobGradeId: this.jobRole.jobGradeId || null,\r\n name: this.jobRole.name,\r\n organisationUnitId: this.jobRole.organisationUnitId || null\r\n }\r\n );\r\n\r\n this.onJobFamilyChange(); // Force job grades list population\r\n\r\n this.fgJobRoleDetail.setControl(\r\n 'requirements',\r\n this.fb.array(this.getRoleReqsControls(this.jobRole.requirements))\r\n );\r\n\r\n this.fgJobRoleDetail.setControl(\r\n 'people',\r\n this.fb.array(this.getRolePeopleControls(this.jobRole.people))\r\n );\r\n\r\n this.addingReqInProgress = false;\r\n if (this.fgJobRoleDetail.get('fgNewReq')) {\r\n this.fgJobRoleDetail.removeControl('fgNewReq');\r\n }\r\n this.fgJobRoleDetail.markAsPristine();\r\n\r\n this.addingPersonInProgress = false;\r\n if (this.fgJobRoleDetail.get('newPerson')) {\r\n this.fgJobRoleDetail.removeControl('newPerson');\r\n }\r\n this.fgJobRoleDetail.markAsPristine();\r\n\r\n }\r\n\r\n getRoleReqsControls(reqArray: Array): Array {\r\n const reqControlsArray = [];\r\n reqArray.forEach(\r\n r => {\r\n reqControlsArray.push(this.fb.group(\r\n {\r\n action: ['U'],\r\n claimLevelId: [r.claimLevelId, Validators.required],\r\n claimLevelName: [r.claimLevelName],\r\n disciplineId: [r.disciplineId, Validators.required],\r\n disciplineName: [r.disciplineName],\r\n id: [r.id],\r\n mandatory: [r.mandatory, Validators.required],\r\n skillId: [r.skillId, Validators.required],\r\n skillName: [r.skillName],\r\n weighting: [r.weighting, [Validators.required, Validators.min(0), Validators.max(1)]],\r\n }\r\n ));\r\n }\r\n );\r\n return reqControlsArray;\r\n }\r\n\r\n getRolePeopleControls(peopleArray: Array): Array {\r\n const peopleControlsArray = [];\r\n peopleArray.forEach(\r\n p => {\r\n peopleControlsArray.push(\r\n this.fb.group(\r\n {\r\n action: [null],\r\n id: [p.id],\r\n personId: [p.personId],\r\n personName: [p.displayName]\r\n }\r\n )\r\n );\r\n }\r\n );\r\n return peopleControlsArray;\r\n }\r\n\r\n onExpandToggleClick(jobRoleIndex: number) {\r\n // this.uiToolsService.toggleCollapseById(`jobRoleCollapse${jobRoleIndex}`);\r\n this.isCollapsed = !this.isCollapsed;\r\n }\r\n\r\n onSaveJobRoleClick(): any {\r\n const jobRoleData: JobRolePayload = {\r\n id: this.fgJobRoleDetail.get('id').value,\r\n name: this.fgJobRoleDetail.get('name').value,\r\n description: this.fgJobRoleDetail.get('description').value,\r\n identifierCode: this.fgJobRoleDetail.get('identifierCode').value,\r\n jobFamilyId: this.fgJobRoleDetail.get('jobFamilyId').value,\r\n jobGradeId: this.fgJobRoleDetail.get('jobGradeId').value,\r\n organisationUnitId: this.fgJobRoleDetail.get('organisationUnitId').value,\r\n requirements: {\r\n create: [],\r\n update: [],\r\n delete: []\r\n },\r\n people: {\r\n create: [],\r\n update: [],\r\n delete: []\r\n }\r\n };\r\n this.fgJobRoleDetail.get('requirements')['controls'].forEach(\r\n (rc: FormControl) => {\r\n if (rc.dirty) {\r\n switch (rc.get('action').value) {\r\n case 'C':\r\n jobRoleData.requirements.create.push(\r\n {\r\n claimLevelId: rc.get('claimLevelId').value,\r\n disciplineId: rc.get('disciplineId').value,\r\n jobRoleId: this.fgJobRoleDetail.get('id').value,\r\n mandatory: rc.get('mandatory').value,\r\n skillId: rc.get('skillId').value,\r\n weighting: rc.get('weighting').value\r\n }\r\n );\r\n break;\r\n case 'D':\r\n if (rc.get('id')) { // No need to send if deleting a row not yet created in DB\r\n jobRoleData.requirements.delete.push(\r\n {\r\n claimLevelId: rc.get('claimLevelId').value,\r\n disciplineId: rc.get('disciplineId').value,\r\n id: rc.get('id').value,\r\n jobRoleId: this.fgJobRoleDetail.get('id').value,\r\n mandatory: rc.get('mandatory').value,\r\n skillId: rc.get('skillId').value,\r\n weighting: rc.get('weighting').value\r\n }\r\n );\r\n }\r\n break;\r\n case 'U':\r\n jobRoleData.requirements.update.push(\r\n {\r\n claimLevelId: rc.get('claimLevelId').value,\r\n disciplineId: rc.get('disciplineId').value,\r\n id: rc.get('id').value,\r\n jobRoleId: this.fgJobRoleDetail.get('id').value,\r\n mandatory: rc.get('mandatory').value,\r\n skillId: rc.get('skillId').value,\r\n weighting: rc.get('weighting').value\r\n }\r\n );\r\n break;\r\n }\r\n }\r\n }\r\n );\r\n this.fgJobRoleDetail.get('people')['controls'].forEach(\r\n (pc: FormControl) => {\r\n if (pc.dirty) {\r\n switch (pc.get('action').value) {\r\n case 'C':\r\n jobRoleData.people.create.push(\r\n {\r\n personId: pc.get('personId').value\r\n }\r\n );\r\n break;\r\n case 'D':\r\n if (pc.get('id')) {\r\n jobRoleData.people.delete.push(\r\n {\r\n id: pc.get('id').value,\r\n personId: pc.get('personId').value\r\n }\r\n );\r\n }\r\n break;\r\n case 'U':\r\n jobRoleData.people.update.push(\r\n {\r\n id: pc.get('id').value,\r\n personId: pc.get('personId').value\r\n }\r\n );\r\n break;\r\n }\r\n }\r\n }\r\n );\r\n console.log(JSON.stringify(jobRoleData));\r\n // this.writeJobRoleSubs.unsubscribe(); // TODO: Unsubs\r\n // this.writeJobRoleSubs = (\r\n (\r\n jobRoleData.id ?\r\n this.jobRoleService.updateJobRole(jobRoleData.id, {jobRole: jobRoleData}) :\r\n this.jobRoleService.createJobRole({jobRole: jobRoleData})\r\n ).pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n ).subscribe(\r\n jr => {\r\n console.log(JSON.stringify(jr));\r\n if (this.jobRole.id) {\r\n this.jobRoleChange.emit(jr);\r\n } else {\r\n this.createdJobRole.emit(jr);\r\n }\r\n this.jobRole = jr;\r\n this.populateFormInitial();\r\n this.jobRoleService.createJobRoleInProgress = false;\r\n },\r\n err => {\r\n this.alertService.createAlert2(\r\n this.exceptionData[jobRoleData.id ? 'JOB_ROLE_UPDATE' : 'JOB_ROLE_CREATE'],\r\n err\r\n );\r\n }\r\n );\r\n\r\n }\r\n\r\n onDeleteJobRoleClick() {\r\n this.awaitingDeleteConfirmation = true;\r\n }\r\n\r\n onConfirmDeleteJobRoleClick() {\r\n if (!this.jobRole.id) {\r\n this.jobRoleChange.emit(null);\r\n } else {\r\n // this.writeJobRoleSubs.unsubscribe(); // TODO: Unsubs\r\n // this.writeJobRoleSubs = this.jobRoleService.deleteJobRole(this.jobRole.id)\r\n this.jobRoleService.deleteJobRole(this.jobRole.id).pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n ).subscribe(\r\n d => {\r\n this.jobRoleChange.emit(null);\r\n this.awaitingDeleteConfirmation = false;\r\n },\r\n err => {\r\n this.alertService.createAlert2(\r\n this.exceptionData['JOB_ROLE_DELETE'],\r\n err\r\n );\r\n }\r\n );\r\n }\r\n }\r\n\r\n onCancelDeleteJobRoleClick() {\r\n this.awaitingDeleteConfirmation = false;\r\n }\r\n\r\n onAddRequirementClick() {\r\n this.fgJobRoleDetail.addControl('fgNewReq', this.fb.group(\r\n {\r\n action: 'C',\r\n claimLevelId: [null, Validators.required],\r\n claimLevelName: [''],\r\n disciplineId: [null, Validators.required],\r\n disciplineName: [''],\r\n mandatory: [false, Validators.required],\r\n skillId: [null, [Validators.required, this.roleSkillUniquenessValidator()]],\r\n skillName: [''],\r\n weighting: [1, [Validators.required, Validators.min(0), Validators.max(1)]],\r\n }\r\n )\r\n );\r\n this.addingReqInProgress = true;\r\n }\r\n\r\n onRemoveRequirementClick(reqIndex: number) {\r\n const reqControls = (this.fgJobRoleDetail.get('requirements') as FormArray).controls[reqIndex];\r\n\r\n this.preDeleteReqControlStatus[reqIndex] = {\r\n action: reqControls.get('action').value,\r\n dirty: reqControls.dirty\r\n } as {action: string, dirty: boolean};\r\n\r\n reqControls.get('action').setValue('D');\r\n reqControls.get('claimLevelId').disable();\r\n reqControls.get('weighting').disable();\r\n reqControls.get('mandatory').disable();\r\n reqControls.markAsDirty();\r\n }\r\n\r\n onRestoreRequirementClick(reqIndex: number) {\r\n const reqControls = (this.fgJobRoleDetail.get('requirements') as FormArray).controls[reqIndex];\r\n reqControls.get('action').setValue(this.preDeleteReqControlStatus[reqIndex].action);\r\n reqControls.get('claimLevelId').enable();\r\n reqControls.get('weighting').enable();\r\n reqControls.get('mandatory').enable();\r\n if (this.preDeleteReqControlStatus[reqIndex].dirty) {\r\n reqControls.markAsDirty();\r\n } else {\r\n reqControls.markAsPristine();\r\n }\r\n }\r\n\r\n onAddPersonClick() {\r\n this.fgJobRoleDetail.addControl('newPerson', this.fb.group(\r\n {\r\n action: 'C',\r\n personId: [null, [Validators.required, this.rolePersonUniquenessValidator()]],\r\n personName: ['']\r\n }\r\n ));\r\n this.addingPersonInProgress = true;\r\n }\r\n\r\n onDeletePersonClick(personIndex: number) {\r\n const peopleControls = (this.fgJobRoleDetail.get('people') as FormArray).controls[personIndex];\r\n this.preDeletePeopleControlStatus[personIndex] = {\r\n action: peopleControls.get('action').value,\r\n dirty: peopleControls.dirty\r\n };\r\n peopleControls.get('action').setValue('D');\r\n peopleControls.markAsDirty();\r\n }\r\n\r\n onRestorePersonClick(personIndex: number) {\r\n const peopleControls = (this.fgJobRoleDetail.get('people') as FormArray).controls[personIndex];\r\n peopleControls.get('action').setValue(this.preDeletePeopleControlStatus[personIndex].action);\r\n if (this.preDeletePeopleControlStatus[personIndex].dirty) {\r\n peopleControls.markAsDirty();\r\n } else {\r\n peopleControls.markAsPristine();\r\n }\r\n }\r\n\r\n roleIdCodeUniquenessValidator(): ValidatorFn {\r\n return (control: AbstractControl): {[key: string]: any} => {\r\n return this.idCodeList\r\n .findIndex( idCode => {\r\n return idCode['id'] !== this.jobRole.id && idCode['code'] === control.value;\r\n }) !== -1 ? {'roleIdCodeUniqueness': {value: control.value}} : null;\r\n // .indexOf( control.value ) !== -1 ? {'roleIdCodeUniqueness': {value: control.value}} : null;\r\n };\r\n }\r\n\r\n roleSkillUniquenessValidator(): ValidatorFn {\r\n return (control: AbstractControl): {[key: string]: any} => {\r\n return this.roleReqsArray\r\n .map( jr => jr.skillId )\r\n .indexOf( control.value ) !== -1 ? {'roleSkillUniqueness': {value: control.value}} : null;\r\n };\r\n }\r\n\r\n rolePersonUniquenessValidator(): ValidatorFn {\r\n return (control: AbstractControl): {[key: string]: any} => {\r\n return this.rolePeopleArray\r\n .map( p => p.personId )\r\n .indexOf( control.value ) !== -1 ? {'rolePersonUniqueness': {value: control.value}} : null;\r\n };\r\n }\r\n\r\n onDisciplineChange() {\r\n const disciplineId = this.addedDisciplineId;\r\n if (!(disciplineId in this.skillsCache)) {\r\n this.skillsCache[disciplineId] = [];\r\n const parentFuncAreaId = this.disciplineList.find( d => {return d.id === disciplineId; }).parentFuncAreaId;\r\n // this.skillSubs.unsubscribe(); // TODO: Unsubs\r\n // this.skillSubs = this.skillService.getSkillsFeed(parentFuncAreaId, disciplineId).subscribe(\r\n this.skillService.getSkillsFeed(parentFuncAreaId, disciplineId).pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n ).subscribe(\r\n sl => this.skillsCache[disciplineId] = sl,\r\n err => this.alertService.createAlert2(this.exceptionData.SKILLS_LIST, err)\r\n );\r\n }\r\n }\r\n\r\n onSkillChange() {\r\n this.addLevelSetToCache(this.addedDisciplineId);\r\n }\r\n\r\n onNewReqDoneClick() {\r\n this.fgJobRoleDetail.get('fgNewReq').patchValue(\r\n {\r\n disciplineName: this.getDisciplineNameFromId(\r\n this.fgJobRoleDetail.get('fgNewReq').get('disciplineId').value\r\n ),\r\n skillName: this.getSkillNameFromId(\r\n this.fgJobRoleDetail.get('fgNewReq').get('disciplineId').value,\r\n this.fgJobRoleDetail.get('fgNewReq').get('skillId').value\r\n )\r\n }\r\n );\r\n\r\n const reqArray = (this.fgJobRoleDetail.get('requirements') as FormArray);\r\n reqArray.push(this.fb.group(this.fgJobRoleDetail.get('fgNewReq').value));\r\n reqArray.controls[reqArray.length - 1].markAsDirty();\r\n this.fgJobRoleDetail.get('fgNewReq').markAsPristine();\r\n this.fgJobRoleDetail.removeControl('fgNewReq');\r\n this.addingReqInProgress = false;\r\n }\r\n\r\n onNewReqDeleteClick() {\r\n this.fgJobRoleDetail.get('fgNewReq').markAsPristine();\r\n this.fgJobRoleDetail.removeControl('fgNewReq');\r\n this.addingReqInProgress = false;\r\n }\r\n\r\n onNewPersonDoneClick() {\r\n this.fgJobRoleDetail.get('newPerson').patchValue(\r\n {\r\n personName: this.getPersonNameFromId(\r\n this.fgJobRoleDetail.get('newPerson').get('personId').value\r\n )\r\n }\r\n );\r\n\r\n const peopleArray = (this.fgJobRoleDetail.get('people') as FormArray);\r\n peopleArray.push(this.fb.group(this.fgJobRoleDetail.get('newPerson').value));\r\n peopleArray.controls[peopleArray.length - 1].markAsDirty();\r\n this.fgJobRoleDetail.get('newPerson').markAsPristine();\r\n this.fgJobRoleDetail.removeControl('newPerson');\r\n this.addingPersonInProgress = false;\r\n }\r\n\r\n onNewPersonDeleteClick() {\r\n this.fgJobRoleDetail.get('newPerson').markAsPristine();\r\n this.fgJobRoleDetail.removeControl('newPerson');\r\n this.addingPersonInProgress = false;\r\n }\r\n\r\n addLevelSetToCache(disciplineId: number) {\r\n if (!(disciplineId in this.levelSetsCache)) {\r\n this.levelSetsCache[disciplineId] = [];\r\n // this.claimLevelsSubsStore[disciplineId].unsubscribe(); // TODO: Unsubs\r\n // this.claimLevelsSubsStore[disciplineId] = this.claimService.getClaimLevelsFeed(disciplineId).subscribe(\r\n this.claimService.getClaimLevelsFeed(disciplineId).pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n ).subscribe(\r\n cl => this.levelSetsCache[disciplineId] = cl,\r\n err => this.alertService.createAlert2(this.exceptionData.CLAIM_LEVELS, err)\r\n );\r\n }\r\n }\r\n\r\n getDisciplineNameFromId(disciplineId: number): string {\r\n return (this.disciplineList || []).filter( d => { return d.id === disciplineId; }).map( d1 => d1.name)[0] || '';\r\n }\r\n\r\n getSkillNameFromId(disciplineId: number, skillId: number): string {\r\n return (this.skillsCache[disciplineId] || []).filter( s => { return s.id === skillId; }).map( s1 => s1.name)[0] || '';\r\n }\r\n\r\n getPersonNameFromId(personId: number): string {\r\n return (this.peopleList || []).filter( p => { return p.id === personId; }).map( p1 => p1.displayName)[0] || '';\r\n }\r\n\r\n formControlValid(controlName: string): boolean {\r\n const c: AbstractControl = this.fgJobRoleDetail.get(controlName);\r\n return c.disabled || !(c.touched && c.invalid);\r\n }\r\n\r\n onJobFamilyChange() {\r\n // const selectedJobFamily = this.jobFamilyList.find(jf => {return jf.id === this.fgJobRoleDetail.get('jobFamilyId').value; });\r\n // if (selectedJobFamily) {\r\n // this.filteredJobGradeList = this.jobGradeList.filter( jg => {\r\n // return jg.jobGradeSetId === selectedJobFamily.jobGradeSetId;\r\n // });\r\n // } else {\r\n // this.filteredJobGradeList = [];\r\n // }\r\n const selectedJobFamily = this.jobFamilyList.find(jf => {return jf.id === this.fgJobRoleDetail.get('jobFamilyId').value; });\r\n const selectedJobGrade = this.jobGradeList.find(jg => {return jg.id === this.fgJobRoleDetail.get('jobGradeId').value; });\r\n if (selectedJobFamily && selectedJobGrade && selectedJobFamily.jobGradeSetId !== selectedJobGrade.jobGradeSetId) {\r\n this.fgJobRoleDetail.get('jobGradeId').setValue(null);\r\n }\r\n }\r\n\r\n trackByReqs(index: number, requirement: JobRoleRequirement): number {\r\n return requirement.id;\r\n }\r\n\r\n get filteredJobGradeList(): Array {\r\n const selectedJobFamily = this.jobFamilyList.find(jf => {return jf.id === this.fgJobRoleDetail.get('jobFamilyId').value; });\r\n let filteredList: Array = [];\r\n if (selectedJobFamily) {\r\n filteredList = this.jobGradeList.filter( jg => {\r\n return jg.jobGradeSetId === selectedJobFamily.jobGradeSetId;\r\n });\r\n }\r\n return filteredList;\r\n }\r\n\r\n get roleReqsArray(): Array {\r\n return this.fgJobRoleDetail.get('requirements').value;\r\n }\r\n\r\n get rolePeopleArray(): Array {\r\n return this.fgJobRoleDetail.get('people').value;\r\n }\r\n\r\n get addedDisciplineId(): number {\r\n return this.fgJobRoleDetail.get('fgNewReq').get('disciplineId').value;\r\n }\r\n\r\n get jobRoleStatusBadgeClasses(): any {\r\n let statusClasses = {};\r\n if (!this.fgJobRoleDetail.valid) {\r\n statusClasses = {\r\n 'text-danger': true,\r\n 'fas fa-exclamation-circle': true\r\n };\r\n } else\r\n if (this.fgJobRoleDetail.dirty) {\r\n statusClasses = {\r\n 'text-warning': true,\r\n 'fas fa-asterisk': true\r\n };\r\n } else\r\n if (!this.fgJobRoleDetail.pristine) {\r\n statusClasses = {\r\n 'text-success': true,\r\n 'fas fa-check-circle': true\r\n };\r\n }\r\n return statusClasses;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n {{jobRoleTitle}} \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
Role Detail
\r\n
\r\n
\r\n
\r\n \r\n \r\n
Role Name is required
\r\n \r\n \r\n
Identifier Code must be unique
\r\n \r\n \r\n
Organisation Unit is required
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n People assigned to this role ({{rolePeopleArray.length | i18nPlural: peopleCountMessageMap}})\r\n \r\n
\r\n
    \r\n
  • \r\n
    \r\n \r\n
    Person already has this role
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
  • \r\n
  • \r\n
    \r\n
    {{rolePerson.personName}}
    \r\n \r\n \r\n
    \r\n
  • \r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n Role Requirements ({{roleReqsArray.length | i18nPlural: reqCountMessageMap}})\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
DisciplineSkillLevelWeightingMandatory?
\r\n \r\n
Discipline is required
\r\n
\r\n \r\n
Duplicate Skill
\r\n
Skill is required
\r\n
\r\n \r\n
Level is required
\r\n
\r\n \r\n
Weighting must be between 0 and 1
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
{{roleRequirement?.disciplineName}}{{roleRequirement?.skillName}}\r\n \r\n \r\n \r\n
Weighting must be between 0 and 1
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n","import { Component, Input, OnChanges, OnDestroy } from '@angular/core';\r\n\r\nimport { from, Subscription } from 'rxjs';\r\nimport { map, finalize, flatMap } from 'rxjs/operators';\r\n\r\nimport { JobRoleService, JobRoleOrPersonOptions } from './job-role.service';\r\nimport { PersonService, PersonJobRoles } from '../person/person.service';\r\nimport { FormControl, FormGroup } from '@angular/forms';\r\nimport { AlertLevels, AlertData, AlertService } from 'app/core/alert.service';\r\n\r\n@Component({\r\n selector: 'ug-job-role-profile',\r\n templateUrl: './job-role-profile.component.html',\r\n styleUrls: ['./job-role-profile.component.css']\r\n})\r\nexport class JobRoleProfileComponent implements OnChanges, OnDestroy {\r\n\r\n private subscriptions = new Subscription();\r\n\r\n @Input() personId: number;\r\n @Input() cardTitle = 'My Role Profile';\r\n\r\n exceptionData = {\r\n 'PERSON_JOB_ROLES': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRP-001',\r\n message: 'Error retrieving person job roles'\r\n } as AlertData,\r\n 'ROLE_VS_PERSON': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRP-002',\r\n message: 'Error retrieving job role vs person data'\r\n } as AlertData,\r\n };\r\n\r\n jobRoleOrPersonOptions = JobRoleOrPersonOptions;\r\n\r\n jobRoleForm: FormGroup;\r\n selectedJobRoleIndex = new FormControl(null);\r\n\r\n isLoading = true;\r\n\r\n roleProfiles: Array = [];\r\n\r\n constructor(private alertService: AlertService, private personService: PersonService, private jobRoleService: JobRoleService) { }\r\n\r\n ngOnChanges() {\r\n // If personId not currently set then exit\r\n if (!this.personId) {return};\r\n\r\n // Get job roles for the selected person\r\n this.subscriptions.add(\r\n this.personService.getPersonJobRoles(this.personId)\r\n .pipe(\r\n map(\r\n // extract the jobRoleId values from the result set into an array\r\n personJobRoles => personJobRoles.jobRoles.map( jobRole => jobRole.jobRoleId )\r\n ),\r\n ).subscribe(\r\n // Convert the array of jobRoleId values into an observable\r\n jobRoleIdArray => from(jobRoleIdArray)\r\n .pipe(\r\n flatMap(\r\n // Retrieve the job role vs person detail for each jobRoleId\r\n jobRoleId => this.jobRoleService.getJobRoleVsPerson(jobRoleId, this.personId)\r\n ),\r\n finalize(\r\n () => {\r\n // Set the selected job role to be the first in the array or null\r\n this.selectedJobRoleIndex.setValue(this.roleProfiles[0] ? 0 : null);\r\n // Mark loading as complete\r\n this.isLoading = false;\r\n }\r\n )\r\n ).subscribe(\r\n roleProfile => {\r\n // Add each job role vs person result to the roleProfiles array\r\n this.roleProfiles.push(roleProfile)\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.ROLE_VS_PERSON, err);\r\n }\r\n ),\r\n err => {\r\n this.isLoading = false;\r\n this.alertService.createAlert2(this.exceptionData.PERSON_JOB_ROLES, err)\r\n }\r\n )\r\n )\r\n\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.unsubscribe();\r\n }\r\n\r\n meetsReqClass(req: any): string {\r\n const roleScore = req['roleLevel']['score'] || 0;\r\n const personScore = req['personLevel']['score'] || 0;\r\n let classString = '';\r\n\r\n if (personScore >= roleScore) {\r\n classString = 'far fa-check-circle text-success';\r\n }\r\n if (personScore < roleScore) {\r\n if (req['mandatory']) {\r\n classString = 'far fa-times-circle text-danger';\r\n } else {\r\n classString = 'far fa-times-circle text-warning';\r\n }\r\n }\r\n\r\n return classString;\r\n }\r\n\r\n get listLength() {\r\n return this.isLoading ? 0 : 1;\r\n }\r\n\r\n get hasJobRole() {\r\n return this.roleProfiles.length > 0;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
{{cardTitle}}
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
Discipline / Skill
\r\n
\r\n
\r\n
{{s['disciplineName']}} / {{s['skillName']}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n No role assigned\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
My Role Profile
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\nimport { AuthGuard } from '../auth.guard';\r\nimport { AdminGuard } from 'app/core/admin.guard';\r\nimport { SecurityRoleGuard } from 'app/core/security-role.guard';\r\n\r\nimport { JobFamilyComponent } from '../job-role/job-family.component';\r\nimport { JobGradeSetGradeComponent } from '../job-role/job-grade-set-grade.component';\r\nimport { JobRoleComponent } from '../job-role/job-role.component';\r\nimport { JobRoleCompareComponent } from '../job-role/job-role-compare.component';\r\nimport { JobRoleAnalysisComponent } from '../job-role/job-role-analysis.component';\r\nimport { RouteSecurityRole } from 'app/core/menus';\r\nimport { MsalGuard } from '@azure/msal-angular';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'job-roles',\r\n component: JobRoleComponent,\r\n canActivate: [MsalGuard, SecurityRoleGuard],\r\n data: {minimumRole: RouteSecurityRole['ADMIN_JOB-ROLES']}\r\n },\r\n {path: 'job-role/:jobRoleId/person/:personId', component: JobRoleCompareComponent, canActivate: [MsalGuard]},\r\n {\r\n path: 'job-families',\r\n component: JobFamilyComponent,\r\n canActivate: [MsalGuard, SecurityRoleGuard],\r\n data: {minimumRole: RouteSecurityRole['ADMIN_JOB-FAMILIES']}\r\n },\r\n {\r\n path: 'job-grades',\r\n component: JobGradeSetGradeComponent,\r\n canActivate: [MsalGuard, SecurityRoleGuard],\r\n data: {minimumRole: RouteSecurityRole['ADMIN_JOB-GRADES']}\r\n },\r\n {\r\n path: 'job-role-analysis',\r\n component: JobRoleAnalysisComponent,\r\n canActivate: [MsalGuard, SecurityRoleGuard],\r\n data: {minimumRole: RouteSecurityRole['ANALYSIS_JOB-ROLES']}\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class JobRoleRoutingModule { }\r\n","import { Component, OnChanges, OnDestroy, OnInit } from '@angular/core';\r\n\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { AlertService, AlertData, AlertLevels } from '../core/alert.service';\r\nimport { JobRole, JobRoleService} from '../job-role/job-role.service';\r\nimport { OrgUnitService } from '../org-unit/org-unit.service';\r\nimport { PersonService } from '../person/person.service';\r\nimport { SkillService } from '../skill/skill.service';\r\nimport { JobRoleDetailComponent } from '../job-role/job-role-detail.component';\r\nimport { Skill } from '../skill/skill';\r\n\r\nclass JobRoleDisplay {\r\n isValid? = true;\r\n isDirty? = false;\r\n isCollapsed? = true;\r\n constructor(public jobRole: JobRole) {};\r\n}\r\n\r\n@Component({\r\n selector: 'ug-job-role',\r\n templateUrl: './job-role.component.html',\r\n styleUrls: ['./job-role.component.css']\r\n})\r\n\r\nexport class JobRoleComponent implements OnChanges, OnDestroy, OnInit {\r\n\r\n jobRoleList: Array = [];\r\n jobRoleDisplayList: Array = [];\r\n\r\n newJobRole: JobRole;\r\n newJobRoleDisplay: JobRoleDisplay;\r\n\r\n disciplinesSubs = new Subscription();\r\n jobFamiliesSubs = new Subscription();\r\n jobGradesSubs = new Subscription();\r\n jobRolesSubs = new Subscription();\r\n orgUnitsSubs = new Subscription();\r\n personListSubs = new Subscription();\r\n\r\n jobRoleCountMessageMap = {\r\n '=0': 'No job roles exist',\r\n '=1': '1 job role',\r\n 'other': '# job roles'\r\n };\r\n\r\n isLoading = true;\r\n\r\n exceptionData = {\r\n 'DISCIPLINE_LIST': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRL-001',\r\n message: 'Error retrieving disciplines'\r\n } as AlertData,\r\n 'ORG_UNIT_LIST': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRL-002',\r\n message: 'Error retrieving organisation units'\r\n } as AlertData,\r\n 'PEOPLE_LIST': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRL-003',\r\n message: 'Error retrieving people'\r\n } as AlertData,\r\n 'JOB_FAMILY_LIST': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRL-004',\r\n message: 'Error retrieving job families'\r\n } as AlertData,\r\n 'JOB_GRADE_LIST': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRL-005',\r\n message: 'Error retrieving job grades'\r\n } as AlertData,\r\n 'SKILLS_LIST': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRL-006',\r\n message: 'Error retrieving skills'\r\n } as AlertData,\r\n 'CLAIM_LEVELS': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRL-007',\r\n message: 'Error retrieving claim levels'\r\n } as AlertData,\r\n 'JOB_ROLES': {\r\n level: AlertLevels.ERROR,\r\n code: 'JRL-008',\r\n message: 'Error retrieving job roles'\r\n } as AlertData,\r\n };\r\n\r\n constructor(\r\n public jobRoleService: JobRoleService,\r\n private alertService: AlertService,\r\n private orgUnitService: OrgUnitService,\r\n private personService: PersonService,\r\n private skillService: SkillService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.isLoading = true;\r\n this.orgUnitsSubs = this.orgUnitService.getOrgUnits().subscribe(\r\n ou => this.orgUnitService.orgUnitFeed.next(ou),\r\n err => this.alertService.createAlert2(this.exceptionData.ORG_UNIT_LIST, err)\r\n );\r\n this.personListSubs = this.personService.getPersonList().subscribe(\r\n pl => this.personService.peopleFeed.next(pl),\r\n err => this.alertService.createAlert2(this.exceptionData.PEOPLE_LIST, err)\r\n );\r\n this.disciplinesSubs = this.skillService.getDisciplines().subscribe(\r\n dl => this.skillService.disciplineFeed.next(dl),\r\n err => this.alertService.createAlert2(this.exceptionData.DISCIPLINE_LIST, err)\r\n );\r\n this.jobFamiliesSubs = this.jobRoleService.getJobFamilies().subscribe(\r\n jf => this.jobRoleService.jobFamiliesFeed.next(jf),\r\n err => this.alertService.createAlert2(this.exceptionData.JOB_FAMILY_LIST, err)\r\n );\r\n this.jobGradesSubs = this.jobRoleService.getJobGrades().subscribe(\r\n jg => this.jobRoleService.jobGradesFeed.next(jg),\r\n err => this.alertService.createAlert2(this.exceptionData.JOB_GRADE_LIST, err)\r\n );\r\n this.jobRolesSubs = this.jobRoleService.getJobRoles().subscribe(\r\n (jrl: Array) => {\r\n jrl.forEach( j => {\r\n this.jobRoleDisplayList.push( new JobRoleDisplay(j));\r\n });\r\n this.jobRoleDisplayList.sort( (a, b) => b.jobRole.id - a.jobRole.id )\r\n this.jobRoleService.jobRoleIdCodesFeed.next(\r\n this.buildIdCodeList(jrl)\r\n );\r\n this.isLoading = false;\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.JOB_ROLES, err);\r\n this.isLoading = false;\r\n }\r\n );\r\n }\r\n\r\n ngOnChanges() {\r\n console.log('JobRoleComponent OnChanges()');\r\n // this.buildIdCodeList(this.jobRoleList);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.disciplinesSubs.unsubscribe();\r\n this.jobFamiliesSubs.unsubscribe();\r\n this.jobGradesSubs.unsubscribe();\r\n this.jobRolesSubs.unsubscribe();\r\n this.orgUnitsSubs.unsubscribe();\r\n this.personListSubs.unsubscribe();\r\n }\r\n\r\n buildIdCodeList(jobRoleList: Array): Array {\r\n return (jobRoleList || [])\r\n .filter(jr1 => {return (jr1.identifierCode || '').length > 0; })\r\n .map(jr2 => { return {id: jr2.id, code: jr2.identifierCode}; });\r\n }\r\n\r\n onCreateJobRoleClick() {\r\n this.newJobRoleDisplay = new JobRoleDisplay(\r\n {\r\n name: null,\r\n requirements: [],\r\n people: []\r\n } as JobRole\r\n );\r\n this.newJobRoleDisplay.isCollapsed = false;\r\n this.jobRoleService.createJobRoleInProgress = true;\r\n }\r\n\r\n addJobRole(newJobRole: JobRole) {\r\n console.log(JSON.stringify(newJobRole));\r\n this.jobRoleDisplayList.push(new JobRoleDisplay(newJobRole));\r\n this.jobRoleDisplayList.sort( (a, b) => b.jobRole.id - a.jobRole.id )\r\n this.jobRoleService.jobRoleIdCodesFeed.next(\r\n this.buildIdCodeList(this.jobRoleDisplayList.map( jrd => { return jrd.jobRole; }))\r\n // this.jobRoleDisplayList.map( jr => { return jr.jobRole.identifierCode; })\r\n );\r\n}\r\n\r\n updateJobRole(jobRoleIndex: number, newJobRole: JobRole) {\r\n console.log(jobRoleIndex);\r\n if (jobRoleIndex === -1) {\r\n this.jobRoleService.createJobRoleInProgress = false;\r\n } else {\r\n if (!newJobRole) {\r\n console.log('Delete job role');\r\n this.jobRoleDisplayList.splice(jobRoleIndex, 1);\r\n } else {\r\n console.log('Update job role');\r\n this.jobRoleDisplayList[jobRoleIndex].jobRole = newJobRole;\r\n }\r\n }\r\n this.jobRoleService.jobRoleIdCodesFeed.next(\r\n // this.buildIdCodeList(this.jobRoleDisplayList.map( jrd => { return jrd.jobRole; }))\r\n this.buildIdCodeList(this.jobRoleDisplayList.map( jrd => { return jrd.jobRole; }))\r\n );\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Job Roles ({{jobRoleDisplayList.length | i18nPlural: jobRoleCountMessageMap}})\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms'; // , ReactiveFormsModule\r\n\r\nimport { ControlsModule } from '../controls/controls.module';\r\nimport { DashboardModule } from '../dashboard/dashboard.module';\r\nimport { JobRoleRoutingModule } from './job-role-routing.module';\r\nimport { JobRoleService } from './job-role.service';\r\nimport { JobRoleComponent } from './job-role.component';\r\nimport { JobRoleDetailComponent } from './job-role-detail.component';\r\nimport { JobRoleCompareComponent } from './job-role-compare.component';\r\nimport { ChartClusteredBarComponent } from '../dashboard/chart-clustered-bar.component';\r\nimport { JobRoleAnalysisComponent } from './job-role-analysis.component';\r\nimport { JobGradeComponent } from './job-grade.component';\r\nimport { JobGradeSetComponent } from './job-grade-set.component';\r\nimport { JobFamilyComponent } from './job-family.component';\r\nimport { JobGradeSetGradeComponent } from './job-grade-set-grade.component';\r\nimport { formatPrefix } from 'd3';\r\nimport { JobRoleProfileComponent } from './job-role-profile.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ControlsModule,\r\n DashboardModule,\r\n FormsModule,\r\n JobRoleRoutingModule,\r\n ReactiveFormsModule\r\n ],\r\n declarations: [\r\n JobRoleComponent,\r\n JobRoleDetailComponent,\r\n JobRoleCompareComponent,\r\n ChartClusteredBarComponent,\r\n JobRoleAnalysisComponent,\r\n JobGradeComponent,\r\n JobGradeSetComponent,\r\n JobFamilyComponent,\r\n JobGradeSetGradeComponent,\r\n JobRoleProfileComponent\r\n ],\r\n providers: [JobRoleService],\r\n exports: [\r\n JobRoleComponent,\r\n JobRoleDetailComponent,\r\n JobRoleCompareComponent,\r\n ChartClusteredBarComponent,\r\n JobRoleAnalysisComponent,\r\n JobGradeComponent,\r\n JobGradeSetComponent,\r\n JobFamilyComponent,\r\n JobGradeSetGradeComponent,\r\n JobRoleProfileComponent\r\n ]\r\n})\r\nexport class JobRoleModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\n\r\nimport { Observable, BehaviorSubject, throwError } from 'rxjs';\r\nimport { catchError, map } from 'rxjs/operators';\r\n\r\nimport { environment } from 'environments/environment';\r\n\r\nexport enum JobRoleOrPersonOptions {\r\n JOB_ROLE,\r\n PERSON\r\n}\r\n\r\nexport interface JobRoleRequirement {\r\n allowDescendents?: boolean;\r\n claimLevelId: number;\r\n claimLevelName?: string;\r\n disciplineId: number;\r\n disciplineName?: string;\r\n id?: number;\r\n jobRoleId: number;\r\n mandatory: boolean;\r\n skillId: number;\r\n skillName?: string;\r\n weighting: number;\r\n}\r\n\r\nexport interface JobRolePerson {\r\n displayName: string;\r\n id: number;\r\n jobRoleId: number;\r\n personId: number;\r\n}\r\n\r\n// export interface JobRoleSummary {\r\n// description?: string;\r\n// id?: number;\r\n// name: string;\r\n// organisationUnitId?: number;\r\n// organisationUnitName: string;\r\n// }\r\n\r\nexport interface JobRole {\r\n description?: string;\r\n id?: number;\r\n identifierCode?: string;\r\n jobFamilyId: number;\r\n jobGradeId: number;\r\n name: string;\r\n organisationUnitId?: number;\r\n requirements: Array;\r\n people: Array;\r\n}\r\n\r\nexport interface JobRolePayload {\r\n description?: string;\r\n id?: number;\r\n identifierCode?: string;\r\n jobFamilyId: number;\r\n jobGradeId: number;\r\n name: string;\r\n organisationUnitId?: number;\r\n requirements: {\r\n create: Array,\r\n delete: Array\r\n update: Array,\r\n };\r\n people: {\r\n create: Array<{personId: number}>,\r\n delete: Array<{id: number; personId: number}>,\r\n update: Array<{id: number; personId: number}>,\r\n };\r\n}\r\n\r\ninterface JobRolesResponse {\r\n jobRoles: Array;\r\n}\r\n\r\nexport interface JobGradeSet {\r\n description?: string;\r\n id: number;\r\n name: string;\r\n}\r\n\r\nexport interface JobGrade {\r\n description?: string;\r\n id: number;\r\n name: string;\r\n jobGradeSetId: number;\r\n}\r\n\r\nexport interface JobFamily {\r\n description?: string;\r\n id: number;\r\n jobGradeSetId: number;\r\n name: string;\r\n parentJobFamilyId?: number;\r\n parentJobFamilyDescription?: string;\r\n parentJobFamilyName: string;\r\n}\r\n\r\nconst apiServerUri = environment.apiUrl;\r\n\r\n@Injectable()\r\nexport class JobRoleService {\r\n\r\n private _createJobRoleInProgress = false;\r\n\r\n jobFamiliesFeed = new BehaviorSubject>([]);\r\n jobGradesFeed = new BehaviorSubject>([]);\r\n jobRoleIdCodesFeed = new BehaviorSubject>([]);\r\n\r\n constructor(private http: HttpClient) {}\r\n\r\n getJobRoles(): Observable> {\r\n return this.http.get(`${apiServerUri}/job-roles`)\r\n .pipe(\r\n map( resp => { return resp['jobRoles'] || []; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getJobRolePeople(jobRoleId: number): Observable> {\r\n return this.http.get(`${apiServerUri}/job-roles/${jobRoleId}/people`)\r\n .pipe(\r\n map( resp => { return resp['jobRolePeople'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getJobRole(jobRoleId: number): Observable {\r\n return this.http.get(`${apiServerUri}/job-roles/${jobRoleId}`)\r\n .pipe(\r\n map( resp => { return resp['jobRole'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getJobRoleVsPerson(jobRoleId: number, personId: number): Observable {\r\n return this.http.get(`${apiServerUri}/job-roles/${jobRoleId}/people/${personId}`)\r\n .pipe(\r\n map( resp => { return resp['jobRoleVsPerson'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n createJobRole(jobRoleData: any): Observable {\r\n const headers = new HttpHeaders().set('Content-Type', 'application/json');\r\n return this.http.post(\r\n `${apiServerUri}/job-roles`,\r\n JSON.stringify(jobRoleData),\r\n { headers: headers }\r\n )\r\n .pipe(\r\n map( resp => { return resp['jobRole'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n updateJobRole(jobRoleId: number, jobRoleData: any): Observable {\r\n const headers = new HttpHeaders().set('Content-Type', 'application/json');\r\n return this.http.put(\r\n `${apiServerUri}/job-roles/${jobRoleId}`,\r\n JSON.stringify(jobRoleData),\r\n { headers: headers }\r\n )\r\n .pipe(\r\n map( resp => { return resp['jobRole'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n deleteJobRole(jobRoleId: number): Observable {\r\n return this.http.delete(`${apiServerUri}/job-roles/${jobRoleId}`)\r\n .pipe(\r\n map ( resp => { return resp || {} as JobRole; }),\r\n catchError( err => {return throwError(err); })\r\n );\r\n }\r\n\r\n getJobFamilies(): Observable> {\r\n return this.http.get(`${apiServerUri}/job-roles/job-families`)\r\n .pipe(\r\n map( resp => { return resp['jobFamilies'] || []; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getJobFamily(jobFamilyId: number): Observable {\r\n return this.http.get(`${apiServerUri}/job-roles/job-families/${jobFamilyId}`)\r\n .pipe(\r\n map( resp => { return resp['jobFamily'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n createJobFamily(jobFamilyData: JobFamily): Observable {\r\n const headers = new HttpHeaders().set('Content-Type', 'application/json');\r\n return this.http.post(\r\n `${apiServerUri}/job-roles/job-families`,\r\n JSON.stringify({jobFamily: jobFamilyData}),\r\n { headers: headers }\r\n )\r\n .pipe(\r\n map( resp => { return resp['jobFamily'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n updateJobFamily(jobFamilyId: number, jobFamilyData: JobFamily): Observable {\r\n const headers = new HttpHeaders().set('Content-Type', 'application/json');\r\n return this.http.put(\r\n `${apiServerUri}/job-roles/job-families/${jobFamilyId}`,\r\n JSON.stringify({jobFamily: jobFamilyData}),\r\n { headers: headers }\r\n )\r\n .pipe(\r\n map( resp => { return resp['jobFamily'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n deleteJobFamily(jobFamilyId: number): Observable {\r\n return this.http.delete(`${apiServerUri}/job-roles/job-families/${jobFamilyId}`)\r\n .pipe(\r\n map ( resp => { return resp || {} as JobFamily; }),\r\n catchError( err => {return throwError(err); })\r\n );\r\n }\r\n\r\n getJobGrades(): Observable> {\r\n return this.http.get(`${apiServerUri}/job-roles/job-grades`)\r\n .pipe(\r\n map( resp => { return resp['jobGrades'] || []; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getJobGradesForGradeSet(jobGradeSetId: number): Observable> {\r\n return this.http.get(`${apiServerUri}/job-roles/job-grade-sets/${jobGradeSetId}/job-grades`)\r\n .pipe(\r\n map( resp => { return resp['jobGrades'] || []; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getJobGrade(jobGradeId: number): Observable {\r\n return this.http.get(`${apiServerUri}/job-roles/job-grades/${jobGradeId}`)\r\n .pipe(\r\n map( resp => { return resp['jobGrade'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n createJobGrade(jobGradeData: JobGrade): Observable {\r\n const headers = new HttpHeaders().set('Content-Type', 'application/json');\r\n return this.http.post(\r\n `${apiServerUri}/job-roles/job-grades`,\r\n JSON.stringify({jobGrade: jobGradeData}),\r\n { headers: headers }\r\n )\r\n .pipe(\r\n map( resp => { return resp['jobGrade'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n updateJobGrade(jobGradeId: number, jobGradeData: JobGrade): Observable {\r\n const headers = new HttpHeaders().set('Content-Type', 'application/json');\r\n return this.http.put(\r\n `${apiServerUri}/job-roles/job-grades/${jobGradeId}`,\r\n JSON.stringify({jobGrade: jobGradeData}),\r\n { headers: headers }\r\n )\r\n .pipe(\r\n map( resp => { return resp['jobGrade'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n deleteJobGrade(jobGradeId: number): Observable {\r\n return this.http.delete(`${apiServerUri}/job-roles/job-grades/${jobGradeId}`)\r\n .pipe(\r\n map ( resp => { return resp || {} as JobGrade; }),\r\n catchError( err => {return throwError(err); })\r\n );\r\n }\r\n\r\n getJobGradeSets(): Observable> {\r\n return this.http.get(`${apiServerUri}/job-roles/job-grade-sets`)\r\n .pipe(\r\n map( resp => { return resp['jobGradeSets'] || []; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getJobGradeSet(jobGradeSetId: number): Observable {\r\n return this.http.get(`${apiServerUri}/job-roles/job-grade-sets/${jobGradeSetId}`)\r\n .pipe(\r\n map( resp => { return resp['jobGradeSet'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n createJobGradeSet(jobGradeSetData: {jobGradeSet: JobGradeSet}): Observable {\r\n const headers = new HttpHeaders().set('Content-Type', 'application/json');\r\n return this.http.post(\r\n `${apiServerUri}/job-roles/job-grade-sets`,\r\n JSON.stringify(jobGradeSetData),\r\n { headers: headers }\r\n )\r\n .pipe(\r\n map( resp => { return resp['jobGradeSet'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n updateJobGradeSet(jobGradeSetId: number, jobGradeSetData: {jobGradeSet: JobGradeSet}): Observable {\r\n const headers = new HttpHeaders().set('Content-Type', 'application/json');\r\n return this.http.put(\r\n `${apiServerUri}/job-roles/job-grade-sets/${jobGradeSetId}`,\r\n JSON.stringify(jobGradeSetData),\r\n { headers: headers }\r\n )\r\n .pipe(\r\n map( resp => { return resp['jobGradeSet'] || {}; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n deleteJobGradeSet(jobGradeSetId: number): Observable {\r\n return this.http.delete(`${apiServerUri}/job-roles/job-grade-sets/${jobGradeSetId}`)\r\n .pipe(\r\n map ( resp => { return resp || {} as JobGrade; }),\r\n catchError( err => {return throwError(err); })\r\n );\r\n }\r\n\r\n get createJobRoleInProgress() {\r\n return this._createJobRoleInProgress;\r\n }\r\n\r\n set createJobRoleInProgress(value: boolean) {\r\n this._createJobRoleInProgress = value;\r\n }\r\n\r\n}\r\n","import { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { timeHours } from 'd3';\r\nimport { forkJoin, Subscription, Subject } from 'rxjs';\r\nimport { finalize, takeUntil } from 'rxjs/operators';\r\n\r\nimport { OrgUnitService } from '../org-unit.service';\r\nimport { GroupTrainingSubject } from '../group-training-subject';\r\nimport { TrainingSubject } from '../training-subject';\r\nimport { OrgUnit } from '../org-unit';\r\nimport { AbstractControl, FormControl, FormGroup } from '@angular/forms';\r\nimport { textChangeRangeIsUnchanged } from 'typescript';\r\n\r\ninterface SubjectItem {\r\n groupSubjectId: number;\r\n subjectId: number;\r\n subjectExtId: number;\r\n subjectTitle: string;\r\n}\r\ninterface GroupSubjectRow {\r\n groupId: number;\r\n groupName: string;\r\n groupSubjects: Array;\r\n}\r\n\r\n@Component({\r\n selector: 'ug-group-subjects',\r\n templateUrl: './group-subjects.component.html',\r\n styleUrls: ['./group-subjects.component.css']\r\n})\r\nexport class GroupSubjectsComponent implements OnInit, OnDestroy {\r\n loadingData: boolean;\r\n groupSubjectSubs = new Subscription();\r\n groupList: Array = [];\r\n groupSubjects: Array;\r\n groupSubjectMap: Map> = new Map>();\r\n groupSubjectTable: Array = [];\r\n ngUnsubscribe: Subject = new Subject();\r\n updateInProgress = false;\r\n\r\n addMappingForm: FormGroup = new FormGroup(\r\n {\r\n 'groupName': new FormControl(null),\r\n 'subjectTitle': new FormControl(null),\r\n }\r\n );\r\n subjectList: Array;\r\n\r\n constructor(private orgUnitService: OrgUnitService) { }\r\n\r\n ngOnInit(): void {\r\n this.loadingData = true;\r\n\r\n forkJoin(\r\n {\r\n ts: this.orgUnitService.getTrainingSubjects(),\r\n gs: this.orgUnitService.getGroupSubjects(),\r\n ou: this.orgUnitService.getExtOrgUnitsByType('Group')\r\n }\r\n )\r\n .pipe(\r\n takeUntil(this.ngUnsubscribe),\r\n finalize( () => this.loadingData = false)\r\n )\r\n .subscribe( ({ts, gs, ou}) => {\r\n this.groupList = ou.sort( (a, b) => a.name > b.name ? 1 : -1);\r\n this.subjectList = ts;\r\n this.groupSubjects = gs;\r\n this.groupSubjectTable = this.buildgroupSubjectTable(gs);\r\n } )\r\n\r\n\r\n // this.orgUnitService.getGroupSubjects()\r\n // .pipe(\r\n // takeUntil(this.ngUnsubscribe),\r\n // finalize( () => this.loadingData = false)\r\n // )\r\n // .subscribe(\r\n // gs => {\r\n // // this.groupSubjects = gs;\r\n // this.groupSubjectTable = this.buildgroupSubjectTable(gs);\r\n // }\r\n // )\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.ngUnsubscribe.next(true);\r\n this.ngUnsubscribe.complete();\r\n }\r\n\r\n // buildgroupSubjectTable(groupSubjects: Array): Map> {\r\n buildgroupSubjectTable(groupSubjects: Array): Array {\r\n const workingMap = new Map>();\r\n const workingTable: Array = [];\r\n\r\n groupSubjects.forEach(gs => {\r\n const currentSubjs: Array = workingMap.get(gs.GccGroupName) || [];\r\n currentSubjs.push(\r\n {\r\n groupSubjectId: gs.GccId,\r\n subjectId: gs.TsId,\r\n subjectExtId: gs.TsExtId,\r\n subjectTitle: gs.TsTitle\r\n } as SubjectItem\r\n )\r\n workingMap.set(gs.GccGroupName, currentSubjs);\r\n })\r\n\r\n workingMap.forEach(\r\n (mv, mk) => {\r\n workingTable.push(\r\n {\r\n groupId: -1,\r\n groupName: mk,\r\n groupSubjects: mv\r\n }\r\n )\r\n }\r\n );\r\n this.groupSubjectMap = workingMap;\r\n\r\n return workingTable;\r\n\r\n // return workingMap;\r\n }\r\n\r\n formControlValid(controlName: string): boolean {\r\n const c: AbstractControl = this.addMappingForm.get(controlName);\r\n return c.disabled || !(c.touched && c.invalid);\r\n }\r\n\r\n disableSubjectSelect(subjectExtId: number): boolean {\r\n const newGroup = this.addMappingForm.get('groupName').value;\r\n if (!newGroup) { return false; }\r\n return (this.groupSubjectMap.get(newGroup) || []).some( s => s.subjectExtId === subjectExtId)\r\n }\r\n\r\n disableGroupOption(groupExtId: string): boolean {\r\n return this.groupSubjectTable.map(gs => gs.groupName).some(gn => gn === groupExtId);\r\n }\r\n\r\n addGroupSubject(): void {\r\n this.updateInProgress = true;\r\n this.orgUnitService.addGroupSubject(this.addMappingForm.get('groupName').value, this.addMappingForm.get('subjectTitle').value)\r\n .pipe(\r\n takeUntil(this.ngUnsubscribe),\r\n finalize(() => this.updateInProgress = false)\r\n )\r\n .subscribe(\r\n gs => {\r\n this.groupSubjects.push(gs);\r\n this.groupSubjectTable = this.buildgroupSubjectTable(this.groupSubjects);\r\n this.addMappingForm.reset({groupName: null, subjectTitle: null})\r\n }\r\n )\r\n }\r\n\r\n deleteGroupSubject(deleteGroupSubjectId: number): void {\r\n this.updateInProgress = true;\r\n this.orgUnitService.deleteGroupSubject(deleteGroupSubjectId)\r\n .pipe(\r\n takeUntil(this.ngUnsubscribe),\r\n finalize( () => {\r\n this.updateInProgress = false;\r\n })\r\n )\r\n .subscribe(\r\n () => {\r\n this.groupSubjects = this.groupSubjects.filter(gs => gs.GccId !== deleteGroupSubjectId);\r\n this.groupSubjectTable = this.buildgroupSubjectTable(this.groupSubjects);\r\n },\r\n err => {\r\n // this.alertService.createAlert2(\r\n // this.exceptionData['WATCH_DELETE'],\r\n // err\r\n // );\r\n }\r\n )\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n Group subjects\r\n
\r\n
\r\n
Group
\r\n
Subjects
\r\n
\r\n
\r\n
\r\n \r\n
{{g.groupName}}
\r\n
\r\n
\r\n
\r\n \r\n
{{s.subjectExtId}}: {{s.subjectTitle}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Add group/subject mapping

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
Group Name is required
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n\r\n","import { Component, Input, OnChanges } from '@angular/core';\r\n\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { OrgUnitService } from './org-unit.service';\r\n\r\nimport { ApiException } from '../core/api-exception';\r\nimport { OrgUnit } from './org-unit';\r\n\r\n@Component({\r\n selector: 'ug-org-unit-detail',\r\n templateUrl: './org-unit-detail.component.html',\r\n styleUrls: ['./org-unit-detail.component.css']\r\n})\r\nexport class OrgUnitDetailComponent implements OnChanges {\r\n private _id: number;\r\n @Input()\r\n set orgUnitId(id: number) {\r\n this._id = id;\r\n }\r\n get orgUnitId() {\r\n return this._id;\r\n }\r\n orgUnit = new OrgUnit();\r\n\r\n exceptionData = {\r\n 'ORG_UNIT': {\r\n level: AlertLevels.ERROR,\r\n code: 'OUD-001',\r\n message: 'Error retrieving org unit detail'\r\n } as AlertData,\r\n };\r\n\r\n constructor(private alertService: AlertService, private orgUnitService: OrgUnitService ) { }\r\n\r\n ngOnChanges() {\r\n console.log('In org-unit onInit, orgUnitId=' + this.orgUnitId);\r\n if (!this.orgUnitId) { return; }\r\n this.orgUnitService.getOrgUnit(this.orgUnitId)\r\n .subscribe(\r\n (orgUnit: OrgUnit) => this.orgUnit = orgUnit,\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.ORG_UNIT, err);\r\n },\r\n () => console.log('Got OrgUnit')\r\n );\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
Name
\r\n
{{orgUnit.name}}
\r\n
Description
\r\n
{{orgUnit.description || 'n/a'}}
\r\n
Parent Organisation Unit
\r\n
{{orgUnit.parentOrgUnitName || 'None (top level)'}}
\r\n
\r\n
\r\n
","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { MsalGuard } from '@azure/msal-angular';\r\nimport { CanDeactivateGuard } from 'app/core/can-deactivate.guard';\r\nimport { RouteSecurityRole } from 'app/core/menus';\r\nimport { SecurityRoleGuard } from 'app/core/security-role.guard';\r\n\r\nimport { GroupSubjectsComponent } from './group-subjects/group-subjects.component';\r\nimport {SkillsMatrixDivisionComponent} from './skills-matrix-division/skills-matrix-division.component';\r\nimport {WatchHierarchyComponent} from './watch-hierarchy/watch-hierarchy.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'skills-matrix-divisions',\r\n component: SkillsMatrixDivisionComponent,\r\n canActivate: [MsalGuard, SecurityRoleGuard],\r\n canDeactivate: [CanDeactivateGuard],\r\n data: {minimumRole: RouteSecurityRole['ADMIN_SM-DIVISIONS']}\r\n },\r\n {\r\n path: 'watch-hierarchy',\r\n component: WatchHierarchyComponent,\r\n canActivate: [MsalGuard, SecurityRoleGuard],\r\n canDeactivate: [CanDeactivateGuard],\r\n data: {minimumRole: RouteSecurityRole['ADMIN_WATCH-HIERARCHY']}\r\n },\r\n {\r\n path: 'group-subjects',\r\n component: GroupSubjectsComponent,\r\n canActivate: [MsalGuard, SecurityRoleGuard],\r\n canDeactivate: [CanDeactivateGuard],\r\n data: {minimumRole: RouteSecurityRole['ADMIN_GROUP-SUBJECTS']}\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class OrgUnitRoutingModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { OrgUnitDetailComponent } from './org-unit-detail.component';\r\nimport { OrgUnitRoutingModule } from './org-unit-routing.module';\r\nimport { OrgUnitService } from './org-unit.service';\r\nimport { SkillsMatrixDivisionComponent } from './skills-matrix-division/skills-matrix-division.component';\r\nimport { WatchHierarchyComponent } from './watch-hierarchy/watch-hierarchy.component';\r\nimport { GroupSubjectsComponent } from './group-subjects/group-subjects.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n OrgUnitRoutingModule,\r\n ReactiveFormsModule\r\n ],\r\n declarations: [OrgUnitDetailComponent, SkillsMatrixDivisionComponent, WatchHierarchyComponent, GroupSubjectsComponent],\r\n exports: [OrgUnitDetailComponent, GroupSubjectsComponent],\r\n providers: [ OrgUnitService ]\r\n})\r\nexport class OrgUnitModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\n\r\nimport { Observable, BehaviorSubject, throwError } from 'rxjs';\r\nimport { catchError, map } from 'rxjs/operators';\r\n\r\nimport { environment } from 'environments/environment';\r\n\r\nimport { OrgUnit } from './org-unit';\r\nimport { Watch } from './watch';\r\nimport { WatchHierarchyComponent } from './watch-hierarchy/watch-hierarchy.component';\r\nimport { json } from 'd3';\r\nimport { ConfigSetting } from './config-setting';\r\nimport { TrainingSubjectCategories } from 'app/dashboard/training-subject-categories';\r\nimport { GroupTrainingSubject } from './group-training-subject';\r\nimport { TrainingSubject } from './training-subject';\r\n\r\nexport abstract class OrgUnitDescendants {\r\n orgUnitDescendents: Array<{ orgUnitId: number; descendantOrgUnitId: number; }>;\r\n}\r\n\r\nexport interface ExtOrgUnitPerson {\r\n personId: number;\r\n personName: string;\r\n position: string;\r\n station: string;\r\n supervisor: string;\r\n userId: string;\r\n username: string;\r\n watch: string;\r\n}\r\n\r\nconst apiServerUri = environment.apiUrl;\r\n\r\n@Injectable()\r\nexport class OrgUnitService {\r\n orgUnitFeed = new BehaviorSubject>([]);\r\n\r\n constructor( private http: HttpClient ) { }\r\n\r\n getWatchHierarchy(): Observable> {\r\n return this.http.get(`${apiServerUri}/org-units/watch-map`)\r\n .pipe(\r\n map( resp => { return resp['WatchMap']; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n addWatchToHierarchy( watch: Watch): Observable {\r\n const headers = new HttpHeaders().set('Content-Type', 'application/json');\r\n return this.http.post(`${apiServerUri}/org-units/watch-map`, JSON.stringify( {watch: watch} ), {headers: headers})\r\n .pipe(\r\n map( resp => { return resp['watch']; }),\r\n catchError( err => { return throwError(err); })\r\n )\r\n }\r\n\r\n updateWatchInHierarchy(watchId: number, watch: Watch): Observable {\r\n const headers = new HttpHeaders().set('Content-Type', 'application/json');\r\n return this.http.put(`${apiServerUri}/org-units/watch-map/${watchId}`, JSON.stringify( {watch: watch} ), {headers: headers})\r\n .pipe(\r\n map( resp => { return resp['watch']; }),\r\n catchError( err => { return throwError(err); })\r\n )\r\n }\r\n\r\n deleteWatchFromHierarchy(watchId: number): Observable {\r\n return this.http.delete(`${apiServerUri}/org-units/watch-map/${watchId}`)\r\n .pipe(\r\n catchError(err => { return throwError(err); })\r\n )\r\n }\r\n\r\n getGroupSubjects(): Observable> {\r\n return this.http.get(`${apiServerUri}/org-units/group-curriculum-category`)\r\n .pipe(\r\n map( resp => resp['GroupSubjects']),\r\n catchError( err => throwError(err))\r\n )\r\n }\r\n\r\n addGroupSubject(groupName: string, subjectTitle: string ): Observable {\r\n return this.http.post(\r\n `${apiServerUri}/org-units/group-curriculum-category`,\r\n {groupName: groupName, currCat: subjectTitle}\r\n )\r\n .pipe(\r\n map( resp => resp['GroupSubject']),\r\n catchError( err => throwError(err)\r\n )\r\n );\r\n }\r\n\r\n deleteGroupSubject(groupSubjectId: number): Observable {\r\n return this.http.delete(`${apiServerUri}/org-units/group-curriculum-category/${groupSubjectId}`)\r\n .pipe(\r\n catchError(err => { return throwError(err); })\r\n )\r\n }\r\n\r\n getOrgUnits(): Observable> {\r\n return this.http.get(\r\n `${apiServerUri}/org-units/`\r\n ).pipe(\r\n map( resp => { return resp['orgUnit']; }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getOrgUnit(orgUnitId: number): Observable {\r\n return this.http.get(\r\n `${apiServerUri}/org-unit/${orgUnitId}`\r\n ).pipe(\r\n map(resp => {return resp['orgUnit'] || {}; }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getOrgUnitsDescendants(): Observable> {\r\n return this.http.get(\r\n `${apiServerUri}/org-units/descendants`\r\n ).pipe(\r\n map( resp => { return resp['orgUnitDescendants']; }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n updateOrgUnitParent(orgUnit: OrgUnit): Observable {\r\n const headers = new HttpHeaders().set('Content-Type', 'application/json');\r\n return this.http.put(\r\n `${apiServerUri}/org-units/${orgUnit.id}`,\r\n JSON.stringify({orgUnit: orgUnit}),\r\n // JSON.stringify(orgUnit),\r\n { headers: headers }\r\n ).pipe(\r\n map( resp => { return resp['orgUnit']; }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getExtOrgUnitPeople(extSource: string, extId: string, extOuType: string): Observable> {\r\n let params: HttpParams = new HttpParams();\r\n if (extId) {\r\n params = params.append('ext-ou-id', `${extId}`);\r\n }\r\n if (extSource) {\r\n params = params.append('ext-source', extSource);\r\n }\r\n\r\n return this.http.get(\r\n `${apiServerUri}/org-units/ext-type/${extOuType}/people`,\r\n {params: params}\r\n ).pipe(\r\n map(resp => { return resp['externalOrgUnitPeople']}),\r\n catchError( err => { return throwError(err)})\r\n )\r\n }\r\n\r\n getExtOrgUnitsByType(extOuType: string): Observable> {\r\n let params: HttpParams = new HttpParams();\r\n if (extOuType) {\r\n params = params.append('ext-ou-type', `${extOuType}`);\r\n }\r\n\r\n return this.http.get(\r\n `${apiServerUri}/org-units/external`,\r\n {params: params}\r\n ).pipe(\r\n map(resp => { return resp['orgUnits']}),\r\n catchError( err => { return throwError(err)})\r\n )\r\n }\r\n\r\n getConfigSettingsByKey(configKey: string): Observable> {\r\n let params: HttpParams = new HttpParams();\r\n if (configKey) {\r\n params = params.append('type', configKey);\r\n }\r\n\r\n return this.http.get(\r\n `${apiServerUri}/org-units/config-settings`,\r\n {params: params}\r\n ).pipe(\r\n map(resp => { return resp['configSettings']; }),\r\n catchError( err => { return throwError(err); })\r\n )\r\n }\r\n\r\n addConfigSetting(configSetting: ConfigSetting): Observable {\r\n return this.http.post(\r\n `${apiServerUri}/org-units/config-settings`,\r\n {configSettings: configSetting}\r\n ).pipe(\r\n map( resp => resp['configSetting']),\r\n catchError( err => throwError(err))\r\n );\r\n }\r\n\r\n deleteConfigSetting(configSettingId: number): Observable {\r\n return this.http.delete(\r\n `${apiServerUri}/org-units/config-settings/${configSettingId}`\r\n ).pipe(\r\n catchError( err => throwError(err))\r\n )\r\n }\r\n\r\n getTrainingSubjects(): Observable> {\r\n return this.http.get(`${apiServerUri}/func-area/training-subjects`)\r\n .pipe(\r\n map( resp => resp['trainingSubjects'] || []),\r\n catchError( err => throwError(err) )\r\n );\r\n }\r\n\r\n sortTabs(tabArray: String[], tabData: Array): Array {\r\n return tabData.sort((a, b) => {\r\n const aIdx = tabArray.indexOf(a.title);\r\n const bIdx = tabArray.indexOf(b.title);\r\n console.log(`${a.title} index = ${aIdx}`);\r\n console.log(`${b.title} index = ${bIdx}`);\r\n if (aIdx === -1) { return 1; }\r\n if (bIdx === -1) { return -1 }\r\n return aIdx > bIdx ? 1 : -1;\r\n });\r\n }\r\n}\r\n","export class OrgUnit {\r\n description: string;\r\n id: number;\r\n name: string;\r\n parentOrgUnitDescription: string;\r\n parentOrgUnitId: number;\r\n parentOrgUnitName: string;\r\n externalSource: string;\r\n externalId: string;\r\n externalType: string;\r\n externalActive: boolean;\r\n externalParentId: string;\r\n lastModified: Date;\r\n}\r\n","import { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { OrgUnitService } from '../org-unit.service';\r\nimport { Subject } from 'rxjs';\r\nimport { finalize, map, switchMap, takeUntil} from 'rxjs/operators'\r\nimport { OrgUnit } from '../org-unit';\r\nimport { ConfigSetting } from '../config-setting';\r\nimport { AlertData, AlertLevels, AlertService } from 'app/core/alert.service';\r\n\r\n@Component({\r\n selector: 'ug-skills-matrix-division',\r\n templateUrl: './skills-matrix-division.component.html',\r\n styleUrls: ['./skills-matrix-division.component.css']\r\n})\r\nexport class SkillsMatrixDivisionComponent implements OnInit, OnDestroy {\r\n private ngUnsubscribe: Subject = new Subject();\r\n loadingData = false;\r\n csodDivsList: OrgUnit[] = [];\r\n configSettingsList: ConfigSetting[] = [];\r\n csodDisplayDivsList: OrgUnit[] = [];\r\n updateInProgress = false;\r\n\r\n exceptionData = {\r\n 'IMPORT_DIV_LIST': {\r\n level: AlertLevels.ERROR,\r\n code: 'DIV-001',\r\n message: 'Error retrieving import divisions list'\r\n } as AlertData,\r\n 'IMPORT_DIV_CREATE': {\r\n level: AlertLevels.ERROR,\r\n code: 'DIV-002',\r\n message: 'Error adding import division'\r\n } as AlertData,\r\n 'IMPORT_DIV_DELETE': {\r\n level: AlertLevels.ERROR,\r\n code: 'DIV-003',\r\n message: 'Error deleting import division'\r\n } as AlertData,\r\n };\r\n\r\n constructor(private orgUnitService: OrgUnitService, private alertService: AlertService) { }\r\n\r\n ngOnInit(): void {\r\n this.orgUnitService.getExtOrgUnitsByType('Division')\r\n .pipe(\r\n takeUntil(this.ngUnsubscribe),\r\n switchMap( oud => this.orgUnitService.getConfigSettingsByKey('CSOD-DIVS').pipe(\r\n map(cs => [oud, cs]),\r\n finalize( () => this.loadingData = false)\r\n ))\r\n ).subscribe(\r\n res => {\r\n this.csodDivsList = res[0] as Array;\r\n this.csodDivsList.sort( (a, b) => { return a.externalId < b.externalId ? -1 : 1; })\r\n this.configSettingsList = res[1] as Array;\r\n this.csodDisplayDivsList = this.buildDisplayDivsList();\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.IMPORT_DIV_LIST, err);\r\n }\r\n )\r\n }\r\n\r\n private buildDisplayDivsList(): OrgUnit[] {\r\n return this.csodDivsList.filter(cd => {\r\n return this.configSettingsList.findIndex(cs => cs.configValue === cd.externalId) === -1;\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.ngUnsubscribe.next(true);\r\n this.ngUnsubscribe.complete();\r\n }\r\n\r\n onAddClick(divIndex: number) {\r\n this.updateInProgress = true;\r\n const newConfigSetting =\r\n {\r\n configKey: 'CSOD-DIVS',\r\n configValue: this.csodDisplayDivsList[divIndex].externalId,\r\n id: -1,\r\n description: this.csodDisplayDivsList[divIndex].name,\r\n lastModified: new Date(),\r\n rv: 'dummy'\r\n } as ConfigSetting\r\n\r\n this.orgUnitService.addConfigSetting(newConfigSetting)\r\n .pipe(\r\n takeUntil(this.ngUnsubscribe),\r\n finalize( () => this.updateInProgress = false)\r\n )\r\n .subscribe(\r\n cs => {\r\n this.configSettingsList.push(cs);\r\n this.csodDisplayDivsList = this.buildDisplayDivsList();\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.IMPORT_DIV_CREATE, err);\r\n }\r\n )\r\n }\r\n\r\n onRemoveClick(importDivIndex) {\r\n this.updateInProgress = true;\r\n\r\n this.orgUnitService.deleteConfigSetting(this.configSettingsList[importDivIndex].id)\r\n .pipe(\r\n takeUntil(this.ngUnsubscribe),\r\n finalize( () => this.updateInProgress = false)\r\n )\r\n .subscribe(\r\n () => {\r\n this.configSettingsList.splice(importDivIndex, 1);\r\n this.csodDisplayDivsList = this.buildDisplayDivsList();\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.IMPORT_DIV_DELETE, err);\r\n }\r\n )\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
Division import
\r\n
\r\n
\r\n
Available Divisions
\r\n
    \r\n
  • \r\n {{csodDiv.externalId}}\r\n {{csodDiv.name}}\r\n \r\n
  • \r\n
\r\n
\r\n
\r\n
Imported Divisions
\r\n
    \r\n
  • \r\n {{confSetting.configValue}}\r\n {{confSetting.description}}\r\n \r\n
  • \r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, EventEmitter, OnDestroy, OnInit, Output, ViewEncapsulation } from '@angular/core';\r\nimport { FormArray, FormBuilder, FormControl, FormGroup, Validators, ValidatorFn, AbstractControl } from '@angular/forms';\r\n// import { Watch } from 'app/dashboard/watch';\r\n\r\nimport { Subject , Subscription } from 'rxjs';\r\nimport { finalize, map, switchMap, takeUntil } from 'rxjs/operators';\r\n\r\nimport { AlertService, AlertData, AlertLevels} from '../../core/alert.service';\r\nimport { OrgUnit } from '../org-unit';\r\nimport { OrgUnitService } from '../org-unit.service';\r\nimport { Watch } from '../watch';\r\n\r\n@Component({\r\n encapsulation: ViewEncapsulation.None, // Allow styles on injected elements\r\n selector: 'ug-watch-hierarchy',\r\n templateUrl: './watch-hierarchy.component.html',\r\n styleUrls: ['./watch-hierarchy.component.css']\r\n})\r\nexport class WatchHierarchyComponent implements OnDestroy, OnInit {\r\n\r\n @Output() selectedWatchChange: EventEmitter = new EventEmitter();\r\n\r\n exceptionData = {\r\n 'WATCH_LIST': {\r\n level: AlertLevels.ERROR,\r\n code: 'WHR-001',\r\n message: 'Error retrieving watch hierarchy'\r\n } as AlertData,\r\n 'WATCH_CREATE': {\r\n level: AlertLevels.ERROR,\r\n code: 'WHR-002',\r\n message: 'Error creating watch hierarchy'\r\n } as AlertData,\r\n 'WATCH_UPDATE': {\r\n level: AlertLevels.ERROR,\r\n code: 'WHR-003',\r\n message: 'Error updating watch hierarchy'\r\n } as AlertData,\r\n 'WATCH_DELETE': {\r\n level: AlertLevels.ERROR,\r\n code: 'WHR-004',\r\n message: 'Error deleting watch hierarchy'\r\n } as AlertData,\r\n };\r\n\r\n fgWatches: FormGroup;\r\n watchList: Array = [];\r\n watchOuList: Array = [];\r\n watchOuDisplayList: Array = [];\r\n selectedWatchIndex = -1;\r\n addingWatchInProgress = false;\r\n loadingData = true;\r\n\r\n watchHierarchySubs = new Subscription();\r\n private ngUnsubscribe: Subject = new Subject();\r\n awaitDeleteConfirmation: boolean;\r\n deletingWatchIdx: number;\r\n\r\n constructor(private alertService: AlertService, private fb: FormBuilder, private orgUnitService: OrgUnitService) {\r\n this.createForm();\r\n }\r\n\r\n ngOnInit() {\r\n this.loadingData = true;\r\n this.watchHierarchySubs.add(\r\n this.orgUnitService.getWatchHierarchy()\r\n .pipe(\r\n switchMap( wh => this.orgUnitService.getExtOrgUnitsByType('Watch')\r\n .pipe(\r\n map(wou => [wh, wou]),\r\n finalize( () => this.loadingData = false)\r\n )\r\n )\r\n )\r\n .subscribe(\r\n res => {\r\n const jgs = res[0] as Array;\r\n const wou = res[1] as Array;\r\n\r\n this.watchList = jgs.sort((a, b) => {\r\n return a.WatchName < b.WatchName ? -1 : 1;\r\n });\r\n\r\n this.watchOuList = wou;\r\n this.watchOuDisplayList = this.buildWatchOuList(this.watchOuList);\r\n\r\n this.populateFormInitial();\r\n this.loadingData = false;\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.WATCH_LIST, err);\r\n this.loadingData = false;\r\n }\r\n )\r\n );\r\n\r\n // this.watchHierarchySubs.add(\r\n // this.fgWatches.valueChanges.subscribe(\r\n // (changes) => {\r\n // Object.keys(changes).forEach(k => {\r\n // console.log(`Key:${k}, Value:${changes[k]}`);\r\n // // if (this.perfGridContent.ratings[k].displayType === this.displayType.Percentage) {\r\n // // this.perfGridContent.ratings[k].ratingValue = changes[k] / 100;\r\n // // } else {\r\n // // this.perfGridContent.ratings[k].ratingValue = changes[k];\r\n // // }\r\n // // this.perfGridContent.ratings[k].ratingValue = changes[k];\r\n // // console.log(this.perfGridContent.ratings[k].ratingValue);\r\n // // console.log(this.perfGridContent.totalScore);\r\n // })\r\n // }\r\n // )\r\n // )\r\n }\r\n\r\n private buildWatchOuList(wou: OrgUnit[]): OrgUnit[] {\r\n return wou.filter(w => {\r\n return this.watchList.findIndex(wl => wl.WatchName === w.externalId) === -1;\r\n }\r\n )\r\n .sort((a, b) => {\r\n return a.name < b.name ? -1 : 1;\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.watchHierarchySubs.unsubscribe();\r\n this.ngUnsubscribe.next(true);\r\n this.ngUnsubscribe.complete();\r\n }\r\n\r\n createForm() {\r\n this.fgWatches = this.fb.group(\r\n {\r\n watches: this.fb.array([])\r\n }\r\n );\r\n }\r\n\r\n populateFormInitial() {\r\n this.fgWatches.setControl(\r\n 'watches',\r\n this.fb.array(this.getWatchesControls(this.watchList))\r\n );\r\n }\r\n\r\n formControlValid(controlName: string): boolean {\r\n const c: AbstractControl = this.fgWatches.get(controlName);\r\n return c?.disabled || !(c?.touched && c?.invalid);\r\n }\r\n\r\n getWatchesControls(watchesArray: Array): Array {\r\n const watchesControlArray = [];\r\n watchesArray.forEach(\r\n wd => {\r\n watchesControlArray.push(this.createWatchFG(wd));\r\n // watchesControlArray.push(this.fb.group(\r\n // {\r\n // watchId: wd.WatchId,\r\n // watchName: [wd.WatchName, Validators.required],\r\n // stationId: [wd.StationId],\r\n // stationName: [wd.StationName, Validators.required, ],\r\n // boroughId: [wd.BoroughId],\r\n // boroughName: [wd.BoroughName, Validators.required],\r\n // areaId: [wd.AreaId],\r\n // areaName: [wd.AreaName, Validators.required]\r\n // })\r\n // );\r\n }\r\n );\r\n return watchesControlArray;\r\n }\r\n\r\n private createWatchFG(wd: Watch) {\r\n const newFormGroup = this.fb.group(\r\n {\r\n watchId: wd.WatchId,\r\n watchName: [wd.WatchName, Validators.required],\r\n stationId: [wd.StationId, Validators.required],\r\n stationName: [wd.StationName, Validators.required],\r\n boroughId: [wd.BoroughId],\r\n boroughName: [wd.BoroughName, Validators.required],\r\n areaId: [wd.AreaId],\r\n areaName: [wd.AreaName, Validators.required]\r\n }\r\n );\r\n newFormGroup.get('stationId').valueChanges.pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n ).subscribe(\r\n w => {\r\n console.log(JSON.stringify(w));\r\n const stationIdx = this.watchList.findIndex(wl => {\r\n return wl.StationId === Number(w);\r\n });\r\n const stationName = stationIdx === -1 ? '' : this.watchList[stationIdx].StationName;\r\n newFormGroup.get('stationName').setValue(stationName);\r\n }\r\n );\r\n newFormGroup.get('watchName').valueChanges.pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n ).subscribe(\r\n w => {\r\n console.log(JSON.stringify(w));\r\n const watchIdx = this.watchList.findIndex(wl => wl.WatchName === w);\r\n const watchId = watchIdx === -1 ? '' : this.watchList[watchIdx].WatchId;\r\n newFormGroup.get('watchId').setValue(watchId);\r\n }\r\n );\r\n return newFormGroup;\r\n }\r\n\r\n onWatchClick(listIndex: number) {\r\n this.selectedWatchIndex = listIndex;\r\n this.selectedWatchChange.emit(this.watchList[listIndex]);\r\n }\r\n\r\n onAddWatchClick() {\r\n const dummyWatch = {\r\n WatchId: -1,\r\n WatchName: '',\r\n StationId: -1,\r\n StationName: '',\r\n BoroughId: null,\r\n BoroughName: '',\r\n AreaId: null,\r\n AreaName: ''\r\n } as Watch;\r\n this.fgWatches.addControl(\r\n 'newWatch',\r\n this.createWatchFG(dummyWatch)\r\n // this.fb.group(\r\n // {\r\n // watchId: [-1, Validators.required],\r\n // watchName: ['', Validators.required],\r\n // stationId: [-1, Validators.required],\r\n // stationName: ['', Validators.required],\r\n // boroughId: [null],\r\n // boroughName: ['', Validators.required],\r\n // areaId: [null],\r\n // areaName: ['', Validators.required]\r\n // }\r\n // )\r\n );\r\n this.addingWatchInProgress = true;\r\n }\r\n\r\n onDeleteWatchClick(index: number ) {\r\n this.awaitDeleteConfirmation = true;\r\n this.deletingWatchIdx = index;\r\n }\r\n\r\n onConfirmDeleteClick(deleteWatchId: number) {\r\n this.orgUnitService.deleteWatchFromHierarchy(deleteWatchId)\r\n .pipe(\r\n takeUntil(this.ngUnsubscribe),\r\n finalize( () => {\r\n this.awaitDeleteConfirmation = false;\r\n this.deletingWatchIdx = null;\r\n })\r\n )\r\n .subscribe(\r\n () => {\r\n this.watchList = this.watchList.filter(wl => wl.WatchId !== deleteWatchId);\r\n this.watchOuDisplayList = this.buildWatchOuList(this.watchOuList);\r\n this.populateFormInitial();\r\n },\r\n err => {\r\n this.alertService.createAlert2(\r\n this.exceptionData['WATCH_DELETE'],\r\n err\r\n );\r\n }\r\n )\r\n }\r\n\r\n onCancelDeleteClick(index: number) {\r\n this.awaitDeleteConfirmation = false;\r\n this.deletingWatchIdx = null;\r\n }\r\n onDiscardWatchClick(watchIndex: number) {\r\n const watch = this.fgWatches.get('watches.' + watchIndex);\r\n watch.patchValue(\r\n {\r\n stationId: this.watchList[watchIndex].StationId,\r\n stationName: this.watchList[watchIndex].StationName,\r\n boroughId: this.watchList[watchIndex].BoroughId,\r\n boroughName: this.watchList[watchIndex].BoroughName,\r\n areaId: this.watchList[watchIndex].AreaId,\r\n areaName: this.watchList[watchIndex].AreaName\r\n }\r\n );\r\n watch.markAsPristine();\r\n }\r\n\r\n onUpdateWatchClick(watchIndex: number) {\r\n const watch = this.fgWatches.get('watches.' + watchIndex);\r\n this.orgUnitService.updateWatchInHierarchy(watch.value.id, watch.value).pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n ).subscribe(\r\n wd => {\r\n this.watchList[watchIndex] = wd;\r\n watch.patchValue(\r\n {\r\n stationId: this.watchList[watchIndex].StationId,\r\n stationName: this.watchList[watchIndex].StationName,\r\n boroughId: this.watchList[watchIndex].BoroughId,\r\n boroughName: this.watchList[watchIndex].BoroughName,\r\n areaId: this.watchList[watchIndex].AreaId,\r\n areaName: this.watchList[watchIndex].AreaName\r\n }\r\n );\r\n watch.markAsPristine();\r\n }\r\n );\r\n }\r\n\r\n onNewWatchDoneClick() {\r\n const newWatch = this.fgWatches.get('newWatch').value;\r\n (\r\n newWatch.id ?\r\n this.orgUnitService.updateWatchInHierarchy(newWatch.id, newWatch) :\r\n this.orgUnitService.addWatchToHierarchy(newWatch)\r\n ).pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n ).subscribe(\r\n wd => {\r\n console.log(JSON.stringify(wd));\r\n this.watchList.push(wd);\r\n this.watchOuDisplayList = this.buildWatchOuList(this.watchOuList);\r\n this.populateFormInitial();\r\n this.addingWatchInProgress = false;\r\n this.fgWatches.removeControl('newWatch');\r\n },\r\n err => {\r\n this.alertService.createAlert2(\r\n this.exceptionData[newWatch.id ? 'WATCH_UPDATE' : 'WATCH_CREATE'],\r\n err\r\n );\r\n }\r\n );\r\n\r\n }\r\n\r\n onNewWatchDeleteClick() {\r\n this.fgWatches.removeControl('newWatch');\r\n this.addingWatchInProgress = false;\r\n }\r\n\r\n trackByFn(index: any, item: any) {\r\n return index;\r\n }\r\n\r\n get watchesArray(): Array {\r\n return this.fgWatches.get('watches').value;\r\n }\r\n\r\n get stationList(): Array {\r\n return Array.from(new Set(this.watchList.map(wl => wl.StationName)));\r\n }\r\n\r\n get boroughList(): Array {\r\n return Array.from(new Set(this.watchList.map(wl => wl.BoroughName)));\r\n }\r\n\r\n get areaList(): Array {\r\n return Array.from(new Set(this.watchList.map(wl => wl.AreaName)));\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n Watch hierarchy\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
WatchStation IdStationBoroughArea
\r\n
\r\n \r\n \r\n \r\n
Watch Name is required
\r\n
\r\n
\r\n
\r\n \r\n
Station Id is required
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
Station Name is required
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
Borough Name is required
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
Area Name is required
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
Watch Name is required
\r\n
\r\n
\r\n
\r\n \r\n
Station Id is required
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
Station Name is required
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
Borough Name is required
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
Area Name is required
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n ","import { Component, Input, OnChanges, OnDestroy } from '@angular/core';\r\n\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { OrgUnitService } from '../org-unit/org-unit.service';\r\nimport { PersonService, PersonJobRoles, PersonDirectReports } from '../person/person.service';\r\nimport { JobRoleOrPersonOptions } from '../job-role/job-role.service';\r\n\r\nimport { OrgUnit } from '../org-unit/org-unit';\r\nimport { Person } from '../person/person';\r\n\r\n\r\n@Component({\r\n selector: 'ug-assignment-detail',\r\n templateUrl: './assignment-detail.component.html',\r\n styleUrls: ['./assignment-detail.component.css']\r\n})\r\nexport class AssignmentDetailComponent implements OnChanges, OnDestroy {\r\n\r\n subscriptions = new Subscription();\r\n\r\n @Input() cardTitle = 'My Assignment';\r\n // @Input() personId: number;\r\n @Input() person: Person;\r\n\r\n orgUnit: OrgUnit;\r\n supervisor: Person;\r\n personJobRoles: PersonJobRoles;\r\n personDirectReports: PersonDirectReports;\r\n jobRoleOrPersonOptions = JobRoleOrPersonOptions;\r\n\r\n orgUnitLoading = true;\r\n supervisorLoading = true;\r\n jobRolesLoading = true;\r\n personDirectReportsLoading = true;\r\n\r\n drPersonId: number = null;\r\n drJobRoleId: number = null;\r\n drDisplayName = 'Not selected';\r\n\r\n get listLength() {\r\n return this.isLoading ? 0 : 1;\r\n }\r\n\r\n get isLoading() {\r\n return this.orgUnitLoading || this.supervisorLoading || this.jobRolesLoading;\r\n }\r\n\r\n exceptionData = {\r\n 'ORG_UNIT': {\r\n level: AlertLevels.ERROR,\r\n code: 'ASD-001',\r\n message: 'Error retrieving org unit detail'\r\n } as AlertData,\r\n 'SUPERVISOR': {\r\n level: AlertLevels.ERROR,\r\n code: 'ASD-002',\r\n message: 'Error retrieving supervisor detail'\r\n } as AlertData,\r\n 'PERSON_JOB_ROLES': {\r\n level: AlertLevels.ERROR,\r\n code: 'ASD-003',\r\n message: 'Error retrieving job roles'\r\n } as AlertData,\r\n 'PERSON_DIRECT_REPORTS': {\r\n level: AlertLevels.ERROR,\r\n code: 'ASD-004',\r\n message: 'Error retrieving direct reports'\r\n } as AlertData,\r\n };\r\n\r\n constructor(private alertService: AlertService, private orgUnitService: OrgUnitService, private personService: PersonService) { }\r\n\r\n ngOnChanges() {\r\n if (!this.person) { return; }\r\n if (this.person.orgUnitId) {\r\n this.subscriptions.add(\r\n this.orgUnitService.getOrgUnit(this.person.orgUnitId).subscribe(\r\n (orgUnit: OrgUnit) => {\r\n this.orgUnit = orgUnit;\r\n this.orgUnitLoading = false;\r\n },\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.ORG_UNIT, err);\r\n this.orgUnitLoading = false;\r\n }\r\n )\r\n );\r\n }\r\n\r\n if (this.person.supervisorId) {\r\n this.subscriptions.add(\r\n this.personService.getPersonSummary(this.person.supervisorId).subscribe(\r\n ps => {\r\n this.supervisor = ps[0];\r\n this.supervisorLoading = false;\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.SUPERVISOR, err);\r\n this.supervisorLoading = false;\r\n }\r\n )\r\n );\r\n } else {\r\n this.supervisorLoading = false;\r\n }\r\n\r\n if (this.person.id) {\r\n this.subscriptions.add(\r\n this.personService.getPersonJobRoles(this.person.id).subscribe(\r\n pjr => {\r\n this.personJobRoles = pjr;\r\n this.jobRolesLoading = false;\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.PERSON_JOB_ROLES, err);\r\n this.jobRolesLoading = false;\r\n }\r\n )\r\n );\r\n this.subscriptions.add(\r\n this.personService.getPersonDirectReports(this.person.id).subscribe(\r\n pdr => {\r\n this.personDirectReports = pdr;\r\n this.personDirectReportsLoading = false;\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.PERSON_DIRECT_REPORTS, err);\r\n this.personDirectReportsLoading = false;\r\n }\r\n )\r\n );\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.unsubscribe();\r\n }\r\n\r\n onDirectReportClick(personId: number, jobRoleId: number, displayName: string ) {\r\n this.drPersonId = personId;\r\n this.drJobRoleId = jobRoleId;\r\n this.drDisplayName = displayName;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
{{cardTitle}}
\r\n \r\n
\r\n
\r\n
\r\n
Organisation
\r\n
{{orgUnit?.parentOrgUnitName}}
\r\n
Function
\r\n
{{orgUnit?.name}}
\r\n
Line manager
\r\n
{{supervisor?.displayName}}
{{supervisor?.adUPN}}
\r\n \r\n
Job roles
\r\n
\r\n {{jobRole.jobRoleName}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Direct reports:
\r\n
\r\n
\r\n
Name
\r\n
Role(s)
\r\n
\r\n
\r\n
{{directReport.displayName}}
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{drDisplayName}}
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit, Input, OnDestroy } from '@angular/core';\r\n\r\nimport { DonutRowCardComponent } from '../dashboard/donut-row-card.component';\r\nimport { AuthService } from 'app/core/auth.service';\r\nimport { DashboardService } from 'app/dashboard/dashboard.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { AlertService, AlertData, AlertLevels } from 'app/core/alert.service';\r\n\r\n@Component({\r\n selector: 'ug-curricula-summary',\r\n templateUrl: './curricula-summary.component.html',\r\n styleUrls: ['./curricula-summary.component.css']\r\n})\r\nexport class CurriculaSummaryComponent implements OnInit, OnDestroy {\r\n\r\n curriculaData: any = [];\r\n curriculaSummSubs: Subscription = new Subscription();\r\n loadingData = true;\r\n meId: number;\r\n\r\n exceptionData = {\r\n 'SKILL_MATRIX': {\r\n level: AlertLevels.ERROR,\r\n code: 'CSC-001',\r\n message: 'Error retrieving skill matrix data'\r\n } as AlertData,\r\n }\r\n\r\n constructor(private authService: AuthService, private alertService: AlertService, private dashboardService: DashboardService) { }\r\n\r\n ngOnInit() {\r\n // ['MoC0', 'MoC3', 'MoC6', 'MoC12', 'SAS6', 'SAS12', '42FDS12', 'M+'].forEach(\r\n // c => {\r\n // const complete = Math.random();\r\n // this.curriculaData.push(\r\n // {\r\n // name: c,\r\n // data: [\r\n // {label: 'Incomplete', value: 1 - complete},\r\n // {label: 'Complete', value: complete},\r\n // ]\r\n // }\r\n // )\r\n // }\r\n // )\r\n\r\n this.curriculaSummSubs.add(\r\n this.authService.userDetailSubj.subscribe(\r\n ud => {\r\n if (ud.id) {\r\n if (ud.id !== this.meId) {\r\n this.meId = ud.id\r\n this.curriculaSummSubs.add(\r\n this.dashboardService.getCurriculaCatSumm(this.meId)\r\n // this.dashboardService.getCurriculaCatSumm(2868)\r\n .pipe(\r\n finalize( () => { this.loadingData = false; } )\r\n )\r\n .subscribe(\r\n (cs: any[]) => {\r\n cs.forEach( c => {\r\n const complete = c['complete'] / c['subjectCount']\r\n this.curriculaData.push(\r\n {\r\n name: c['name'],\r\n data: [\r\n {label: 'Incomplete', value: 1 - complete},\r\n {label: 'Complete', value: complete}\r\n ]\r\n }\r\n )\r\n })\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.SKILL_MATRIX, err);\r\n }\r\n )\r\n )\r\n }\r\n }\r\n }\r\n )\r\n )\r\n\r\n if (this.curriculaData.length > 0) {\r\n const overallComplete: number = this.curriculaData\r\n .map(c => {return c.data.filter(d => {return d['label'] === 'Complete'})})\r\n .map(x => x[0].value)\r\n .reduce( (a, b) => a + b, 0) / this.curriculaData.length;\r\n \r\n this.curriculaData.unshift(\r\n {\r\n name: 'All',\r\n data: [\r\n {label: 'Incomplete', value: 1 - overallComplete},\r\n {label: 'Complete', value: overallComplete}\r\n ]\r\n }\r\n )\r\n }\r\n\r\n }\r\n\r\n ngOnDestroy() {\r\n this.curriculaSummSubs.unsubscribe();\r\n }\r\n\r\n}\r\n","
\r\n \r\n
","import { Component, Input, OnChanges, OnDestroy } from '@angular/core';\r\n\r\nimport { Subject } from 'rxjs';\r\n// import { Subscription } from 'rxjs/Subscription';\r\nimport { takeUntil } from 'rxjs/operators';\r\n\r\n// import { ListMessageComponent } from '../core/list-message.component';\r\n// import { ListStatusComponent } from '../controls/list-status.component';\r\n\r\nimport { Notification } from '../person/notification';\r\n\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { PersonService } from '../person/person.service';\r\n\r\n@Component({\r\n selector: 'ug-notification-list',\r\n templateUrl: './notification-list.component.html',\r\n styleUrls: ['./notification-list.component.css']\r\n})\r\nexport class NotificationListComponent implements OnChanges, OnDestroy {\r\n\r\n @Input() cardTitle = 'Notifications';\r\n @Input() personId: number;\r\n isLoading = true;\r\n unreadOnly = true;\r\n notificationList: Array;\r\n\r\n // getNotificationsSubs = new Subscription();\r\n // writeNotificationSubs = new Subscription();\r\n private ngUnsubscribe: Subject = new Subject();\r\n\r\n exceptionData = {\r\n 'GET_NOTIFICATIONS': {\r\n level: AlertLevels.ERROR,\r\n code: 'NOL-001',\r\n message: 'Error retrieving notifications'\r\n } as AlertData,\r\n 'UPDATE_NOTIFICATION': {\r\n level: AlertLevels.ERROR,\r\n code: 'NOL-002',\r\n message: 'Error updating notifications'\r\n } as AlertData,\r\n };\r\n\r\n constructor(private alertService: AlertService, private personService: PersonService) { }\r\n\r\n ngOnChanges() {\r\n if (!this.personId) { return; }\r\n this.isLoading = true;\r\n // this.getNotificationsSubs.unsubscribe(); // TODO: Unsubs\r\n // this.getNotificationsSubs = this.personService.getNotificationsByPersonId(this.personId)\r\n this.personService.getNotificationsByPersonId(this.personId).pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n ).subscribe(\r\n (n) => { this.notificationList = n; this.isLoading = false; },\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.GET_NOTIFICATIONS, err);\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n // this.getNotificationsSubs.unsubscribe();\r\n // this.writeNotificationSubs.unsubscribe();\r\n this.ngUnsubscribe.next(true);\r\n this.ngUnsubscribe.complete();\r\n }\r\n\r\n onNotificationReadClick(notificationIndex: number) {\r\n // this.writeNotificationSubs = this.personService.setNotificationAsRead(this.personId, this.notificationList[notificationIndex])\r\n this.personService.setNotificationAsRead(this.personId, this.notificationList[notificationIndex]).pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n ).subscribe(\r\n (n) => this.notificationList[notificationIndex] = n,\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.UPDATE_NOTIFICATION, err);\r\n }\r\n );\r\n }\r\n\r\n get unreadNotificationCount(): number {\r\n if (!this.notificationList) { return -1; }\r\n return this.notificationList.reduce(\r\n (count, n) => {\r\n return (count + (n.isUnread === true ? 1 : 0));\r\n }, 0);\r\n }\r\n\r\n get listDisplayMessage(): string {\r\n let msg = 'No Notifications';\r\n if (this.unreadOnly === true && this.unreadNotificationCount < 1) {\r\n msg = 'No Unread Notifications';\r\n }\r\n return msg;\r\n }\r\n\r\n get notificationDisplayCount(): number {\r\n let count = -1;\r\n if (this.unreadOnly) {\r\n count = this.unreadNotificationCount;\r\n } else {\r\n count = this.notificationList.length || -1;\r\n }\r\n return count;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n \r\n {{cardTitle}}\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Claim IdDate / TimeDescriptionOriginatorClaim Status
{{notification.claimId}}{{notification.timestamp | date:'yyyy-MM-dd HH:mm:ss'}}{{notification.description}}{{notification.originator}}{{notification.statusText}}\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n\r\n
\r\n","import { Component, Input, OnDestroy, OnInit } from '@angular/core';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';\r\n\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { AlertService, AlertData, AlertLevels } from 'app/core/alert.service';\r\nimport { AuthService } from '../core/auth.service';\r\nimport { Logger, LogLevel } from 'app/core/config.service';\r\nimport { GraphService } from 'app/graph/graph.service';\r\nimport { Person } from './person';\r\nimport { PersonService, PersonVerificationAreas } from 'app/person/person.service';\r\n\r\n@Component({\r\n selector: 'ug-person-detail',\r\n templateUrl: './person-detail.component.html',\r\n styleUrls: ['./person-detail.component.css']\r\n})\r\nexport class PersonDetailComponent implements OnDestroy, OnInit {\r\n @Input() personGUID;\r\n @Input() personUPN;\r\n @Input() cardTitle = 'My Details';\r\n\r\n person: Person = new Person();\r\n personPhotoUrl: SafeResourceUrl;\r\n personPhotoFailure = false;\r\n personVerificationAreas = {} as PersonVerificationAreas;\r\n isLoading = true;\r\n get listLength() {\r\n return this.isLoading ? 0 : 1;\r\n }\r\n\r\n exceptionData = {\r\n 'PERSON_UUID': {\r\n level: AlertLevels.ERROR,\r\n code: 'PDT-001',\r\n message: 'Unable to retrieve user data'\r\n } as AlertData,\r\n 'PERSON_PHOTO': {\r\n level: AlertLevels.WARNING,\r\n code: 'PDT-002',\r\n message: 'Unable to retrieve user photo'\r\n } as AlertData,\r\n 'PERSON_VERIFICATION_AREAS': {\r\n level: AlertLevels.WARNING,\r\n code: 'PDT-003',\r\n message: 'Unable to retrieve user verification areas'\r\n } as AlertData,\r\n };\r\n\r\n private subscriptions = new Subscription();\r\n\r\n constructor(\r\n private alertService: AlertService,\r\n private authService: AuthService,\r\n private graphService: GraphService,\r\n private personService: PersonService,\r\n private sanitizer: DomSanitizer,\r\n ) { }\r\n\r\n ngOnInit() {\r\n // if (!this.personGUID) {\r\n // this.personGUID = this.authService.me.adGUID;\r\n // }\r\n if (!this.personUPN) {\r\n this.personUPN = this.authService.me.adUPN;\r\n }\r\n this.isLoading = true;\r\n this.subscriptions.add(\r\n // this.personService.getPersonByUUID( this.personGUID)\r\n this.personService.getPersonByUPN( this.personUPN)\r\n .subscribe(\r\n (person: Person) => {\r\n this.person = person;\r\n this.authService.userDetailSubj.next(person);\r\n this.isLoading = false;\r\n this.subscriptions.add(\r\n this.personService.getPersonVerificationAreas(this.person.id).subscribe(\r\n (pva: PersonVerificationAreas) => { this.personVerificationAreas = pva; },\r\n (err: HttpErrorResponse) => {\r\n this.alertService.createAlert2(this.exceptionData['PERSON_VERIFICATION_AREAS'], err);\r\n }\r\n )\r\n )\r\n },\r\n (err: HttpErrorResponse) => {\r\n this.alertService.createAlert2(this.exceptionData['PERSON_UUID'], err);\r\n this.isLoading = false;\r\n },\r\n )\r\n );\r\n this.subscriptions.add(\r\n this.graphService.getUserPhoto( this.authService.userGUID)\r\n .subscribe(\r\n (photo) => {\r\n let photoUrl = '';\r\n const photoBlob = new Blob([photo], {type: photo.type});\r\n if (photoBlob.type === 'image/jpeg' || photoBlob.type === 'image/png') {\r\n photoUrl = window.URL.createObjectURL(photoBlob);\r\n this.personPhotoUrl =\r\n this.sanitizer.bypassSecurityTrustResourceUrl(photoUrl);\r\n }\r\n },\r\n (err: HttpErrorResponse) => {\r\n this.personPhotoFailure = true;\r\n this.alertService.createAlert2(this.exceptionData['PERSON_PHOTO'], err);\r\n },\r\n () => Logger('Got Person photo', LogLevel.VERBOSE)\r\n )\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.unsubscribe();\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
{{cardTitle}}
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n

Loading photo...

\r\n
\r\n \r\n \r\n

Photo unavailable

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Given Name
\r\n
{{person.givenName}}
\r\n
Known As
\r\n
{{person.knownAsName}}
\r\n
Family Name
\r\n
{{person.familyName}}
\r\n
Login ID
\r\n
{{person.adUPN}}
\r\n
Business Phone
\r\n
{{person.businessPhone || 'n/a'}}
\r\n
Mobile Phone
\r\n
{{person.mobilePhone || 'n/a'}}
\r\n
Office Location
\r\n
{{person.officeLocation || 'n/a'}}
\r\n
Address
\r\n
\r\n {{person.streetAddress}}
\r\n {{person.city}}
\r\n {{person.state}} {{person.postalCode}}
\r\n {{person.country}}\r\n
\r\n
0\" class=\"col-12 col-md-4\">Verifier for
\r\n
0}\">{{pva.funcAreaName}}
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { PersonService } from './person.service';\r\nimport { AuthService } from 'app/core/auth.service';\r\nimport { SafeResourceUrl } from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'ug-person-extended-detail',\r\n templateUrl: './person-extended-detail.component.html',\r\n styleUrls: ['./person-extended-detail.component.scss']\r\n})\r\nexport class PersonExtendedDetailComponent implements OnInit {\r\n\r\n showObjectives = false;\r\n managerObjectivesComments = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. In sollicitudin libero eu orci cursus aliquam. Integer consectetur turpis eget ante congue, in rutrum massa semper. Morbi sollicitudin turpis vitae enim.'\r\n myObjectivesComments = 'Aliquam ut neque est. Nulla pretium accumsan tortor vitae finibus. Ut vitae rutrum ante. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Nulla lacinia, sapien.'\r\n managerBehavioursComments = 'Quisque eu interdum neque. Donec sollicitudin, ligula vel efficitur porta, mi erat mollis metus, id vulputate turpis eros in lorem. Curabitur iaculis non mi in luctus. Suspendisse potenti. In convallis.'\r\n myBehavioursComments = 'Nam non imperdiet neque. Nunc vitae placerat orci. Aliquam erat volutpat. Donec id quam tempus, elementum tortor nec, varius ipsum. Vivamus facilisis mattis mi, eget feugiat leo sodales at. Ut.'\r\n\r\n constructor(private authService: AuthService, private personService: PersonService ) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n get personName(): string {\r\n return this.authService.me.displayName;\r\n }\r\n\r\n get personPhotoUrl(): SafeResourceUrl {\r\n return this.authService.myPhotoUrl;\r\n }\r\n\r\n get roleName(): string {\r\n return this.authService.me.roleName;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n My Extended Profile\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Name

\r\n
\r\n
\r\n

{{personName}}

\r\n
\r\n
\r\n
\r\n
\r\n

Grade level / Current role

\r\n
\r\n
\r\n

Global HRIS Manager

\r\n

EB7 C.NATIONAL-HUMAN RESOURCES (28072)

\r\n

{{roleName}}

\r\n
\r\n
\r\n
\r\n
\r\n

Performance Record

\r\n

(Last three years performance rating)

\r\n
\r\n
\r\n
\r\n
2019
\r\n
2018
\r\n
2017
\r\n
\r\n
\r\n
4.2
\r\n
5
\r\n
4
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Potential Assessment

\r\n
\r\n
\r\n

Consistent star

\r\n

High growth

\r\n
\r\n
\r\n
\r\n
\r\n

Future Leader / Critical Player

\r\n
\r\n
\r\n

Leader of future with support

\r\n
\r\n
\r\n
\r\n
\r\n

Individual Aspirations and Mobility

\r\n
\r\n
\r\n

Head of XYZABC

\r\n

All regions

\r\n
\r\n
\r\n
\r\n
\r\n

Current Succession Plan (role(s) and timeframes)

\r\n
\r\n
\r\n
\r\n
\r\n

Position

\r\n
\r\n
\r\n

Name

\r\n
\r\n
\r\n

Readiness

\r\n
\r\n
\r\n
\r\n
\r\n

Head of PTA

\r\n
\r\n
\r\n

Kevin M

\r\n
\r\n
\r\n

Ready 2 years

\r\n
\r\n
\r\n
\r\n
\r\n

Director PTA

\r\n
\r\n
\r\n

Olly N

\r\n
\r\n
\r\n

Ready >4 years

\r\n
\r\n
\r\n
\r\n
\r\n

Senior Manager PTA

\r\n
\r\n
\r\n

Andy A

\r\n
\r\n
\r\n

Ready now

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Talent Programs Attended

\r\n
\r\n
\r\n

Ambition 2020

\r\n
\r\n
\r\n
\r\n
\r\n

Leadership Profiling

\r\n
\r\n
\r\n

Chemistry

\r\n
\r\n
\r\n
\r\n
\r\n

Development Needs

\r\n
\r\n
\r\n

High Performance Teams

\r\n
\r\n
\r\n
\r\n
\r\n

Performance review

\r\n
\r\n
\r\n
\r\n
\r\n

Objectives

\r\n
\r\n
\r\n

Rating

\r\n
\r\n
\r\n
\r\n
\r\n

Top priority objective

\r\n
\r\n
\r\n

4

\r\n
\r\n
\r\n
\r\n
\r\n

Secondary objective

\r\n
\r\n
\r\n

4.5

\r\n
\r\n
\r\n
\r\n
\r\n

Final objective

\r\n
\r\n
\r\n

3.5

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Behaviours

\r\n
\r\n
\r\n

Rating

\r\n
\r\n
\r\n
\r\n
\r\n

Top priority behaviour

\r\n
\r\n
\r\n

4

\r\n
\r\n
\r\n
\r\n
\r\n

Secondary behaviour

\r\n
\r\n
\r\n

4.5

\r\n
\r\n
\r\n
\r\n
\r\n

Final behaviour

\r\n
\r\n
\r\n

3.5

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Person\r\n
\r\n
\r\n
\r\n
\r\n

Development Plan

\r\n
\r\n
\r\n

Ambition Program

\r\n
\r\n
\r\n
\r\n
\r\n

Career Highlights

\r\n
\r\n
\r\n

Singapore Secondment - Change Lead APAC

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\nimport { AuthGuard } from 'app/auth.guard';\r\nimport { SecurityRoleGuard } from 'app/core/security-role.guard';\r\n\r\nimport { PersonSecurityRoleComponent } from './person-security-role.component';\r\nimport { SharedInfoListComponent } from '../person/shared-info-list.component';\r\n\r\nimport { RouteSecurityRole } from 'app/core/menus';\r\nimport { CanDeactivateGuard } from 'app/core/can-deactivate.guard';\r\nimport { SecurityRoleComponent } from './security-role.component';\r\nimport { PersonExtendedDetailComponent } from './person-extended-detail.component';\r\nimport { MsalGuard } from '@azure/msal-angular';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'mydata/shared-links/list',\r\n component: SharedInfoListComponent,\r\n canActivate: [MsalGuard, SecurityRoleGuard],\r\n data: {minimumRole: RouteSecurityRole['MY-DATA_SHARED-LINKS']}\r\n }, // TODO: Add extra guard?\r\n {\r\n path: 'mydata/person-extended-detail',\r\n component: PersonExtendedDetailComponent,\r\n canActivate: [MsalGuard, SecurityRoleGuard],\r\n canDeactivate: [CanDeactivateGuard],\r\n data: {minimumRole: RouteSecurityRole['MY-DATA_PROFILE']}\r\n },\r\n {\r\n path: 'user-security-roles',\r\n component: PersonSecurityRoleComponent,\r\n canActivate: [MsalGuard, SecurityRoleGuard],\r\n canDeactivate: [CanDeactivateGuard],\r\n data: {minimumRole: RouteSecurityRole['ADMIN_USER-SECURITY-ROLES']}\r\n },\r\n {\r\n path: 'superuser/security-roles',\r\n component: SecurityRoleComponent,\r\n canActivate: [MsalGuard, SecurityRoleGuard],\r\n data: {minimumRole: RouteSecurityRole['SUPERUSER_SECURITY-ROLES']}\r\n },\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class PersonRoutingModule { }\r\n","import { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup } from '@angular/forms';\r\n\r\nimport { Subscription, Observable, Subject } from 'rxjs';\r\n\r\nimport { AlertService, AlertData, AlertLevels } from 'app/core/alert.service';\r\nimport { AuthService } from 'app/core/auth.service';\r\nimport { PersonService } from './person.service';\r\n\r\nimport { Person } from './person';\r\nimport { SecurityRole } from 'app/core/security-role';\r\n\r\nenum updateStatus {\r\n DIRTY,\r\n DISABLED_ROLE,\r\n DISABLED_SELF,\r\n FAILED_CHANGED,\r\n FAILED_OTHER,\r\n PRISTINE,\r\n SUCCESS\r\n}\r\n\r\n@Component({\r\n selector: 'ug-person-security-role',\r\n templateUrl: './person-security-role.component.html',\r\n styleUrls: ['./person-security-role.component.css']\r\n})\r\n\r\nexport class PersonSecurityRoleComponent implements OnDestroy, OnInit {\r\n\r\n exceptionData = {\r\n 'PEOPLE': {\r\n level: AlertLevels.ERROR,\r\n code: 'PSR-001',\r\n message: 'Unable to retrieve people data'\r\n } as AlertData,\r\n 'PERSON_SECURITY_ROLE': {\r\n level: AlertLevels.ERROR,\r\n code: 'PSR-002',\r\n message: 'Failed to update person security role'\r\n } as AlertData,\r\n 'PERSON_CHANGED': {\r\n level: AlertLevels.WARNING,\r\n code: 'PSR-003',\r\n message: 'Record out of date vs. database. Please try again'\r\n } as AlertData,\r\n }\r\n\r\n statusData: {[updateStatus: number]: {classString: string, tooltip: string, showIndicator: boolean}} = {\r\n [updateStatus.DIRTY]: {\r\n classString: 'fas fa-asterisk fa-lg text-warning',\r\n tooltip: 'Unsaved changes',\r\n showIndicator: true\r\n },\r\n [updateStatus.DISABLED_ROLE]: {\r\n classString: 'fas fa-info-circle fa-lg text-info',\r\n tooltip: 'Your security role prevents amendment of this user',\r\n showIndicator: true\r\n },\r\n [updateStatus.DISABLED_SELF]: {\r\n classString: 'fas fa-info-circle fa-lg text-info',\r\n tooltip: 'You cannot amend your own security role',\r\n showIndicator: true\r\n },\r\n [updateStatus.FAILED_CHANGED]: {\r\n classString: 'fas fa-exclamation-circle fa-lg text-warning',\r\n tooltip: 'Record has changed in database. Try again',\r\n showIndicator: true\r\n },\r\n [updateStatus.FAILED_OTHER]: {\r\n classString: 'fas fa-exclamation-circle fa-lg text-danger',\r\n tooltip: 'Update failed',\r\n showIndicator: true\r\n },\r\n [updateStatus.PRISTINE]: {\r\n classString: '',\r\n tooltip: '',\r\n showIndicator: false\r\n },\r\n [updateStatus.SUCCESS]: {\r\n classString: 'fas fa-check-circle fa-lg text-success',\r\n tooltip: 'Record successfully updated',\r\n showIndicator: true\r\n },\r\n }\r\n\r\n updateStatus = updateStatus;\r\n\r\n filtersEnabled = false;\r\n filtersForm: FormGroup;\r\n userSecurityRoles: Array = [];\r\n personSecurityRole: SecurityRole = new SecurityRole();\r\n psrForm: FormGroup;\r\n\r\n showUnsavedExitWarning = false;\r\n warningModalResponse: Subject = new Subject();\r\n personSecurityRoleSubs = new Subscription();\r\n\r\n constructor(\r\n private alertService: AlertService,\r\n private authService: AuthService,\r\n private fb: FormBuilder,\r\n private personService: PersonService\r\n ) {\r\n this.createForm();\r\n }\r\n\r\n ngOnInit() {\r\n this.personSecurityRoleSubs.add(\r\n this.personService.getPersonList().subscribe(\r\n pl => {\r\n const personList: Array = pl.sort(\r\n (a, b) => {\r\n const lastNameCompare = a.familyName.localeCompare(b.familyName, navigator.language, {sensitivity: 'base'})\r\n return lastNameCompare === 0 ?\r\n a.givenName.localeCompare(b.givenName, navigator.language, {sensitivity: 'base'}) :\r\n lastNameCompare;\r\n }\r\n );\r\n this.psrForm.setControl('personSecurityRoles', this.fb.array(\r\n personList.map(\r\n p => {\r\n const roleTooLow: boolean = (\r\n this.securityRoleIdLookup(p.securityRoleId).securityLevel >\r\n this.securityRoleIdLookup(this.personSecurityRole.id).securityLevel\r\n );\r\n const selfRecord: boolean = p.id === this.authService.me.id;\r\n const roleControlDisabled = roleTooLow || selfRecord;\r\n let controlStatus = updateStatus.PRISTINE;\r\n if (roleTooLow) {\r\n controlStatus = updateStatus.DISABLED_ROLE\r\n } else if (selfRecord) {\r\n controlStatus = updateStatus.DISABLED_SELF\r\n }\r\n return this.fb.group(\r\n {\r\n personId: p.id,\r\n personName: p.displayName,\r\n personUPN: p.adUPN,\r\n personGUID: p.adGUID,\r\n personSecurityRoleId: {\r\n value: p.securityRoleId,\r\n disabled: roleControlDisabled\r\n },\r\n previousSecurityRoleId: p.securityRoleId,\r\n hidePerson: false,\r\n updateStatus: controlStatus,\r\n filterSearch: `${p.adGUID} ${p.displayName} ${p.adUPN}`,\r\n rowVersion: p.rowVersion\r\n }\r\n )\r\n }\r\n )\r\n ));\r\n },\r\n err => this.alertService.createAlert2(this.exceptionData['PEOPLE'], err)\r\n )\r\n );\r\n this.personSecurityRoleSubs.add(\r\n this.authService.personSecurityRoleSubj.subscribe(\r\n (psr: SecurityRole) => {\r\n this.personSecurityRole = psr;\r\n }\r\n )\r\n );\r\n this.personSecurityRoleSubs.add(\r\n this.authService.securityRolesSubj.subscribe(\r\n (sr: Array) => {\r\n this.userSecurityRoles = sr.sort( (a, b) => { return a.securityLevel > b.securityLevel ? 1 : -1});\r\n }\r\n )\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n this.personSecurityRoleSubs.unsubscribe();\r\n }\r\n\r\n canDeactivate(): Observable | boolean {\r\n if (!this.psrForm.dirty) {\r\n return true;\r\n } else {\r\n this.showUnsavedExitWarning = true;\r\n return this.warningModalResponse;\r\n }\r\n }\r\n\r\n getPersonFormGroup(index: number): FormGroup {\r\n return this.psrForm.get(`personSecurityRoles.${index}`) as FormGroup;\r\n }\r\n\r\n get personControlsArray(): Array {\r\n return this.psrForm.get('personSecurityRoles').value;\r\n }\r\n\r\n createForm() {\r\n this.psrForm = this.fb.group( {personSecurityRoles: this.fb.array([])} );\r\n this.filtersForm = this.fb.group( {securityRoleId: this.fb.control(null)} )\r\n }\r\n\r\n securityRoleIdLookup(id: number): SecurityRole {\r\n return this.userSecurityRoles.find( usr => usr.id === id)\r\n }\r\n\r\n onFilterTextChange(filterText: string) {\r\n this.personControlsArray.map( (fp, index) => {\r\n this.getPersonFormGroup(index).get('hidePerson').setValue(\r\n this.getPersonFormGroup(index).value['filterSearch'].toLowerCase().indexOf((filterText || '').toLowerCase()) === -1\r\n )\r\n }\r\n )\r\n }\r\n\r\n hidePersonSecurityRole(index: number): boolean {\r\n return this.filtersEnabled && (\r\n !this.getPersonFormGroup(index).dirty && (this.getPersonFormGroup(index).get('hidePerson').value ||\r\n (\r\n this.filtersForm.get('securityRoleId').value &&\r\n this.getPersonFormGroup(index).getRawValue()['personSecurityRoleId'] !== this.filtersForm.get('securityRoleId').value\r\n ))\r\n );\r\n }\r\n\r\n onUpdatePersonSecurityRole(index: number) {\r\n const personRecord: FormGroup = this.getPersonFormGroup(index);\r\n this.personService.updatePersonSecurityRole(\r\n personRecord.get('personGUID').value, {\r\n id: personRecord.get('personId').value,\r\n securityRoleId: personRecord.get('personSecurityRoleId').value,\r\n rowVersion: personRecord.get('rowVersion').value\r\n } as Person\r\n ).subscribe(\r\n (p: Person) => {\r\n this.getPersonFormGroup(index).patchValue(\r\n {\r\n personSecurityRoleId: p.securityRoleId,\r\n previousSecurityRoleId: p.securityRoleId,\r\n rowVersion: p.rowVersion,\r\n updateStatus: updateStatus.SUCCESS\r\n }\r\n )\r\n this.getPersonFormGroup(index).setErrors({updateFailed: false});\r\n this.getPersonFormGroup(index).markAsPristine();\r\n },\r\n err => {\r\n const errPersonRow: FormGroup = this.getPersonFormGroup(index);\r\n if (err.status === 409) {\r\n if (err.error.person.securityRoleId !== errPersonRow.get('personSecurityRoleId')) {\r\n errPersonRow.patchValue({\r\n personSecurityRoleId: err.error.person.securityRoleId,\r\n previousSecurityRoleId: err.error.person.securityRoleId\r\n });\r\n errPersonRow.get('personSecurityRoleId').setErrors({updateFailed: true});\r\n }\r\n errPersonRow.patchValue(\r\n {\r\n rowVersion: err.error.person.rowVersion,\r\n updateStatus: updateStatus.FAILED_CHANGED\r\n }\r\n );\r\n this.alertService.createAlert2(this.exceptionData.PERSON_CHANGED, err);\r\n } else {\r\n errPersonRow.patchValue({updateStatus: updateStatus.FAILED_OTHER});\r\n errPersonRow.setErrors({updateFailed: true});\r\n this.alertService.createAlert2(this.exceptionData.PERSON_SECURITY_ROLE, err);\r\n }\r\n }\r\n );\r\n }\r\n\r\n onDiscardPersonSecurityRole(index: number) {\r\n this.getPersonFormGroup(index).setErrors({updateFailed: false});\r\n this.getPersonFormGroup(index).patchValue(\r\n {\r\n personSecurityRoleId: this.getPersonFormGroup(index).get('previousSecurityRoleId').value,\r\n updateStatus: updateStatus.PRISTINE\r\n }\r\n );\r\n this.getPersonFormGroup(index).markAsPristine();\r\n }\r\n\r\n resetUnsavedExitWarning() {\r\n this.showUnsavedExitWarning = false;\r\n }\r\n\r\n onSecurityRoleChange(index: number): void {\r\n this.getPersonFormGroup(index).patchValue({updateStatus: updateStatus.DIRTY});\r\n }\r\n\r\n showStatusIcon(index: number): boolean {\r\n const rowFormGroup = this.getPersonFormGroup(index);\r\n let displayStatus = false;\r\n\r\n switch (rowFormGroup.get('updateStatus').value) {\r\n case updateStatus.DIRTY:\r\n case updateStatus.DISABLED_ROLE:\r\n case updateStatus.DISABLED_SELF:\r\n case updateStatus.FAILED_CHANGED:\r\n case updateStatus.FAILED_OTHER:\r\n displayStatus = true;\r\n break;\r\n case updateStatus.SUCCESS:\r\n displayStatus = !rowFormGroup.dirty;\r\n break;\r\n default:\r\n displayStatus = false;\r\n }\r\n return displayStatus;\r\n }\r\n\r\n statusIconClass(index: number): string {\r\n const rowStatus = this.getPersonFormGroup(index).get('updateStatus').value;\r\n return this.statusData[rowStatus].classString;\r\n }\r\n\r\n statusIconTooltip(index: number): string {\r\n const rowStatus = this.getPersonFormGroup(index).get('updateStatus').value;\r\n return this.statusData[rowStatus].tooltip;\r\n }\r\n\r\n toggleFilters() {\r\n this.filtersEnabled = !this.filtersEnabled;\r\n }\r\n\r\n trackByFn(index: any, item: any) {\r\n return index;\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n User Security Roles\r\n Unsaved changes\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
NameUPNSecurity Role
{{person.personName}}{{person.personUPN}}\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, Input, OnChanges } from '@angular/core';\r\n\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { PersonService } from './person.service';\r\n\r\nimport { ApiException } from '../core/api-exception';\r\nimport { Person } from './person';\r\n\r\n@Component({\r\n selector: 'ug-person-summary',\r\n templateUrl: './person-summary.component.html',\r\n styleUrls: ['./person-summary.component.css']\r\n})\r\nexport class PersonSummaryComponent implements OnChanges {\r\n private _id: number;\r\n @Input()\r\n set personId(id: number) {\r\n this._id = id;\r\n }\r\n get personId() {\r\n return this._id;\r\n }\r\n person = new Person();\r\n\r\n exceptionData = {\r\n 'GET_PERSON_SUMM': {\r\n level: AlertLevels.ERROR,\r\n code: 'PRS-001',\r\n message: 'Error retrieving person summary'\r\n } as AlertData,\r\n };\r\n\r\n constructor(private alertService: AlertService, private personService: PersonService) { }\r\n\r\n ngOnChanges() {\r\n console.log('In person summary onInit. personId=' + this.personId);\r\n if (!this.personId) { return; }\r\n this.personService.getPersonSummary(this.personId)\r\n .subscribe(\r\n (person: Person) => this.person = person[0],\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.GET_PERSON_SUMM, err);\r\n },\r\n () => console.log('Got Person by ID data')\r\n );\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
Name
\r\n
{{person.familyGivenName || 'Not Specified'}}
\r\n
Role
\r\n
{{person.roleName || 'Not Specified'}}
\r\n
\r\n
\r\n
","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { ControlsModule } from '../controls/controls.module';\r\nimport { PersonRoutingModule } from './person-routing.module';\r\nimport { PersonService } from './person.service';\r\nimport { PersonDetailComponent } from './person-detail.component';\r\nimport { PersonSummaryComponent } from './person-summary.component';\r\nimport { NotificationListComponent } from './notification-list.component';\r\nimport { SharedInfoListComponent } from './shared-info-list.component';\r\nimport { AssignmentDetailComponent } from './assignment-detail.component';\r\nimport { PersonSecurityRoleComponent } from './person-security-role.component';\r\nimport { SecurityRoleComponent } from './security-role.component';\r\nimport { JobRoleModule } from 'app/job-role/job-role.module';\r\nimport { PersonExtendedDetailComponent } from './person-extended-detail.component';\r\nimport { CurriculaSummaryComponent } from './curricula-summary.component';\r\nimport { DashboardModule } from 'app/dashboard/dashboard.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ControlsModule,\r\n DashboardModule,\r\n ReactiveFormsModule,\r\n PersonRoutingModule,\r\n JobRoleModule\r\n ],\r\n declarations: [\r\n PersonDetailComponent,\r\n PersonSummaryComponent,\r\n NotificationListComponent,\r\n SharedInfoListComponent,\r\n AssignmentDetailComponent,\r\n SecurityRoleComponent,\r\n PersonSecurityRoleComponent,\r\n PersonExtendedDetailComponent,\r\n CurriculaSummaryComponent,\r\n ],\r\n providers: [ PersonService ],\r\n exports: [\r\n PersonDetailComponent,\r\n PersonSummaryComponent,\r\n NotificationListComponent,\r\n SharedInfoListComponent,\r\n AssignmentDetailComponent,\r\n SecurityRoleComponent,\r\n PersonSecurityRoleComponent,\r\n PersonExtendedDetailComponent,\r\n CurriculaSummaryComponent,\r\n ]\r\n})\r\nexport class PersonModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\n\r\nimport { Observable, BehaviorSubject, throwError } from 'rxjs';\r\nimport { catchError, map } from 'rxjs/operators';\r\n\r\n// import { JobRole } from '../job-role/job-role.service';\r\nimport { Notification } from '../person/notification';\r\nimport { Person } from './person';\r\nimport { SecurityRole } from 'app/core/security-role';\r\nimport { SharedInfo } from '../claim/claim.service';\r\n\r\nimport { environment } from 'environments/environment';\r\nimport { ExtOrgUnitPerson } from 'app/org-unit/org-unit.service';\r\nimport { ConfigService } from 'app/core/config.service';\r\n\r\nexport interface PersonJobRoles {\r\n personId: number;\r\n jobRoles: Array<{\r\n jobRoleDescription: string;\r\n jobRoleName: string;\r\n jobRoleId: number;\r\n orgUnitId: number;\r\n orgUnitName: string;\r\n }>;\r\n}\r\n\r\nexport interface PersonVerificationAreas {\r\n personId: number;\r\n verificationAreas: Array<{\r\n funcAreaDescription: string;\r\n funcAreaId: number;\r\n funcAreaName: string;\r\n maxApprovalLevel: number;\r\n }>\r\n}\r\n\r\nexport interface PersonDirectReports {\r\n personId: number;\r\n directReports: Array<{\r\n personId: number;\r\n displayName: string;\r\n jobRoles: Array<{\r\n jobRoleId: number;\r\n jobRoleName: string;\r\n }>;\r\n }>;\r\n}\r\n\r\ninterface PersonJobRolesResponse {\r\n personJobRoles: PersonJobRoles;\r\n}\r\n\r\nconst apiServerUri = environment.apiUrl;\r\n\r\n@Injectable()\r\nexport class PersonService {\r\n\r\n peopleFeed = new BehaviorSubject>([]);\r\n\r\n constructor( private http: HttpClient, private config: ConfigService ) { }\r\n\r\n getPersonList(): Observable> {\r\n return this.http.get(\r\n `${apiServerUri}/people/`\r\n ).pipe(\r\n map( resp => { return resp['person'] || {}; }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getPersonByUPN(upn: string): Observable {\r\n return this.http.get(\r\n `${apiServerUri}/person/${upn}`,\r\n ).pipe(\r\n map( resp => resp['person'] || {}),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getPersonByUUID(uuid: string): Observable {\r\n return this.http.get(\r\n `${apiServerUri}/person/${uuid}`,\r\n ).pipe(\r\n map( resp => resp['person'] || {}),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getPersonById(personId: number): Observable {\r\n return this.http.get(\r\n `${apiServerUri}/person/${personId}`,\r\n ).pipe(\r\n map( resp => {return resp['person'] || {}; }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getPersonSummary(personId: number): Observable {\r\n return this.http.get(\r\n `${apiServerUri}/person/${personId}/summary`,\r\n ).pipe(\r\n map( resp => {return resp['person'] || {}; }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getPersonJobRoles(personId: number): Observable {\r\n return this.http.get(\r\n `${apiServerUri}/person/${personId}/job-roles`,\r\n ).pipe(\r\n map( resp => {\r\n return resp['personJobRoles'] || {};\r\n }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getPersonDirectReports(personId: number): Observable {\r\n let params: HttpParams = new HttpParams();\r\n\r\n if (this.config.excludeExternalInactivePeople) {\r\n params = params.append('excludeExternalInactive', 'true')\r\n }\r\n return this.http.get(\r\n `${apiServerUri}/person/${personId}/direct-reports`,\r\n {params: params}\r\n ).pipe(\r\n map( resp => {\r\n return resp['personDirectReports'] || {};\r\n // return (resp || {}) as PersonDirectReports;\r\n }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getPersonVerificationAreas(personId: number): Observable {\r\n return this.http.get(\r\n `${apiServerUri}/person/${personId}/verifier-for`,\r\n ).pipe(\r\n map( resp => {\r\n return resp['personVerifierFor'] || {};\r\n }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getNotificationsByPersonId(personId: number): Observable> {\r\n return this.http.get(\r\n `${apiServerUri}/person/${personId}/notifications`,\r\n ).pipe(\r\n map( resp => {return resp['notifications'] || {}; }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n setNotificationAsRead(personId: number, notification: Notification): Observable {\r\n return this.http.put(\r\n `${apiServerUri}/person/${personId}/notifications/${notification.id}/read`,\r\n JSON.stringify(notification)\r\n ).pipe(\r\n map( resp => { return resp['notification'] || {}; } ),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getSharedInfoByPersonId(personId: number): Observable> {\r\n return this.http.get>(\r\n `${apiServerUri}/person/${personId}/shared-info`\r\n ).pipe(\r\n map( (resp: Array) => {\r\n return resp['sharedInfoList'] || [] as Array;\r\n }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n deleteSharedInfo(sharedInfoId: number, personId: number): Observable {\r\n return this.http.delete(\r\n `${apiServerUri}/person/${personId}/shared-info/${sharedInfoId}`\r\n ).pipe(\r\n map( resp => { return resp; }),\r\n catchError( err => { return throwError(err); })\r\n );\r\n }\r\n\r\n getPersonSecurityRole(uuid: string): Observable {\r\n return this.http.get<{'securityRole': SecurityRole}>(\r\n `${apiServerUri}/person/${uuid}/security-role`\r\n ).pipe(\r\n map( resp => { return resp.securityRole; }),\r\n catchError( err => { return throwError(err); })\r\n )\r\n }\r\n\r\n updatePersonSecurityRole(uuid: string, person: Person) {\r\n const headers = new HttpHeaders().set('Content-Type', 'application/json');\r\n const updateData = {\r\n updateData: {\r\n id: person.id,\r\n securityRoleId: person.securityRoleId,\r\n rv: person.rowVersion\r\n }\r\n }\r\n return this.http.put(\r\n `${apiServerUri}/person/${uuid}/security-role`,\r\n JSON.stringify(updateData),\r\n { headers: headers }\r\n ).pipe(\r\n map( resp => resp['person']),\r\n catchError( err => throwError(err))\r\n );\r\n }\r\n\r\n getPersonExternalOus(personId: number): Observable {\r\n return this.http.get(`${apiServerUri}/people/${personId}/ext-org-units`).pipe(\r\n map( resp => { return resp['personExternalOrgUnits']}),\r\n catchError( err => throwError(err))\r\n );\r\n }\r\n\r\n getPeopleInExternalOu(extOuType: string, extOus: Array): Observable> {\r\n let params: HttpParams = new HttpParams();\r\n\r\n extOus.forEach(\r\n (eou) => {\r\n params = params.append('extOuId', eou);\r\n }\r\n )\r\n return this.http.get(`${apiServerUri}/people/ext-org-unit/${extOuType}`, {params: params})\r\n .pipe(\r\n map( resp => { return resp['people'] || []}),\r\n catchError( err => { return throwError(err)})\r\n );\r\n }\r\n\r\n}\r\n","export class Person {\r\n adGUID: string;\r\n adUPN: string;\r\n businessPhone: string;\r\n city: string;\r\n country: string;\r\n displayName: string;\r\n familyGivenName: string;\r\n familyName: string;\r\n givenName: string;\r\n id: number;\r\n knownAsName: string;\r\n mobilePhone: string;\r\n officeLocation: string;\r\n orgUnitId: number;\r\n orgUnitName: string;\r\n postalCode: string;\r\n roleName: string;\r\n roleId: number;\r\n rowVersion: string;\r\n securityRoleId: number;\r\n state: string;\r\n streetAddress: string;\r\n supervisorId: number;\r\n supervisorName: string;\r\n externalSource: string;\r\n externalUserId: string;\r\n externalUserName: string;\r\n externalGUID: string;\r\n externalActive: string;\r\n position: string;\r\n watch: string;\r\n watchOfficerOrAbove: boolean;\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\nimport { AlertService, AlertData, AlertLevels } from 'app/core/alert.service';\r\nimport { AuthService } from 'app/core/auth.service';\r\n\r\nimport { SecurityRole } from 'app/core/security-role';\r\n\r\n@Component({\r\n selector: 'ug-security-role',\r\n templateUrl: './security-role.component.html',\r\n styleUrls: ['./security-role.component.css']\r\n})\r\nexport class SecurityRoleComponent implements OnInit {\r\n\r\n exceptionData = {\r\n 'SECURITY_ROLES': {\r\n level: AlertLevels.ERROR,\r\n code: 'SRC-001',\r\n message: 'Unable to retrieve security roles'\r\n } as AlertData,\r\n }\r\n securityRoleList: Array = [];\r\n constructor(private alertService: AlertService, private authService: AuthService) { }\r\n\r\n ngOnInit() {\r\n this.authService.getSecurityRoles().subscribe(\r\n (sr: Array) => this.securityRoleList = sr,\r\n err => this.alertService.createAlert2(this.exceptionData.SECURITY_ROLES, err)\r\n )\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
User Security Roles
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
NameDescriptionSecurity LevelCan ImpersonateMax Impersonation Level
{{role.name}}{{role.description}}{{role.securityLevel}}{{role.canImpersonate}}{{role.maxImpersonationLevel || 'n/a'}}
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\n\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { AuthService } from '../core/auth.service';\r\nimport { ConfigService } from '../core/config.service';\r\nimport { PersonService } from '../person/person.service';\r\nimport { SharedInfo } from '../claim/claim.service';\r\n\r\nimport { Person } from '../person/person';\r\n\r\n@Component({\r\n selector: 'ug-shared-info-list',\r\n templateUrl: './shared-info-list.component.html',\r\n styleUrls: ['./shared-info-list.component.css']\r\n})\r\nexport class SharedInfoListComponent implements OnInit {\r\n\r\n sharedInfoList: Array;\r\n sharedServerUri: string;\r\n personId: number;\r\n buttonStatus = {};\r\n\r\n exceptionData = {\r\n 'SHARED_INFO': {\r\n level: AlertLevels.ERROR,\r\n code: 'SIL-001',\r\n message: 'Error retrieving shared info list'\r\n } as AlertData,\r\n 'SHARED_INFO_DELETE': {\r\n level: AlertLevels.ERROR,\r\n code: 'SIL-002',\r\n message: 'Error deleting shared item'\r\n } as AlertData\r\n };\r\n\r\n constructor(\r\n private alertService: AlertService,\r\n private authService: AuthService,\r\n private configService: ConfigService,\r\n private personService: PersonService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.sharedServerUri = this.configService.shareServerUri;\r\n this.authService.userDetailSubj.subscribe(\r\n (p: Person) => {\r\n if (p.id) {\r\n this.personId = p.id;\r\n this.personService.getSharedInfoByPersonId(p.id).subscribe(\r\n (si: Array) => {\r\n this.sharedInfoList = si;\r\n },\r\n err => this.alertService.createAlert2(this.exceptionData.SHARED_INFO, err)\r\n );\r\n }\r\n }\r\n );\r\n }\r\n\r\n onDeleteClick(sharedInfoId: number) {\r\n this.buttonStatus[sharedInfoId] = {disabled: true};\r\n this.personService.deleteSharedInfo(sharedInfoId, this.personId).subscribe(\r\n rc => {\r\n this.sharedInfoList = this.sharedInfoList.filter(\r\n (element: SharedInfo) => element['publishedClaim'].sharedInfoId !== sharedInfoId\r\n );\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.SHARED_INFO_DELETE, err);\r\n this.buttonStatus[sharedInfoId] = {disabled: false};\r\n },\r\n () => delete this.buttonStatus[sharedInfoId]\r\n );\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
My Shared Links
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
TypeSnapshot unique IDSnapshot timestamp
Published Claims\r\n {{si['publishedClaim'].uniqueId}}\r\n \r\n {{si['publishedClaim'].createTimestamp | date:'medium'}}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n","export class FuncArea {\r\n id: number;\r\n name: string;\r\n description: string;\r\n funcAreaTypeName: string;\r\n parentFuncAreaId: number;\r\n childCount: number;\r\n selected: any;\r\n claimLevelSetId: number;\r\n claimStatusActionSetId: number;\r\n}\r\n","import { Component, EventEmitter, Input, OnDestroy, OnInit, Output } from '@angular/core';\r\nimport { FormArray, FormBuilder, FormControl, FormGroup } from '@angular/forms';\r\n\r\nimport { Observable, Subject, Subscription, throwError } from 'rxjs';\r\nimport { catchError, debounceTime, distinctUntilChanged, switchMap, takeUntil} from 'rxjs/operators';\r\n// import { catchError } from 'rxjs/operators/catchError';\r\n\r\nimport { FuncArea } from './func-area';\r\nimport { Skill } from './skill';\r\n\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { ClaimService } from '../claim/claim.service';\r\nimport { SkillService } from './skill.service';\r\n\r\n\r\n// import 'rxjs/add/operator/debounceTime';\r\n// import 'rxjs/add/operator/distinctUntilChanged';\r\n// import 'rxjs/add/operator/switchMap';\r\n\r\n@Component({\r\n selector: 'ug-job-family-filter',\r\n templateUrl: './job-family-filter.component.html',\r\n styleUrls: ['./job-family-filter.component.css']\r\n})\r\nexport class JobFamilyFilterComponent implements OnDestroy, OnInit {\r\n\r\n testFormArray: FormArray;\r\n testFormGroup: FormGroup;\r\n\r\n parentJobFamily: Array;\r\n skillsValue: Observable>;\r\n childJobFamily = {};\r\n jobFamilyList = {};\r\n jobFamilyTypeList = {};\r\n\r\n parentJobFamilySubs = new Subscription();\r\n childJobFamilySubs = new Subscription();\r\n private ngUnsubscribe: Subject = new Subject();\r\n\r\n get currentFAID() {\r\n return this.parentJobFamily[this.parentJobFamily.length - 1] ? this.parentJobFamily[this.parentJobFamily.length - 1]['id'] : 0;\r\n }\r\n\r\n // @Input()\r\n get skillList() {\r\n return this.skillsValue;\r\n }\r\n\r\n @Output()\r\n skillsChange = new EventEmitter();\r\n\r\n set skillList(val) {\r\n this.skillsValue = val;\r\n this.skillsChange.emit(this.skillsValue);\r\n }\r\n\r\n private jfStream = new Subject();\r\n\r\n selectedJobFamilyIdx: number = -1;\r\n selectedSkill: Skill;\r\n currentJobFamilyId: number;\r\n\r\n exceptionData = {\r\n 'FUNC_AREA': {\r\n level: AlertLevels.ERROR,\r\n code: 'JFF-001',\r\n message: 'Error retrieving functional area'\r\n } as AlertData,\r\n 'CHILD_FUNC_AREAS': {\r\n level: AlertLevels.ERROR,\r\n code: 'JFF-002',\r\n message: 'Error retrieving child functional areas'\r\n } as AlertData,\r\n };\r\n\r\n constructor(\r\n private fb: FormBuilder,\r\n private alertService: AlertService,\r\n private claimService: ClaimService,\r\n private skillService: SkillService\r\n ) {\r\n this.testFormArray = new FormArray([]);\r\n this.testFormGroup = this.fb.group({\r\n testControls: this.testFormArray\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.parentJobFamily = [];\r\n this.parentJobFamilySubs = this.skillService.getFuncArea(0)\r\n .subscribe(\r\n (jobFamilyArray: Array) => {\r\n this.parentJobFamily.push(jobFamilyArray[0]);\r\n this.childJobFamily[0] = [];\r\n this.jobFamilyTypeList[0] = '';\r\n this.testFormArray.push(new FormControl());\r\n this.testFormArray.controls[0].setValue(0);\r\n this.filterJobFamily({parentId: this.parentJobFamily[0].id, discId: 0 });\r\n },\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.FUNC_AREA, err);\r\n },\r\n () => {\r\n this.childJobFamilySubs = this.skillService.getChildFuncAreas(this.parentJobFamily[0].id)\r\n .subscribe (\r\n (cjf: Array) => {\r\n this.childJobFamily[0] = cjf;\r\n this.jobFamilyTypeList[0] = cjf[0].funcAreaTypeName;\r\n },\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.CHILD_FUNC_AREAS, err);\r\n }\r\n );\r\n }\r\n );\r\n this.skillList = this.jfStream.pipe(\r\n debounceTime(300),\r\n distinctUntilChanged(),\r\n switchMap(\r\n ( jf: Object) => this.skillService.getSkills(jf['parentId'], jf['discId'])\r\n ),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n // this.skillList = this.jfStream\r\n // .debounceTime(300)\r\n // .distinctUntilChanged()\r\n // .switchMap(( jf: Object) => this.skillService.getSkills(jf['parentId'], jf['discId']));\r\n }\r\n\r\n ngOnDestroy() {\r\n this.parentJobFamilySubs.unsubscribe();\r\n this.childJobFamilySubs.unsubscribe();\r\n this.ngUnsubscribe.next(true);\r\n this.ngUnsubscribe.complete();\r\n }\r\n\r\n ngOnSelectChange(filterIdx: number) {\r\n console.log('OnSelectChange filterIdx=' + filterIdx);\r\n while (this.testFormArray.length > filterIdx + 1) {\r\n this.testFormArray.removeAt(filterIdx + 1);\r\n this.selectedJobFamilyIdx = -1;\r\n }\r\n this.parentJobFamily.length = filterIdx + 1;\r\n const selectedJobFamilyId = this.testFormArray.controls[filterIdx].value;\r\n this.currentJobFamilyId = selectedJobFamilyId;\r\n console.log(selectedJobFamilyId);\r\n\r\n // this.parentJobFamilySubs.unsubscribe(); // TODO: Unsubs\r\n // this.parentJobFamilySubs = this.skillService.getFuncArea(selectedJobFamilyId)\r\n this.skillService.getFuncArea(selectedJobFamilyId).pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n ).subscribe(\r\n (pjf: Array) => {\r\n // if (pjf[0].funcAreaTypeName !== 'Discipline') {\r\n if (!['Discipline', 'Curriculum Section'].includes(pjf[0].funcAreaTypeName)) {\r\n this.parentJobFamily.push(pjf[0]);\r\n if (!this.jobFamilyTypeList[filterIdx + 1]) {this.jobFamilyTypeList[filterIdx + 1] = ''; }\r\n this.jobFamilyList[pjf[0].id] = pjf[0];\r\n }\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.FUNC_AREA, err);\r\n }\r\n );\r\n\r\n // this.childJobFamilySubs.unsubscribe(); // TODO: Unsubs\r\n // this.childJobFamilySubs = this.skillService.getChildFuncAreas(selectedJobFamilyId)\r\n this.skillService.getChildFuncAreas(selectedJobFamilyId).pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n ).subscribe(\r\n (cjf: Array) => {\r\n if (cjf.length > 0) {\r\n this.childJobFamily[filterIdx + 1] = cjf;\r\n this.filterJobFamily({parentId: cjf[0].parentFuncAreaId, discId: 0 });\r\n this.testFormArray.push(new FormControl);\r\n this.testFormArray.controls[filterIdx + 1].setValue(0);\r\n this.childJobFamily[filterIdx + 1] = cjf;\r\n this.jobFamilyTypeList[filterIdx + 1] = cjf[0].funcAreaTypeName;\r\n cjf.forEach(element => {\r\n this.jobFamilyList[element.id] = element;\r\n });\r\n } else {\r\n this.filterJobFamily({parentId: this.parentJobFamily[filterIdx].id, discId: selectedJobFamilyId });\r\n }\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.CHILD_FUNC_AREAS, err);\r\n }\r\n );\r\n }\r\n\r\n get testFilters(): FormArray {\r\n return this.testFormGroup.get('testFormArray') as FormArray;\r\n }\r\n\r\n filterJobFamily(jf: Object) {\r\n console.log(`Calling jfStream with data ${jf['parentId']} ${jf['discId']}`);\r\n this.jfStream.next(jf);\r\n }\r\n\r\n onJobFamilyClick(idx: number, skill: Skill) {\r\n if (this.selectedJobFamilyIdx === idx) {\r\n this.selectedJobFamilyIdx = -1;\r\n this.selectedSkill = null;\r\n this.claimService.newClaim.skillId = null;\r\n delete this.claimService.createClaimData['skillId'];\r\n // this.currentJobFamilyId = null;\r\n } else {\r\n this.selectedJobFamilyIdx = idx;\r\n this.selectedSkill = skill;\r\n // this.claimService.createClaimData['skillId'] = skill.id;\r\n this.claimService.newClaim.skillId = skill.id;\r\n // this.claimService.claimFormData.set('skillId', skill.id.toString());\r\n this.claimService.createClaimData['skillId'] = skill.id.toString();\r\n this.currentJobFamilyId = skill.funcAreaId;\r\n console.log(this.selectedSkill);\r\n }\r\n }\r\n\r\n onRemoveFilter(filterIdx: number) {\r\n console.log('onRemoveFilter filterIdx=' + filterIdx);\r\n if (filterIdx > 0 ) {\r\n while (this.testFormArray.length > filterIdx) {\r\n this.testFormArray.removeAt(filterIdx);\r\n }\r\n this.testFormArray.controls[filterIdx - 1].setValue(0);\r\n } else {\r\n this.testFormArray.controls[0].setValue(0);\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n
Filter skills by:
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Functional AreaDisciplineSkill Name
{{skill.funcAreaDesc}}{{skill.funcAreaName}}{{skill.name}}
\r\n
\r\n
\r\n Discipline Description: {{selectedSkill?.description || 'Not selected'}}\r\n
\r\n
\r\n\r\n","import { Component, EventEmitter, Input, OnChanges, OnDestroy, OnInit, Output, SimpleChanges } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms'\r\n\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil, finalize } from 'rxjs/operators';\r\n\r\nimport { Skill } from '../skill/skill';\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { SkillService } from '../skill/skill.service';\r\n\r\n@Component({\r\n selector: 'ug-knowledge-select',\r\n templateUrl: './knowledge-select.component.html',\r\n styleUrls: ['./knowledge-select.component.css']\r\n})\r\nexport class KnowledgeSelectComponent implements OnChanges, OnDestroy, OnInit {\r\n\r\n @Input() parentFormGroup: FormGroup;\r\n @Input() funcAreaId: number;\r\n @Input() filter = '';\r\n @Input() selectedCompAttr: Skill;\r\n @Input() ugDisabled = false;\r\n @Output() selectedCompAttrChange = new EventEmitter();\r\n\r\n competencyAttrList: Array;\r\n filteredCompetencyAttrList: Array;\r\n requestInProgress = false;\r\n\r\n exceptionData = {\r\n 'COMP_ATTRS': {\r\n level: AlertLevels.ERROR,\r\n code: 'KNS-001',\r\n message: 'Error retrieving competency attributes'\r\n } as AlertData,\r\n };\r\n\r\n private ngUnsubscribe: Subject = new Subject();\r\n\r\n constructor( private alertService: AlertService, private skillService: SkillService) { }\r\n\r\n ngOnInit() {}\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (!this.funcAreaId) { return; }\r\n\r\n if (!this.competencyAttrList) {\r\n if (!this.requestInProgress) {\r\n this.requestInProgress = true;\r\n this.skillService.getCompetencyAttrs(this.funcAreaId).pipe(\r\n takeUntil(this.ngUnsubscribe),\r\n finalize( () => this.requestInProgress = false )\r\n ).subscribe(\r\n (ca) => {\r\n this.competencyAttrList = ca;\r\n this.filteredCompetencyAttrList = this.competencyAttrList.filter(\r\n el => el.name.toLowerCase().indexOf((this.filter || '').toLowerCase()) !== -1\r\n );\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.COMP_ATTRS, err);\r\n }\r\n );\r\n }\r\n } else {\r\n this.filteredCompetencyAttrList = this.competencyAttrList.filter(\r\n el => el.name.toLowerCase().indexOf((this.filter || '').toLowerCase()) !== -1\r\n );\r\n if (this.selectedCompAttr && !this.filteredCompetencyAttrList.find( el => { return el.id === this.selectedCompAttr.id; })) {\r\n this.selectedCompAttr = new Skill();\r\n }\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.ngUnsubscribe.next(true);\r\n this.ngUnsubscribe.complete();\r\n }\r\n\r\n onCompAttrClick(compAttr: Skill) {\r\n if (!this.ugDisabled) {\r\n if (this.selectedCompAttr && compAttr.id === this.selectedCompAttr.id) {\r\n this.selectedCompAttrChange.emit(new Skill());\r\n } else {\r\n this.selectedCompAttrChange.emit(compAttr);\r\n }\r\n }\r\n }\r\n\r\n showCompAttr(compAttr: Skill) {\r\n return !this.ugDisabled || compAttr.id === this.selectedCompAttr.id;\r\n }\r\n\r\n trackByFn(index: any, item: any) {\r\n return index;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
Competency Attribute Click to select
\r\n
Competency Attribute of an existing claim cannot be changed
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Description
{{compAttr.name}}
\r\n
\r\n
\r\n
\r\n\r\n","import { Component, EventEmitter, Input, OnChanges, OnDestroy, OnInit, Output } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms'\r\n\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\n\r\nimport { FuncArea } from '../skill/func-area';\r\nimport { Skill } from './skill';\r\n\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { SkillService } from './skill.service';\r\n\r\n@Component({\r\n selector: 'ug-skill-list',\r\n templateUrl: './skill-list.component.html',\r\n styleUrls: ['./skill-list.component.css']\r\n})\r\n\r\nexport class SkillListComponent implements OnChanges, OnDestroy, OnInit {\r\n\r\n @Input() parentFormGroup: FormGroup;\r\n @Input() jobFamily: FuncArea;\r\n @Input() selectedSkill: Skill;\r\n @Input() disableSelect = false;\r\n @Input() funcAreaId: number;\r\n @Output() selectedSkillChange = new EventEmitter();\r\n\r\n skillList: Array;\r\n\r\n exceptionData = {\r\n 'SKILLS': {\r\n level: AlertLevels.ERROR,\r\n code: 'SKL-001',\r\n message: 'Error retrieving skills'\r\n } as AlertData,\r\n };\r\n\r\n private ngUnsubscribe: Subject = new Subject();\r\n\r\n constructor( private alertService: AlertService, private skillService: SkillService) { }\r\n\r\n ngOnChanges() {\r\n if (this.selectedSkill) {\r\n this.parentFormGroup.get('competencyDetail').setValue({\r\n id: this.selectedSkill.id,\r\n funcAreaId: this.selectedSkill.funcAreaId,\r\n funcAreaName: this.selectedSkill.funcAreaName,\r\n funcAreaDesc: this.selectedSkill.funcAreaDesc,\r\n funcAreaTypeName: this.selectedSkill.funcAreaTypeName,\r\n name: this.selectedSkill.name,\r\n description: this.selectedSkill.description\r\n });\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.filterSkillList(this.jobFamily);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.ngUnsubscribe.next(true);\r\n this.ngUnsubscribe.complete();\r\n }\r\n\r\n onSkillClick(skill: Skill) {\r\n if (this.disableSelect) { return; }\r\n if (this.selectedSkill && skill.id === this.selectedSkill.id) {\r\n this.selectedSkillChange.emit(new Skill());\r\n } else {\r\n this.selectedSkillChange.emit(skill);\r\n }\r\n }\r\n\r\n showCompAttr(compAttr: Skill) {\r\n return !this.disableSelect || (this.disableSelect && compAttr.id === this.selectedSkill.id);\r\n }\r\n\r\n onJobFamilyChange(jobFamily: FuncArea) {\r\n this.filterSkillList(jobFamily);\r\n }\r\n\r\n filterSkillList(jobFamily: FuncArea) {\r\n let disciplineId = 0;\r\n let parentJobFamilyId = 0;\r\n\r\n if (!jobFamily.parentFuncAreaId) {\r\n parentJobFamilyId = this.funcAreaId;\r\n // } else if (jobFamily.funcAreaTypeName === 'Discipline' ) {\r\n } else if (['Discipline', 'Curriculum Section'].includes(jobFamily.funcAreaTypeName)) {\r\n disciplineId = jobFamily.id;\r\n parentJobFamilyId = jobFamily.parentFuncAreaId;\r\n } else {\r\n parentJobFamilyId = jobFamily.id || 0;\r\n }\r\n\r\n this.skillService.getSkills(parentJobFamilyId, disciplineId).pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n ).subscribe(\r\n (sl: Array) => this.skillList = sl,\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.SKILLS, err);\r\n }\r\n );\r\n }\r\n\r\n trackByFn(index: any, item: any) {\r\n return index;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
Competency Attribute Click to select
\r\n
Competency Attribute of an existing claim cannot be changed
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Functional AreaDisciplineSkill NameSkill Description
{{skill.funcAreaDesc}}{{skill.funcAreaName}}{{skill.name}}{{skill.description}}
\r\n
\r\n
\r\n
\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\nimport { SkillListComponent } from './skill-list.component';\r\nimport { JobFamilyFilterComponent } from './job-family-filter.component';\r\n\r\nimport { AuthGuard } from '../auth.guard';\r\nimport { MsalGuard } from '@azure/msal-angular';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'oldskills',\r\n component: SkillListComponent,\r\n canActivate: [MsalGuard]\r\n },\r\n {\r\n path: 'skills2',\r\n component: JobFamilyFilterComponent,\r\n canActivate: [MsalGuard]\r\n },\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class SkillRoutingModule { }\r\n","export class SkillTrainingSession {\r\n stsEndDate: Date;\r\n stsExtGuid: string;\r\n stsExtId: number;\r\n stsId: number;\r\n stsLastTouchedDt: Date;\r\n stsLocation: string;\r\n stsSkillId: number;\r\n stsStartDate: Date\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { ControlsModule } from '../controls/controls.module';\r\nimport { SkillRoutingModule } from './skill-routing.module';\r\nimport { SkillListComponent } from './skill-list.component';\r\nimport { SkillService } from './skill.service';\r\nimport { JobFamilyFilterComponent } from './job-family-filter.component';\r\nimport { KnowledgeSelectComponent } from './knowledge-select.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n ControlsModule,\r\n SkillRoutingModule\r\n ],\r\n declarations: [SkillListComponent, JobFamilyFilterComponent, KnowledgeSelectComponent],\r\n exports: [SkillListComponent, JobFamilyFilterComponent, KnowledgeSelectComponent],\r\n providers: [SkillService]\r\n})\r\nexport class SkillModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { Observable, BehaviorSubject, throwError } from 'rxjs';\r\nimport { catchError, map } from 'rxjs/operators';\r\n\r\nimport { environment } from 'environments/environment';\r\n\r\nimport { ClaimLevel } from '../claim/claim-level';\r\nimport { FuncArea } from './func-area';\r\nimport { Skill } from './skill';\r\nimport { SkillTrainingSession } from './skill-training-session';\r\n\r\nconst apiServerUri = environment.apiUrl;\r\n\r\n@Injectable()\r\nexport class SkillService {\r\n\r\n disciplineFeed = new BehaviorSubject>([]);\r\n skillsFeeds = {};\r\n\r\n constructor( private http: HttpClient) { }\r\n\r\n getSkillsFeed(parentFuncAreaId: number, disciplineId: number): BehaviorSubject> {\r\n if (!this.skillsFeeds[disciplineId]) {\r\n this.skillsFeeds[disciplineId] = new BehaviorSubject>([]);\r\n this.getSkills(parentFuncAreaId, disciplineId).subscribe(\r\n s => this.skillsFeeds[disciplineId].next(s),\r\n err => { return throwError(err); }\r\n );\r\n }\r\n return this.skillsFeeds[disciplineId];\r\n }\r\n\r\n getSkill(skillId: number): Observable {\r\n return this.http.get(\r\n `${apiServerUri}/skill/${skillId}`\r\n ).pipe(\r\n map( resp => {\r\n return resp['skills'] || {};\r\n }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getSkills(parentFuncAreaId: number, disciplineFuncAreaId: number): Observable> {\r\n return this.http.get(\r\n `${apiServerUri}/skills/${parentFuncAreaId}/${disciplineFuncAreaId}`,\r\n ).pipe(\r\n map( resp => {\r\n return resp['skills'] || {};\r\n }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getFuncArea(funcAreaId: number): Observable> {\r\n return this.http.get(\r\n `${apiServerUri}/func-area/${funcAreaId}`,\r\n ).pipe(\r\n map( resp => {return resp['funcArea'] || {}; }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getCompDimensions(): Observable> {\r\n return this.http.get(\r\n `${apiServerUri}/func-area/top`,\r\n ).pipe(\r\n map( resp => {return resp['funcAreas'] || {}; }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getDisciplines(): Observable> {\r\n return this.http.get(`${apiServerUri}/func-area/disciplines`)\r\n // return this.DResponse\r\n .pipe(\r\n map( resp => {return resp['disciplines'] || []; }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getTopCompDimension(skillId: number): Observable {\r\n return this.http.get(\r\n `${apiServerUri}/func-area/top/skill/${skillId}`,\r\n ).pipe(\r\n map( resp => {return resp['funcArea'] || {}; }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getChildFuncAreas(parentFuncAreaId: number): Observable> {\r\n return this.http.get(\r\n `${apiServerUri}/child-func-areas/${parentFuncAreaId}`,\r\n ).pipe(\r\n map( resp => { return resp['funcAreas'] || {}; }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getLevels(skillId: number): Observable> {\r\n return this.http.get(\r\n `${apiServerUri}/skill/${skillId}/levels`\r\n ).pipe(\r\n map( resp => { return resp['claimsLevels'] || {}; }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getCompetencyAttrs(funcAreaId: number): Observable> {\r\n return this.http.get(\r\n `${apiServerUri}/func-area/${funcAreaId}/competency-attrs`\r\n ).pipe(\r\n map( resp => { return resp['competencyAttrs'] || []; } ),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n listTrainingSessions(skillId: number): Observable> {\r\n return this.http.get(\r\n `${apiServerUri}/dashboard/skill/${skillId}/training_sessions`\r\n ).pipe(\r\n map( resp => {\r\n return resp['skillTrainingSession'] || [];\r\n }),\r\n catchError( err => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n}\r\n","export class Skill {\r\n id: number;\r\n funcAreaId: number;\r\n funcAreaName: string;\r\n funcAreaDesc: string;\r\n level: number;\r\n funcAreaTypeName: string;\r\n name: string;\r\n description: string;\r\n}\r\n","import { Component, EventEmitter, Input, OnChanges, OnDestroy, OnInit, Output, SimpleChanges } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { AuthService } from '../core/auth.service';\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { ClaimService } from '../claim/claim.service';\r\n\r\nimport { Claim } from '../claim/claim';\r\nimport { ClaimAction } from '../claim/claim-action';\r\n\r\n@Component({\r\n selector: 'esqep-action-select-form', // tslint:disable-line:component-selector\r\n templateUrl: './action-select-form.component.html',\r\n styleUrls: ['./action-select-form.component.css']\r\n})\r\nexport class ActionSelectFormComponent implements OnChanges, OnDestroy, OnInit {\r\n\r\n @Input()\r\n parentFormGroup: FormGroup;\r\n @Input()\r\n targetFormGroup: FormGroup;\r\n @Input()\r\n buttonsFormGroup: FormGroup;\r\n @Input()\r\n initiatorType: string;\r\n @Input()\r\n claimStatusId: number;\r\n @Input()\r\n claimId: number;\r\n @Input()\r\n componentIndex: number|string;\r\n\r\n @Output()\r\n actionChange: EventEmitter = new EventEmitter();\r\n @Output()\r\n submit: EventEmitter = new EventEmitter(true);\r\n @Output()\r\n cancel: EventEmitter = new EventEmitter(true);\r\n\r\n claimActionsSubs = new Subscription();\r\n claimActions: Array;\r\n savedClaimStatusId: number;\r\n\r\n get disableOkButton() {\r\n return this.targetFormGroup.dirty || this.targetFormGroup.invalid || this.parentFormGroup.invalid;\r\n }\r\n\r\n get disableCancelButton() {\r\n return this.targetFormGroup.invalid || this.parentFormGroup.pristine;\r\n }\r\n\r\n exceptionData = {\r\n 'CLAIM_ACTIONS': {\r\n level: AlertLevels.ERROR,\r\n code: 'CAC-001',\r\n message: 'Error retrieving claim actions'\r\n } as AlertData,\r\n };\r\n\r\n constructor(\r\n private alertService: AlertService,\r\n private claimService: ClaimService\r\n ) {}\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (!this.claimId || !this.claimStatusId) { return; }\r\n\r\n if (this.claimStatusId === this.savedClaimStatusId) { return; }\r\n this.savedClaimStatusId = this.claimStatusId;\r\n this.claimActionsSubs = this.claimService.getClaimActions(this.claimId, this.initiatorType).subscribe(\r\n (ca: Array) => {\r\n this.claimActions = ca;\r\n this.savedClaimStatusId = this.claimStatusId;\r\n if (this.claimActions.length > 0) {\r\n this.parentFormGroup.enable();\r\n } else {\r\n this.parentFormGroup.disable();\r\n }\r\n },\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.CLAIM_ACTIONS, err);\r\n }\r\n );\r\n }\r\n\r\n ngOnInit() {\r\n this.parentFormGroup.disable();\r\n this.claimActionsSubs.add(\r\n this.targetFormGroup.valueChanges.subscribe(\r\n (changes) => {\r\n if (this.targetFormGroup.pristine && this.targetFormGroup.valid && this.parentFormGroup.disabled) {\r\n // setTimeout( () => {\r\n this.parentFormGroup.get('claimAction').enable();\r\n // this.submissionForm.get('action').updateValueAndValidity(); // Re-evaluate so buttons get correct state?\r\n // }, 0);\r\n } else if ((this.targetFormGroup.dirty || this.targetFormGroup.invalid) && this.parentFormGroup.enabled) {\r\n // setTimeout( () => {\r\n this.parentFormGroup.disable()\r\n this.buttonsFormGroup.disable();\r\n // }, 0)\r\n }\r\n }\r\n )\r\n );\r\n this.claimActionsSubs.add(\r\n this.parentFormGroup.valueChanges.subscribe(\r\n () => {\r\n if (this.parentFormGroup.valid && this.buttonsFormGroup.get('okButton').disabled) {\r\n this.buttonsFormGroup.get('okButton').enable();\r\n }\r\n if (this.parentFormGroup.invalid && this.buttonsFormGroup.get('okButton').enabled) {\r\n this.buttonsFormGroup.get('okButton').disable();\r\n }\r\n if (this.parentFormGroup.dirty && this.buttonsFormGroup.get('cancelButton').disabled) {\r\n this.buttonsFormGroup.get('cancelButton').enable();\r\n }\r\n if (this.parentFormGroup.pristine && this.buttonsFormGroup.get('cancelButton').enabled) {\r\n this.buttonsFormGroup.get('cancelButton').disable();\r\n }\r\n }\r\n )\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n this.claimActionsSubs.unsubscribe();\r\n }\r\n\r\n onActionChange() {\r\n const ca = this.claimActions.find( a => { return a.id === this.parentFormGroup.get('claimAction.id').value});\r\n this.actionChange.emit(ca || new ClaimAction());\r\n }\r\n\r\n onOkClick() {\r\n this.submit.emit(null);\r\n }\r\n\r\n onCancelClick() {\r\n this.cancel.emit(null);\r\n }\r\n\r\n matchClaimAction( ca1: ClaimAction, ca2: ClaimAction) {\r\n return ca1.id === ca2.id;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
Available Actions
\r\n \r\n
0 || parentFormGroup.disabled\" class=\"alert alert-info mb-3\"> No available actions for this claim
\r\n
Save or discard changes to enable actions
\r\n
\r\n \r\n

{{parentFormGroup.get('claimAction.description').value || 'Please select a claim action'}}

\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { FormArray, FormBuilder, FormGroup } from '@angular/forms';\r\n\r\nimport { AlertLevels, AlertService } from 'app/core/alert.service';\r\n\r\n@Component({\r\n selector: 'esqep-attachment-select-form', // tslint:disable-line:component-selector\r\n templateUrl: './attachment-select-form.component.html',\r\n styleUrls: ['./attachment-select-form.component.css']\r\n})\r\nexport class AttachmentSelectFormComponent implements OnInit {\r\n\r\n\r\n @Input() parentFormGroup: FormGroup;\r\n\r\n constructor(private alertService: AlertService, private fb: FormBuilder) {}\r\n\r\n ngOnInit() {\r\n }\r\n\r\n onEviFileChange(event) {\r\n const allowedFileTypes = ['image/jpeg', 'application/pdf', 'image/png'];\r\n // this.logging.newMsg('Evidence file has changed', 'INFO');\r\n if (event.target && allowedFileTypes.indexOf(event.target.files[0].type) === -1) {\r\n this.alertService.createAlert(\r\n AlertLevels.WARNING,\r\n `File of type ${event.target.files[0].type} is not allowed. Please select a different file`,\r\n 'CED-010'\r\n );\r\n } else {\r\n const evidenceArray = this.parentFormGroup.get('evidenceFiles') as FormArray;\r\n evidenceArray.push(this.fb.control(event.target.files[0]));\r\n }\r\n }\r\n\r\n get evidenceFileList(): any {\r\n return this.parentFormGroup.get('evidenceFiles').value;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
Attach Documentary Evidence
\r\n
\r\n
\r\n \r\n \r\n
\r\n Supported file types: PDF, JPG, PNG\r\n
\r\n
\r\n
\r\n
Attached Files
\r\n
    \r\n
  • {{eviFile.name}}
  • \r\n
\r\n
\r\n
","import { Component, EventEmitter, Input, OnChanges, OnDestroy, OnInit, Output } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms'\r\n\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\n\r\nimport { FuncArea } from '../skill/func-area';\r\nimport { Skill } from '../skill/skill';\r\n\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { SkillService } from '../skill/skill.service';\r\n\r\n@Component({\r\n selector: 'esqep-competency-attr-category-list', // tslint:disable-line: component-selector\r\n templateUrl: './competency-attr-category-list.component.html',\r\n styleUrls: ['./competency-attr-category-list.component.css']\r\n})\r\nexport class CompetencyAttrCategoryListComponent implements OnChanges, OnDestroy, OnInit {\r\n\r\n @Input() parentFormGroup: FormGroup;\r\n @Input() jobFamily: FuncArea;\r\n @Input() selectedSkill: Skill;\r\n @Input() disableSelect = false;\r\n @Input() funcAreaId: number;\r\n @Output() selectedSkillChange = new EventEmitter();\r\n\r\n skillList: Array;\r\n\r\n exceptionData = {\r\n 'SKILLS': {\r\n level: AlertLevels.ERROR,\r\n code: 'SKL-001',\r\n message: 'Error retrieving skills'\r\n } as AlertData,\r\n };\r\n\r\n private ngUnsubscribe: Subject = new Subject();\r\n\r\n constructor( private alertService: AlertService, private skillService: SkillService) { }\r\n\r\n ngOnChanges() {\r\n if (this.selectedSkill) {\r\n this.parentFormGroup.get('competencyDetail').setValue({\r\n id: this.selectedSkill.id,\r\n funcAreaId: this.selectedSkill.funcAreaId,\r\n funcAreaName: this.selectedSkill.funcAreaName,\r\n funcAreaDesc: this.selectedSkill.funcAreaDesc,\r\n // level: this.selectedSkill.level,\r\n funcAreaTypeName: this.selectedSkill.funcAreaTypeName,\r\n name: this.selectedSkill.name,\r\n description: this.selectedSkill.description\r\n });\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.filterSkillList(this.jobFamily);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.ngUnsubscribe.next(true);\r\n this.ngUnsubscribe.complete();\r\n }\r\n\r\n onSkillClick(skill: Skill) {\r\n if (this.disableSelect) { return; }\r\n if (this.selectedSkill && skill.id === this.selectedSkill.id) {\r\n // delete this.selectedSkill;\r\n // this.parentFormGroup.get('competencyDetail').reset();\r\n this.selectedSkillChange.emit(new Skill());\r\n } else {\r\n // this.selectedSkill = skill;\r\n // this.parentFormGroup.get('competencyDetail').setValue({\r\n // id: skill.id,\r\n // funcAreaId: skill.funcAreaId,\r\n // funcAreaName: skill.funcAreaName,\r\n // funcAreaDesc: skill.funcAreaDesc,\r\n // // level: skill.level,\r\n // funcAreaTypeName: skill.funcAreaTypeName,\r\n // name: skill.name,\r\n // description: skill.description\r\n // })\r\n // this.parentFormGroup.get('competencyDetail.id').markAsDirty();\r\n this.selectedSkillChange.emit(skill);\r\n }\r\n }\r\n\r\n showCompAttr(compAttr: Skill) {\r\n return !this.disableSelect || (this.disableSelect && compAttr.id === this.selectedSkill.id);\r\n }\r\n\r\n onJobFamilyChange(jobFamily: FuncArea) {\r\n this.filterSkillList(jobFamily);\r\n }\r\n\r\n filterSkillList(jobFamily: FuncArea) {\r\n let disciplineId = 0;\r\n let parentJobFamilyId = 0;\r\n\r\n if (!jobFamily.parentFuncAreaId) {\r\n parentJobFamilyId = this.funcAreaId;\r\n // } else if (jobFamily.funcAreaTypeName === 'Discipline' ) {\r\n } else if (['Discipline', 'Curriculum Section'].includes(jobFamily.funcAreaTypeName) ) {\r\n disciplineId = jobFamily.id;\r\n parentJobFamilyId = jobFamily.parentFuncAreaId;\r\n } else {\r\n parentJobFamilyId = jobFamily.id || 0;\r\n }\r\n\r\n this.skillService.getSkills(parentJobFamilyId, disciplineId).pipe(\r\n takeUntil(this.ngUnsubscribe)\r\n ).subscribe(\r\n (sl: Array) => this.skillList = sl,\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.SKILLS, err);\r\n }\r\n );\r\n }\r\n\r\n trackByFn(index: any, item: any) {\r\n return index;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
Competency Attribute Click to select
\r\n
Competency Attribute of an existing claim cannot be changed
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Functional AreaDisciplineSkill NameSkill Description
{{skill.funcAreaDesc}}{{skill.funcAreaName}}{{skill.name}}{{skill.description}}
\r\n
\r\n
\r\n
\r\n","import { Component, EventEmitter, Input, OnChanges, OnDestroy, OnInit, Output, SimpleChanges } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms'\r\n\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil, finalize } from 'rxjs/operators';\r\n\r\nimport { Skill } from '../skill/skill';\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { SkillService } from '../skill/skill.service';\r\n\r\n@Component({\r\n selector: 'esqep-competency-attr-filter-list', // tslint:disable-line: component-selector\r\n templateUrl: './competency-attr-filter-list.component.html',\r\n styleUrls: ['./competency-attr-filter-list.component.css']\r\n})\r\nexport class CompetencyAttrFilterListComponent implements OnChanges, OnDestroy, OnInit {\r\n\r\n @Input() parentFormGroup: FormGroup;\r\n @Input() funcAreaId: number;\r\n @Input() filter = '';\r\n @Input() selectedCompAttr: Skill;\r\n @Input() ugDisabled = false;\r\n @Output() selectedCompAttrChange = new EventEmitter();\r\n\r\n competencyAttrList: Array;\r\n filteredCompetencyAttrList: Array;\r\n requestInProgress = false;\r\n\r\n exceptionData = {\r\n 'COMP_ATTRS': {\r\n level: AlertLevels.ERROR,\r\n code: 'KNS-001',\r\n message: 'Error retrieving competency attributes'\r\n } as AlertData,\r\n };\r\n\r\n private ngUnsubscribe: Subject = new Subject();\r\n\r\n constructor( private alertService: AlertService, private skillService: SkillService) { }\r\n\r\n ngOnInit() {}\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (!this.funcAreaId) { return; }\r\n\r\n if (!this.competencyAttrList) {\r\n if (!this.requestInProgress) {\r\n this.requestInProgress = true;\r\n this.skillService.getCompetencyAttrs(this.funcAreaId).pipe(\r\n takeUntil(this.ngUnsubscribe),\r\n finalize( () => this.requestInProgress = false )\r\n ).subscribe(\r\n (ca) => {\r\n this.competencyAttrList = ca;\r\n this.filteredCompetencyAttrList = this.competencyAttrList.filter(\r\n el => el.name.toLowerCase().indexOf((this.filter || '').toLowerCase()) !== -1\r\n );\r\n },\r\n err => {\r\n this.alertService.createAlert2(this.exceptionData.COMP_ATTRS, err);\r\n }\r\n );\r\n }\r\n } else {\r\n this.filteredCompetencyAttrList = this.competencyAttrList.filter(\r\n el => el.name.toLowerCase().indexOf((this.filter || '').toLowerCase()) !== -1\r\n );\r\n if (this.selectedCompAttr && !this.filteredCompetencyAttrList.find( el => { return el.id === this.selectedCompAttr.id; })) {\r\n this.selectedCompAttr = new Skill();\r\n }\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.ngUnsubscribe.next(true);\r\n this.ngUnsubscribe.complete();\r\n }\r\n\r\n onCompAttrClick(compAttr: Skill) {\r\n if (!this.ugDisabled) {\r\n if (this.selectedCompAttr && compAttr.id === this.selectedCompAttr.id) {\r\n this.selectedCompAttrChange.emit(new Skill());\r\n } else {\r\n this.selectedCompAttrChange.emit(compAttr);\r\n }\r\n }\r\n }\r\n\r\n showCompAttr(compAttr: Skill) {\r\n return !this.ugDisabled || compAttr.id === this.selectedCompAttr.id;\r\n }\r\n\r\n trackByFn(index: any, item: any) {\r\n return index;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
Competency Attribute Click to select
\r\n
Competency Attribute of an existing claim cannot be changed
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Description
{{compAttr.name}}
\r\n
\r\n
\r\n
\r\n","import { Component, EventEmitter, OnChanges, OnDestroy, OnInit, Input, SimpleChanges, Output } from '@angular/core';\r\nimport { FormGroup, FormArray, FormBuilder } from '@angular/forms';\r\n\r\nimport { Subscription } from 'rxjs';\r\nimport { SkillService } from 'app/skill/skill.service';\r\nimport { FuncArea } from 'app/skill/func-area';\r\nimport { AlertService, AlertData, AlertLevels } from 'app/core/alert.service';\r\nimport { Skill } from 'app/skill/skill';\r\n\r\n@Component({\r\n selector: 'esqep-competency-attr-form', // tslint:disable-line:component-selector\r\n templateUrl: './competency-attr-form.component.html',\r\n styleUrls: ['./competency-attr-form.component.css']\r\n})\r\n\r\nexport class CompetencyAttrFormComponent implements OnChanges, OnDestroy, OnInit {\r\n\r\n @Input() parentFormGroup: FormGroup;\r\n @Input() editMode = false;\r\n @Input() selectedCompDimension: FuncArea;\r\n @Input() selectedJobFamily: FuncArea;\r\n @Input() selectedSkill: Skill;\r\n @Output() selectedSkillChange: EventEmitter = new EventEmitter();\r\n\r\n knowledgeFilter = '';\r\n compDimensionList: Array = [];\r\n competencyAttrSubs = new Subscription();\r\n\r\n exceptionData = {\r\n 'COMP_DIM': {\r\n level: AlertLevels.ERROR,\r\n code: 'CED-001',\r\n message: 'Error retrieving competency dimensions'\r\n } as AlertData,\r\n }\r\n\r\n constructor(private alertService: AlertService, private fb: FormBuilder, private skillService: SkillService) { }\r\n\r\n get compDims(): Array {\r\n return this.parentFormGroup.get('competency.competencyDimensionRadio').value || [];\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n // this.knowledgeFilter = this.selectedSkill.name;\r\n }\r\n\r\n ngOnInit() {\r\n this.competencyAttrSubs.add(\r\n this.skillService.getCompDimensions().subscribe(\r\n (fa: Array) => {\r\n this.compDimensionList = fa;\r\n if (this.compDimensionList.length > 0) {\r\n this.selectedCompDimension = this.compDimensionList[0];\r\n // this.compDimension = this.selectedCompDimension.name;\r\n }\r\n const compDimArray = this.parentFormGroup.get('competency.competencyDimensionRadio') as FormArray;\r\n this.getcompDimensionControls(fa).forEach( cd => compDimArray.push(cd) );\r\n },\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.COMP_DIM, err);\r\n }\r\n )\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n this.competencyAttrSubs.unsubscribe();\r\n }\r\n\r\n getcompDimensionControls(compDimArray: Array): Array {\r\n const compDimControlArray = Array();\r\n compDimArray.forEach(\r\n fa => {\r\n compDimControlArray.push(this.fb.group(fa)\r\n );\r\n }\r\n );\r\n return compDimControlArray;\r\n }\r\n\r\n onDimChange(dim: FuncArea) {\r\n // this.logging.newMsg('Competency dimension changed to:' + dim.name, 'VERBOSE');\r\n this.selectedCompDimension = dim;\r\n }\r\n\r\n onCompAttrChange(compAttr: Skill) {\r\n this.selectedSkillChange.emit(compAttr);\r\n }\r\n\r\n trackByFn(index: any, item: any) {\r\n return index;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
Competency Dimension
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Filter by:
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { Component, Input, OnChanges, OnDestroy, OnInit } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { ClaimEvidence } from '../claim/claim-evidence';\r\n\r\n@Component({\r\n selector: 'esqep-evidence', // tslint:disable-line:component-selector\r\n templateUrl: './evidence.component.html',\r\n styleUrls: ['./evidence.component.css']\r\n})\r\nexport class EvidenceComponent implements OnChanges, OnDestroy, OnInit {\r\n\r\n @Input() parentFormGroup: FormGroup;\r\n @Input() editMode = false;\r\n @Input() evidenceStatementText = '';\r\n @Input() evidenceList: Array = [];\r\n @Input() claimId: number;\r\n @Input() claimantView = true;\r\n\r\n evidenceFetched = false;\r\n\r\n evidenceSubs = new Subscription();\r\n\r\n constructor() { }\r\n\r\n get evidenceFG(): FormGroup {\r\n return (this.parentFormGroup.get('evidence') || new FormGroup({})) as FormGroup;\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n ngOnChanges() {}\r\n\r\n ngOnDestroy() {\r\n this.evidenceSubs.unsubscribe();\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'esqep-form-error-list', // tslint:disable-line: component-selector\r\n templateUrl: './form-error-list.component.html',\r\n styleUrls: ['./form-error-list.component.css']\r\n})\r\nexport class FormErrorListComponent implements OnInit {\r\n\r\n @Input() sourceFormGroup: FormGroup;\r\n\r\n errorLookup: any = {\r\n 'required': 'This field is mandatory',\r\n 'competencyAttrRequired': 'A competency must be selected',\r\n 'competencyAttrBeforeLevel': 'Select a competency before selecting claim level',\r\n 'competencyAttrBeforeVerifier': 'Select a competency before selecting verifier',\r\n 'levelRequired': 'A claim level must be selected',\r\n 'verifierRequired': 'A verifier must be selected',\r\n 'verifierRequiredForLevel': 'A verifier must be specified for this claim level',\r\n 'verifierChangeReasonRequired': 'A reason must be provided for the change in verifier',\r\n 'evidenceStatementRequired': 'An evidence statement must be provided',\r\n 'verifierStatementRequired': 'A statement about the verification action must be supplied',\r\n 'verificationActionRequired': 'A verification action must be selected'\r\n };\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n getErrorList(topFormGroup: FormGroup): Array {\r\n const errorArray: Array = []\r\n this.getErrorMap(topFormGroup, new Map()).forEach( (v, k) => errorArray.push(this.errorLookup[k] || k));\r\n return errorArray;\r\n }\r\n\r\n getErrorMap(topFormControl: FormGroup, errorMap: Map ): any {\r\n if (topFormControl.errors) {\r\n for ( const errorKey of Object.keys(topFormControl.errors)) {\r\n errorMap.set(errorKey, true);\r\n }\r\n }\r\n if (topFormControl.controls) {\r\n for (const control in topFormControl.controls) {\r\n if ( control ) {\r\n errorMap = this.getErrorMap(topFormControl.get(control), errorMap);\r\n }\r\n }\r\n }\r\n return errorMap;\r\n }\r\n}\r\n","
\r\n
\r\n

{{error}}

\r\n
\r\n
\r\n","import { Component, Input, OnChanges, OnDestroy } from '@angular/core';\r\n\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { ClaimService } from '../claim/claim.service';\r\n\r\nimport { Claim } from '../claim/claim';\r\nimport { ClaimHistory } from '../claim/claim-history';\r\n\r\n@Component({\r\n selector: 'esqep-history-table', // tslint:disable-line: component-selector\r\n templateUrl: './history-table.component.html',\r\n styleUrls: ['./history-table.component.css']\r\n})\r\nexport class HistoryTableComponent implements OnChanges, OnDestroy {\r\n\r\n @Input() claimHistoryList: Array;\r\n @Input() claim: Claim;\r\n @Input() claimRowVersion: number; // Force change detection to run after claim update\r\n\r\n exceptionData = {\r\n 'CLAIM_HISTORY': {\r\n level: AlertLevels.ERROR,\r\n code: 'CHI-001',\r\n message: 'Error retrieving claim history'\r\n } as AlertData,\r\n };\r\n\r\n claimHistorySubs = new Subscription();\r\n\r\n constructor(private alertService: AlertService, private claimService: ClaimService) { }\r\n\r\n ngOnChanges() {\r\n if (this.claim && this.claim['id']) {\r\n this.claimHistorySubs = this.claimService.getClaimHistory(this.claim.id)\r\n .subscribe(\r\n (ch) => this.claimHistoryList = ch,\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.CLAIM_HISTORY, err);\r\n }\r\n );\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.claimHistorySubs.unsubscribe();\r\n }\r\n\r\n}\r\n","
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Date / TimeStatusUpdated byActing asComment
{{claimHistory.updateDatetime | date:'medium'}}{{claimHistory.statusText}}{{claimHistory.updatePersonFamilyGivenName}}\r\n {{claimHistory.initiatorType | claimActor }}{{claimHistory.comment}}
\r\n
\r\n","import { Component, EventEmitter, Input, OnChanges, OnDestroy, OnInit, SimpleChanges, Output } from '@angular/core';\r\nimport { FormBuilder, FormControl, FormGroup, ValidatorFn, Validators } from '@angular/forms';\r\n\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { Assessor } from 'app/assessor/assessor';\r\nimport { Claim } from '../claim/claim';\r\nimport { ClaimLevel } from '../claim/claim-level';\r\nimport { Skill } from 'app/skill/skill';\r\n\r\n@Component({\r\n selector: 'esqep-level-and-verifier', // tslint:disable-line:component-selector\r\n templateUrl: './level-and-verifier.component.html',\r\n styleUrls: ['./level-and-verifier.component.css']\r\n})\r\nexport class LevelAndVerifierComponent implements OnChanges, OnDestroy, OnInit {\r\n\r\n @Input() parentFormGroup: FormGroup;\r\n @Input() editMode = false;\r\n @Input() claimantView = true;\r\n @Input() claim: Claim = new Claim();\r\n @Input() competency: Skill = new Skill();\r\n @Input() level: ClaimLevel = new ClaimLevel();\r\n @Input() verifier: Assessor = new Assessor();\r\n @Input() verifierChangeText = '';\r\n\r\n @Output() levelChange: EventEmitter = new EventEmitter();\r\n @Output() verifierChange: EventEmitter = new EventEmitter();\r\n\r\n levelAndVerifierSubs = new Subscription();\r\n\r\n constructor(private fb: FormBuilder) {}\r\n\r\n get levelAndVerifierFG(): FormGroup {\r\n return (this.parentFormGroup.get('levelAndVerifier') || new FormGroup({})) as FormGroup;\r\n }\r\n\r\n get verifierChanged(): boolean {\r\n return this.editMode && this.claim.assessorId && this.levelAndVerifierFG.get('verifier.selectedVerifier').dirty;\r\n }\r\n\r\n get showDiagnostics(): boolean {\r\n return true;\r\n }\r\n\r\n get levelControlStatus(): any {\r\n const lStatus = {disabled: false, reason: ''};\r\n if (this.editMode && this.claimantView && !this.claim.isPrivate) {\r\n lStatus.disabled = true;\r\n lStatus.reason = `Claimant cannot modify level of claim with status: ${this.claim.statusText}`;\r\n }\r\n return lStatus;\r\n }\r\n\r\n get verifierControlStatus(): any {\r\n const vStatus = {disabled: false, reason: ''};\r\n if (this.editMode && this.claimantView && !this.claim.isPrivate) {\r\n vStatus.disabled = true;\r\n vStatus.reason = `Claimant cannot modify verifier of claim with status: ${this.claim.statusText}`;\r\n }\r\n return vStatus;\r\n }\r\n\r\n get selfVerifiedLevel(): boolean {\r\n return (this.levelAndVerifierFG.get('level.selfAssessed') || new FormControl()).value ? true : false;\r\n }\r\n\r\n levelAndVerifierValidator(): ValidatorFn {\r\n return (control: FormControl): {[key: string]: any} => {\r\n if (!control.get('level.selfAssessed').value && !control.get('verifier.assessorId').value) {\r\n return {'verifierRequiredForLevel': true};\r\n }\r\n return null;\r\n }\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {}\r\n\r\n ngOnInit() {}\r\n\r\n ngOnDestroy() {\r\n this.levelAndVerifierSubs.unsubscribe();\r\n }\r\n\r\n onLevelChange(level: ClaimLevel) {\r\n this.levelChange.emit(level);\r\n }\r\n\r\n onVerifierChange(verifier: Assessor) {\r\n this.verifierChange.emit(verifier);\r\n }\r\n\r\n}\r\n","
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n","import { Component, EventEmitter, Input, OnChanges, OnInit, Output } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators} from '@angular/forms';\r\n\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { SkillService } from '../skill/skill.service';\r\n\r\nimport { ClaimLevel } from '../claim/claim-level';\r\n\r\n@Component({\r\n selector: 'esqep-level-select-form', // tslint:disable-line:component-selector\r\n templateUrl: './level-select-form.component.html',\r\n styleUrls: ['./level-select-form.component.css']\r\n})\r\nexport class LevelSelectFormComponent implements OnInit, OnChanges {\r\n\r\n claimLevels = new Array();\r\n cl: ClaimLevel;\r\n amend = false;\r\n savedSkillId: number;\r\n savedClaimLevelSetId: number;\r\n\r\n @Input() parentFormGroup: FormGroup;\r\n @Input() skillId: number;\r\n @Input() level: ClaimLevel;\r\n @Input() controlStatus = {disabled: false, reason: ''};\r\n @Input() editMode = false;\r\n\r\n @Output() levelChange = new EventEmitter();\r\n\r\n exceptionData = {\r\n 'CLAIM_LEVELS': {\r\n level: AlertLevels.ERROR,\r\n code: 'CLC-001',\r\n message: 'Error retrieving claim levels'\r\n } as AlertData,\r\n };\r\n\r\n constructor(private alertService: AlertService, private skillService: SkillService, private fb: FormBuilder) {}\r\n\r\n ngOnInit() {}\r\n\r\n ngOnChanges() {\r\n if (this.controlStatus.disabled && this.parentFormGroup.enabled) {\r\n setTimeout( () => {\r\n this.parentFormGroup.disable();\r\n }, 0);\r\n } else if (!this.controlStatus.disabled && this.parentFormGroup.disabled) {\r\n setTimeout( () => {\r\n this.parentFormGroup.enable();\r\n }, 0);\r\n }\r\n if (!this.skillId) {\r\n this.claimLevels = [];\r\n this.savedClaimLevelSetId = null;\r\n this.savedSkillId = null;\r\n }\r\n if (this.savedSkillId === this.skillId) {\r\n return;\r\n }\r\n\r\n this.savedSkillId = this.skillId;\r\n this.skillService.getLevels(this.skillId).subscribe(\r\n ( claimLevels: Array ) => {\r\n this.claimLevels = claimLevels;\r\n if (this.claimLevels.length > 0) {\r\n if (this.savedClaimLevelSetId !== this.claimLevels[0].claimLevelSetId) {\r\n this.savedClaimLevelSetId = this.claimLevels[0].claimLevelSetId;\r\n const matchedClaimLevel = this.claimLevels.find( cl => cl.id === this.level.id);\r\n this.levelChange.emit(matchedClaimLevel || new ClaimLevel());\r\n }\r\n } else {\r\n this.level = new ClaimLevel();\r\n }\r\n },\r\n ( err ) => {\r\n this.alertService.createAlert2(this.exceptionData.CLAIM_LEVELS, err);\r\n }\r\n );\r\n }\r\n\r\n onClaimLevelChange() {\r\n const newClaimLevel = this.claimLevels.find( cl => { return cl.id === this.parentFormGroup.get('id').value});\r\n this.levelChange.emit(newClaimLevel || new ClaimLevel());\r\n }\r\n\r\n equals(cl1: ClaimLevel, cl2: ClaimLevel) {\r\n return cl1 === cl2;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
Claim Level
\r\n
{{controlStatus.reason}}
\r\n
\r\n \r\n
\r\n \r\n
\r\n
{{level?.description}}
\r\n
\r\n
\r\n
","import { Component, Input, OnChanges, OnDestroy, SimpleChanges } from '@angular/core';\r\nimport { FormControl, FormGroup } from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'esqep-statement-form', // tslint:disable-line:component-selector\r\n templateUrl: './statement-form.component.html',\r\n styleUrls: ['./statement-form.component.css']\r\n})\r\nexport class StatementFormComponent implements OnChanges, OnDestroy {\r\n\r\n @Input()\r\n parentFormGroup: FormGroup;\r\n @Input()\r\n esqepTitle = 'Statement of evidence'\r\n @Input()\r\n esqepDisabled = false;\r\n @Input()\r\n statementText = '';\r\n @Input()\r\n componentIndex: number|string = null;\r\n @Input()\r\n placeholderText = 'Supporting Evidence';\r\n\r\n private eviSubs = new Subscription();\r\n\r\n get statementTextControl(): FormControl {\r\n return this.parentFormGroup.get('statementText') as FormControl;\r\n }\r\n\r\n constructor() {}\r\n\r\n ngOnChanges(changes: SimpleChanges) {}\r\n\r\n ngOnDestroy() {\r\n this.eviSubs.unsubscribe();\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
{{esqepTitle}}\r\n Characters used: ({{(statementTextControl.value || '').length}}/4000)\r\n
\r\n
\r\n \r\n \r\n
{{esqepTitle}} is required
\r\n
\r\n \r\n
\r\n
\r\n\r\n","import { Component, Input, OnChanges } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\nimport { ClaimEvidence } from '../claim/claim-evidence';\r\n\r\n@Component({\r\n selector: 'esqep-statement-list-form', // tslint:disable-line:component-selector\r\n templateUrl: './statement-list-form.component.html',\r\n styleUrls: ['./statement-list-form.component.scss']\r\n})\r\nexport class StatementListFormComponent implements OnChanges {\r\n\r\n @Input() parentFormGroup: FormGroup;\r\n @Input() claimantView = true;\r\n\r\n @Input() claimEvidenceList: Array = [];\r\n\r\n constructor() {}\r\n\r\n ngOnChanges() {}\r\n\r\n speechBubbleClass(claimantView: boolean, initiatorType: string): string {\r\n return this.speechBubbleLeft(claimantView, initiatorType) ? 'esqep-speech-bubble-left' : 'esqep-speech-bubble-right';\r\n }\r\n\r\n speechBubbleLeft(claimantView: boolean, initiatorType: string): boolean {\r\n return (claimantView && initiatorType !== 'C') || (!claimantView && initiatorType === 'C');\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
Discussion
\r\n \r\n
\r\n
\r\n
\r\n
\r\n {{statement?.initiatorType==='A' ? 'Verifier' : 'Claimant' }}:\r\n {{statement?.updatePersonFamilyGivenName}}\r\n {{statement?.updateDatetime | date:'medium'}}\r\n
\r\n
{{statement?.description}}
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnChanges, OnDestroy, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { FormArray, FormBuilder, FormControl, FormGroup, Validators, ValidatorFn, AbstractControl, ValidationErrors } from '@angular/forms';\r\n\r\nimport { AuthService } from '../core/auth.service';\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { AssessorService } from '../assessor/assessor.service';\r\nimport { ClaimService } from '../claim/claim.service';\r\nimport { ConfigService } from '../core/config.service';\r\nimport { NavigationService } from '../core/navigation.service';\r\nimport { SkillService } from '../skill/skill.service';\r\n\r\nimport { Assessor } from '../assessor/assessor';\r\nimport { Claim } from '../claim/claim';\r\nimport { ClaimAction} from '../claim/claim-action';\r\nimport { ClaimEvidence } from '../claim/claim-evidence';\r\nimport { ClaimLevel } from '../claim/claim-level';\r\nimport { FuncArea } from '../skill/func-area';\r\nimport { Skill } from '../skill/skill';\r\n\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { finalize } from 'rxjs/operators';\r\nimport { Tab } from 'bootstrap';\r\n\r\ninterface ClaimData {\r\n claim?: Claim;\r\n action?: ClaimAction;\r\n assessor?: Assessor;\r\n evidence?: any;\r\n level?: ClaimLevel;\r\n skill?: Skill;\r\n initiator?: string;\r\n}\r\n\r\ninterface ControlStatus {\r\n disabled: boolean;\r\n reason: string;\r\n}\r\n\r\n@Component({\r\n selector: 'esqep-submission-detail', // tslint:disable-line:component-selector\r\n templateUrl: './submission-detail.component.html',\r\n styleUrls: ['./submission-detail.component.scss']\r\n})\r\n\r\nexport class SubmissionDetailComponent implements OnChanges, OnDestroy, OnInit {\r\n\r\n exceptionData = {\r\n 'SUCCESS': {\r\n level: AlertLevels.SUCCESS,\r\n code: 'CED-000',\r\n message: 'Successful operation'\r\n } as AlertData,\r\n 'CLAIM_EVIDENCE': {\r\n level: AlertLevels.ERROR,\r\n code: 'CED-002',\r\n message: 'Error retrieving claim evidence'\r\n } as AlertData,\r\n 'TOP_COMP_DIM': {\r\n level: AlertLevels.ERROR,\r\n code: 'CED-003',\r\n message: 'Error retrieving top competency dimensions'\r\n } as AlertData,\r\n 'FUNC_AREA': {\r\n level: AlertLevels.ERROR,\r\n code: 'CED-004',\r\n message: 'Error retrieving functional area'\r\n } as AlertData,\r\n 'SKILL': {\r\n level: AlertLevels.ERROR,\r\n code: 'CED-005',\r\n message: 'Error retrieving skill'\r\n } as AlertData,\r\n 'VERIFIER': {\r\n level: AlertLevels.ERROR,\r\n code: 'CED-006',\r\n message: 'Error retrieving verifier'\r\n } as AlertData,\r\n 'CLAIM': {\r\n level: AlertLevels.ERROR,\r\n code: 'CED-007',\r\n message: 'Error retrieving claim data'\r\n } as AlertData,\r\n 'MODIFY_CLAIM': {\r\n level: AlertLevels.ERROR,\r\n code: 'CED-008',\r\n message: 'Error modifying claim'\r\n } as AlertData,\r\n 'CREATE_CLAIM': {\r\n level: AlertLevels.ERROR,\r\n code: 'CED-009',\r\n message: 'Error creating claim'\r\n } as AlertData,\r\n 'INVALID_FILE_TYPE': {\r\n level: AlertLevels.WARNING,\r\n code: 'CED-010',\r\n message: 'File type not allowed'\r\n } as AlertData,\r\n 'CLAIM_LEVEL': {\r\n level: AlertLevels.ERROR,\r\n code: 'CED-011',\r\n message: 'Error retrieving claim level data'\r\n } as AlertData,\r\n };\r\n\r\n viewData = {\r\n activeTabIndex: 0,\r\n changesSaved: false,\r\n claimantView: true,\r\n editMode: false,\r\n savePending: false,\r\n showClaimHistory: false,\r\n buttons: {\r\n save: {\r\n disabled: () => { return !this.submissionForm.get('detail').valid || this.viewData.savePending; }, // || !this.claim.canEdit(); },\r\n visible: () => { return !this.viewData.editMode; }\r\n },\r\n modify: {\r\n disabled: () => {\r\n return this.submissionForm.get('detail').pristine || this.viewData.savePending || !this.submissionForm.get('detail').valid;\r\n },\r\n visible: () => { return this.viewData.editMode; }\r\n },\r\n discard: {\r\n disabled: () => { return this.submissionForm.get('detail').pristine || this.viewData.savePending; },\r\n visible: () => { return this.viewData.editMode; }\r\n },\r\n create: {\r\n disabled: () => { return this.submissionForm.get('detail').dirty; },\r\n visible: () => { return this.viewData.editMode; }\r\n },\r\n cancel: {\r\n disabled: false,\r\n visible: () => { return !this.viewData.editMode; }\r\n }\r\n },\r\n };\r\n\r\n initiatorType: string;\r\n currentAssessorId: number;\r\n currentEvidenceStatement: string;\r\n existingEvidenceStatementId: number = null;\r\n\r\n compDimension = 'KNOWLEDGE';\r\n selectedCompDimension: FuncArea;\r\n\r\n claim: Claim;\r\n evidenceList: Array = [];\r\n editClaimId: number;\r\n\r\n existingClaimData: ClaimData;\r\n\r\n selectedJobFamily: FuncArea = new FuncArea();\r\n\r\n claimSubs = new Subscription();\r\n claimCreateSubs = new Subscription();\r\n claimEvidenceSubs = new Subscription();\r\n claimLevelSubs = new Subscription();\r\n claimModifySubs = new Subscription();\r\n compDimsSubs = new Subscription();\r\n routeParamsSubs = new Subscription();\r\n skillSubs = new Subscription();\r\n skillFuncAreaSubs = new Subscription();\r\n tabIndexSubs = new Subscription();\r\n topCompDimsSubs = new Subscription();\r\n verifierSubs = new Subscription();\r\n submissionDetailSubs = new Subscription();\r\n\r\n logging: any;\r\n // clog = (msg, lvl) => { this.configService.logging.newMsg( `${this.constructor.name}: ${msg}`, lvl); };\r\n\r\n submissionForm: FormGroup = new FormGroup({});\r\n\r\n get selectedAssessor(): Assessor {\r\n if (this.selectedClaimLevel && this.selectedClaimLevel['selfAssessed']) {\r\n return new Assessor();\r\n } else {\r\n return (this.submissionForm.get('detail.levelAndVerifier.verifier.selectedVerifier') || new FormControl()).value as Assessor;\r\n }\r\n }\r\n\r\n set selectedAssessor(value: Assessor) {\r\n if (this.isEmptyObject(value)) {\r\n this.submissionForm.get('detail.levelAndVerifier.verifier.selectedVerifier').reset()\r\n } else {\r\n if (this.claim.assessorId === value.assessorId) {\r\n this.submissionForm.get('detail.levelAndVerifier.verifier.selectedVerifier').markAsPristine()\r\n } else {\r\n this.submissionForm.get('detail.levelAndVerifier.verifier.selectedVerifier').markAsDirty()\r\n }\r\n this.submissionForm.get('detail.levelAndVerifier.verifier.selectedVerifier').setValue({\r\n assessorId: value.assessorId,\r\n personId: value.personId,\r\n funcAreaId: value.funcAreaId,\r\n funcAreaName: value.funcAreaName,\r\n funcAreaDescription: value.funcAreaDescription,\r\n inOrgBranch: value.inOrgBranch || true, // TODO: Not accurate default\r\n personFamilyGivenName: value.personFamilyGivenName,\r\n orgUnitName: value.orgUnitName || value['name'] || '' // TODO: Change in API\r\n });\r\n }\r\n }\r\n\r\n get verifierChangeText(): string {\r\n return this.submissionForm.get('detail.levelAndVerifier.verifier.verifierChange.statementText').value as string;\r\n }\r\n\r\n get selectedClaimAction(): ClaimAction {\r\n if (this.viewData.claimantView) {\r\n return this.submissionForm.get('action.detail.claimantAction.claimAction').value;\r\n } else {\r\n return this.submissionForm.get('action.detail.verification.claimAction').value;\r\n }\r\n }\r\n\r\n set selectedClaimAction(value: ClaimAction) {\r\n const caFormGroup = this.viewData.claimantView ?\r\n this.submissionForm.get('action.detail.claimantAction.claimAction') :\r\n this.submissionForm.get('action.detail.verification.claimAction');\r\n\r\n if (this.isEmptyObject(value)) {\r\n caFormGroup.reset()\r\n } else {\r\n caFormGroup.setValue(\r\n {\r\n claimStatusActionSetId: value.claimStatusActionSetId,\r\n id: value.id,\r\n name: value.name,\r\n description: value.description,\r\n resultingClaimStatus: value.resultingClaimStatus,\r\n resultingClaimStatusId: value.resultingClaimStatusId,\r\n requireEvidence: value.requireEvidence\r\n }\r\n );\r\n }\r\n }\r\n\r\n get selectedClaimLevel(): ClaimLevel {\r\n return this.submissionForm.get('detail.levelAndVerifier.level').value as ClaimLevel;\r\n }\r\n\r\n set selectedClaimLevel(value: ClaimLevel) {\r\n if (value.id) {\r\n this.submissionForm.get('detail.levelAndVerifier.level').setValue({\r\n id: value.id,\r\n name: value.name,\r\n description: value.description,\r\n levelCode: value.levelCode,\r\n selfAssessed: value.selfAssessed,\r\n claimLevelSetId: value.claimLevelSetId,\r\n sortOrder: value.sortOrder,\r\n approvalLevel: value.approvalLevel\r\n })\r\n } else {\r\n this.submissionForm.get('detail.levelAndVerifier.level').reset();\r\n }\r\n if (value.selfAssessed) {\r\n this.submissionForm.get('detail.levelAndVerifier.verifier.selectedVerifier').reset();\r\n this.submissionForm.get('detail.levelAndVerifier.verifier').disable();\r\n } else {\r\n this.submissionForm.get('detail.levelAndVerifier.verifier').enable();\r\n }\r\n }\r\n\r\n get selectedSkill(): Skill {\r\n return this.submissionForm.get('detail.competency.competencyDetail').value;\r\n }\r\n\r\n set selectedSkill(value: Skill) {\r\n if (value.id) {\r\n this.submissionForm.get('detail.competency.competencyDetail').setValue({\r\n id: value.id,\r\n funcAreaId: value.funcAreaId,\r\n funcAreaName: value.funcAreaName,\r\n funcAreaDesc: value.funcAreaDesc,\r\n funcAreaTypeName: value.funcAreaTypeName,\r\n name: value.name,\r\n description: value.description\r\n })\r\n if (this.claim.skillId === value.id) {\r\n this.submissionForm.get('detail.competency.competencyDetail').markAsPristine()\r\n } else {\r\n this.submissionForm.get('detail.competency.competencyDetail').markAsDirty()\r\n }\r\n } else {\r\n this.submissionForm.get('detail.competency.competencyDetail').reset()\r\n this.submissionForm.get('detail.levelAndVerifier.level').reset();\r\n this.submissionForm.get('detail.levelAndVerifier.verifier.selectedVerifier').reset();\r\n }\r\n }\r\n\r\n get evidenceText(): string {\r\n return this.submissionForm.get('detail.evidence.statementText').value;\r\n }\r\n\r\n set evidenceText(value: string) {\r\n this.submissionForm.get('detail.evidence.statementText').setValue(value);\r\n }\r\n\r\n get claimantAction(): ClaimAction {\r\n return this.submissionForm.get('action.detail.claimantAction.claimAction').value as ClaimAction;\r\n }\r\n\r\n set claimantAction(value: ClaimAction) {\r\n if (value.id) {\r\n this.submissionForm.get('action.detail.claimantAction.claimAction').setValue(value);\r\n } else {\r\n this.submissionForm.get('action.detail.claimantAction.claimAction').reset();\r\n }\r\n }\r\n\r\n get verifierAction(): ClaimAction {\r\n return this.submissionForm.get('action.detail.verification.claimAction').value as ClaimAction;\r\n }\r\n\r\n set verifierAction(value: ClaimAction) {\r\n if (value.id) {\r\n this.submissionForm.get('action.detail.verification.claimAction').setValue(value);\r\n } else {\r\n this.submissionForm.get('action.detail.verification.claimAction').reset();\r\n }\r\n }\r\n\r\n get verifierStatementValid(): boolean {\r\n return this.submissionForm.get('action.detail.verification.statement.statementText').valid;\r\n }\r\n\r\n get detailFormGroup(): FormGroup {\r\n return this.submissionForm.get('detail') as FormGroup;\r\n }\r\n\r\n constructor(\r\n public authService: AuthService,\r\n private alertService: AlertService,\r\n private assessorService: AssessorService,\r\n public claimService: ClaimService,\r\n private configService: ConfigService,\r\n private fb: FormBuilder,\r\n public navigationService: NavigationService,\r\n private skillService: SkillService,\r\n private route: ActivatedRoute,\r\n private router: Router\r\n ) {\r\n this.logging = this.configService.logging;\r\n if (this.route.snapshot.url[1].path === 'new') {\r\n this.logging.newMsg('New claim', 'VERBOSE');\r\n this.viewData.editMode = false;\r\n } else {\r\n this.logging.newMsg('Edit claim', 'VERBOSE');\r\n this.viewData.editMode = true;\r\n }\r\n this.createForm();\r\n this.submissionDetailSubs.add(\r\n this.authService.userDetailSubj.subscribe(\r\n ud => {\r\n if (ud.id) {\r\n this.submissionForm.get('detail.claimant.id').setValue(ud.id);\r\n }\r\n }\r\n )\r\n )\r\n }\r\n\r\n ngOnInit() {\r\n this.tabIndexSubs = this.navigationService.tabIndex.subscribe(\r\n ti => {\r\n // $(`#claim-edit-tabs li:eq(${ti}) a`).tab('show');\r\n const claimEditTab = new Tab(document.getElementsByClassName(`#claim-edit-tabs li:eq(${ti}) a`)[0]);\r\n claimEditTab.show();\r\n }\r\n );\r\n this.tabClick(0);\r\n\r\n this.claimService.eviFiles = [];\r\n this.existingClaimData = {};\r\n\r\n if ( this.viewData.editMode === false ) {\r\n this.viewData.claimantView = true;\r\n this.claim = new Claim();\r\n this.submissionForm.get('detail.claimant.id').setValue(this.authService.me.id);\r\n } else {\r\n this.claim = new Claim();\r\n this.editClaimId = parseInt(this.route.snapshot.url[1].path, 10);\r\n this.initiatorType = this.route.snapshot.url[2].path;\r\n if (this.initiatorType === 'assessor') {\r\n this.viewData.claimantView = false;\r\n } else {\r\n this.viewData.claimantView = true;\r\n }\r\n this.logging.newMsg('Initiator Type:' + this.initiatorType, 'VERBOSE');\r\n this.claimSubs = this.claimService.getClaim(this.editClaimId)\r\n .subscribe(\r\n (c: Claim) => {\r\n this.existingClaimData.claim = c;\r\n this.claim = Object.assign(this.claim, c);\r\n this.selectedAssessor.assessorId = this.claim.assessorId;\r\n this.selectedClaimLevel.id = this.claim.claimLevelId;\r\n this.submissionForm.get('detail.claimant.id').setValue(c.claimantId);\r\n this.getClaimEvidence(c);\r\n this.topCompDimsSubs = this.skillService.getTopCompDimension(c.skillId).subscribe(\r\n (f: FuncArea) => {\r\n this.compDimension = f.name;\r\n this.selectedCompDimension = f;\r\n },\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.TOP_COMP_DIM, err);\r\n }\r\n )\r\n this.skillSubs = this.skillService.getSkill(c.skillId).subscribe(\r\n (s: Skill) => {\r\n this.existingClaimData.skill = s[0];\r\n this.selectedSkill = s[0];\r\n this.selectedJobFamily.id = s[0].funcAreaId;\r\n this.skillFuncAreaSubs = this.skillService.getFuncArea(this.selectedSkill.funcAreaId).subscribe(\r\n (f: Array) => { this.selectedJobFamily = f[0]; },\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.FUNC_AREA, err);\r\n },\r\n );\r\n },\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.SKILL, err);\r\n }\r\n )\r\n if (c.assessorId) {\r\n this.verifierSubs = this.assessorService.getAssessor(c.assessorId).subscribe(\r\n (a: Assessor) => {\r\n this.existingClaimData.assessor = a[0];\r\n this.selectedAssessor = a[0];\r\n this.currentAssessorId = a[0].assessorId;\r\n },\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.VERIFIER, err);\r\n },\r\n );\r\n }\r\n if (c.claimLevelId) {\r\n this.claimLevelSubs = this.claimService.getClaimLevel(c.claimLevelId).subscribe(\r\n (cl: ClaimLevel) => {\r\n this.existingClaimData.level = cl;\r\n this.selectedClaimLevel = cl;\r\n },\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.CLAIM_LEVEL, err);\r\n },\r\n );\r\n }\r\n },\r\n (err: any) => {\r\n this.alertService.createAlert2(this.exceptionData.CLAIM, err);\r\n }\r\n );\r\n }\r\n\r\n if (this.viewData.claimantView) {\r\n this.submissionForm.get('action.detail.verification').disable();\r\n this.submissionForm.get('action.detail.claimantAction').enable();\r\n } else {\r\n this.submissionForm.get('action.detail.verification').enable();\r\n this.submissionForm.get('action.detail.claimantAction').disable();\r\n }\r\n }\r\n\r\n private getClaimEvidence(c: Claim) {\r\n if (this.evidenceStatementRequired) {\r\n this.submissionForm.get('detail.evidence').enable();\r\n } else {\r\n this.submissionForm.get('detail.evidence').disable();\r\n }\r\n this.claimEvidenceSubs = this.claimService.getClaimEvidence(c.id).subscribe((ce: Array) => {\r\n this.existingClaimData.evidence = JSON.parse(JSON.stringify(ce));\r\n this.setupClaimEvidence(ce);\r\n }, (err) => {\r\n this.alertService.createAlert2(this.exceptionData.CLAIM_EVIDENCE, err);\r\n });\r\n }\r\n\r\n ngOnChanges() {}\r\n\r\n ngOnDestroy() {\r\n this.claimSubs.unsubscribe();\r\n this.claimCreateSubs.unsubscribe();\r\n this.claimEvidenceSubs.unsubscribe();\r\n this.claimModifySubs.unsubscribe();\r\n this.compDimsSubs.unsubscribe();\r\n this.routeParamsSubs.unsubscribe();\r\n this.skillSubs.unsubscribe();\r\n this.skillFuncAreaSubs.unsubscribe();\r\n this.tabIndexSubs.unsubscribe();\r\n this.topCompDimsSubs.unsubscribe();\r\n this.verifierSubs.unsubscribe();\r\n\r\n this.submissionDetailSubs.unsubscribe();\r\n }\r\n\r\n createForm() {\r\n this.submissionForm = this.fb.group(\r\n {\r\n detail: this.fb.group({\r\n claimant: this.fb.group(\r\n {\r\n id: [null, Validators.required]\r\n }\r\n ),\r\n competency: this.fb.group(\r\n {\r\n competencyDimensionRadio: this.fb.array([]),\r\n competencyDetail: this.fb.group(\r\n {\r\n // id: [null, Validators.required],\r\n id: null,\r\n funcAreaId: null,\r\n funcAreaName: null,\r\n funcAreaDesc: null,\r\n // level: null,\r\n funcAreaTypeName: null,\r\n name: null,\r\n description: null\r\n },\r\n { validator: this.competencyDetailValidator()}\r\n ),\r\n }\r\n ),\r\n levelAndVerifier: this.fb.group(\r\n {\r\n level: this.fb.group(\r\n {\r\n // id: [null, Validators.required],\r\n id: null,\r\n name: null,\r\n description: null,\r\n levelCode: null,\r\n selfAssessed: null,\r\n claimLevelSetId: null,\r\n sortOrder: null,\r\n approvalLevel: null,\r\n },\r\n { validator: this.levelValidator()}\r\n ),\r\n verifier: this.fb.group(\r\n {\r\n orgUnitVerifiersOnly: this.fb.control(false),\r\n selectedVerifier: this.fb.group(\r\n {\r\n // assessorId: [null, Validators.required],\r\n assessorId: null,\r\n personId: null,\r\n funcAreaId: null,\r\n funcAreaName: null,\r\n funcAreaDescription: null,\r\n inOrgBranch: null,\r\n personFamilyGivenName: null,\r\n orgUnitName: null\r\n },\r\n { validator: this.selectedVerifierValidator()}\r\n ),\r\n verifierChange: this.fb.group(\r\n {\r\n statementText: [{value: null, disabled: true}],\r\n // statementText: [{value: null, disabled: true}, this.verifierChangeValidator ],\r\n },\r\n { validator: this.verifierChangeValidator() }\r\n ),\r\n },\r\n { validator: this.verifierGroupValidator() }\r\n ),\r\n },\r\n { validator: this.levelAndVerifierValidator()}\r\n ),\r\n evidence: this.fb.group(\r\n {\r\n // statementText: [null, Validators.required],\r\n statementText: [null],\r\n previousEvidence: this.fb.array([]),\r\n evidenceFiles: this.fb.array([]),\r\n },\r\n { validator: this.evidenceValidator() }\r\n ),\r\n }),\r\n history: this.fb.array([]),\r\n summary: this.fb.group({}),\r\n action: this.fb.group({\r\n detail: this.fb.group({\r\n claimantAction: this.fb.group(\r\n {\r\n claimAction: this.fb.group(\r\n {\r\n claimStatusActionSetId: null,\r\n id: [null, Validators.required],\r\n name: null,\r\n description: null,\r\n resultingClaimStatus: null,\r\n resultingClaimStatusId: null,\r\n requireEvidence: null\r\n }\r\n )\r\n }\r\n ),\r\n verification: this.fb.group(\r\n {\r\n statement: this.fb.group({\r\n statementText: new FormControl({value: null, disabled: true}, Validators.required),\r\n }),\r\n claimAction: this.fb.group(\r\n {\r\n claimStatusActionSetId: null,\r\n id: [null, Validators.required],\r\n name: null,\r\n description: null,\r\n resultingClaimStatus: null,\r\n resultingClaimStatusId: null,\r\n requireEvidence: null\r\n },\r\n { validator: this.verificationActionValidator()}\r\n )\r\n }\r\n )\r\n }),\r\n buttons: this.fb.group(\r\n {\r\n okButton: this.fb.control('Ok'),\r\n cancelButton: this.fb.control('Cancel')\r\n }\r\n )\r\n })\r\n }\r\n );\r\n\r\n this.submissionForm.get('action.detail').disable();\r\n setTimeout( () => {\r\n this.submissionForm.get('detail.levelAndVerifier.verifier.verifierChange').disable();\r\n }, 0)\r\n\r\n // this.submissionDetailSubs.add(\r\n // this.submissionForm.get('detail.evidence.statementText').valueChanges.subscribe(\r\n // st => {\r\n // // this.newClaimEvidence.description = st;\r\n // // this.newClaimEvidence.initiatorType = 'C';\r\n // console.log(\"('detail.evidence.statementText').valueChanges\")\r\n // }\r\n // )\r\n // )\r\n\r\n/* TODO: This gives erroneous errors\r\n this.submissionDetailSubs.add(\r\n this.submissionForm.get('detail.competency.competencyDetail').statusChanges.subscribe(\r\n (compDetailStatus) => {\r\n if (compDetailStatus === 'INVALID') {\r\n if (!this.submissionForm.get('detail.levelAndVerifier.level').hasError('competencyAttrBeforeLevel')) {\r\n setTimeout( () => {\r\n this.submissionForm.get('detail.levelAndVerifier.level').setErrors({'competencyAttrBeforeLevel': true});\r\n }, 0);\r\n }\r\n if (!this.submissionForm.get('detail.levelAndVerifier.verifier.selectedVerifier').hasError('competencyAttrBeforeVerifier')) {\r\n setTimeout( () => {\r\n this.submissionForm.get('detail.levelAndVerifier.verifier.selectedVerifier').setErrors(\r\n {'competencyAttrBeforeVerifier': true}\r\n );\r\n }, 0);\r\n }\r\n } else if (compDetailStatus === 'VALID') {\r\n if (this.submissionForm.get('detail.levelAndVerifier.level').hasError('competencyAttrBeforeLevel')) {\r\n setTimeout( () => {\r\n this.submissionForm.get('detail.levelAndVerifier.level').setErrors({'competencyAttrBeforeLevel': false});\r\n }, 0)\r\n }\r\n if (this.submissionForm.get('detail.levelAndVerifier.verifier.selectedVerifier').hasError('competencyAttrBeforeVerifier')) {\r\n setTimeout( () => {\r\n this.submissionForm.get('detail.levelAndVerifier.verifier.selectedVerifier').setErrors(\r\n {'competencyAttrBeforeVerifier': false}\r\n );\r\n }, 0)\r\n }\r\n }\r\n\r\n // if (\r\n // compDetailStatus === 'INVALID' &&\r\n // !this.submissionForm.get('detail.levelAndVerifier.level').hasError('competencyAttrBeforeLevel')\r\n // ) {\r\n // setTimeout( () => {\r\n // this.submissionForm.get('detail.levelAndVerifier.level').setErrors({'competencyAttrBeforeLevel': true});\r\n // this.submissionForm.get('detail.levelAndVerifier.verifier.selectedVerifier').setErrors(\r\n // {'competencyAttrBeforeVerifier': true}\r\n // );\r\n // }, 0);\r\n // } else if (\r\n // compDetailStatus === 'VALID' &&\r\n // this.submissionForm.get('detail.levelAndVerifier').hasError('competencyAttrBeforeLevel')\r\n // ) {\r\n // setTimeout( () => {\r\n // this.submissionForm.get('detail.levelAndVerifier.level').setErrors({'competencyAttrBeforeLevel': false});\r\n // this.submissionForm.get('detail.levelAndVerifier.verifier.selectedVerifier').setErrors(\r\n // {'competencyAttrBeforeVerifier': false}\r\n // );\r\n // }, 0)\r\n // }\r\n }\r\n )\r\n )\r\n*/\r\n\r\n this.submissionDetailSubs.add(\r\n this.submissionForm.get('action.detail.verification.claimAction').valueChanges.subscribe(\r\n ca => {\r\n if (ca.id && this.submissionForm.get('action.detail.verification.statement.statementText').disabled) {\r\n setTimeout( () => {\r\n this.submissionForm.get('action.detail.verification.statement.statementText').enable();\r\n }, 0)\r\n }\r\n if (ca.id == null && this.submissionForm.get('action.detail.verification.statement.statementText').enabled ) {\r\n setTimeout( () => {\r\n this.submissionForm.get('action.detail.verification.statement.statementText').disable();\r\n }, 0)\r\n }\r\n }\r\n )\r\n )\r\n this.submissionDetailSubs.add(\r\n this.submissionForm.get('detail.levelAndVerifier.verifier.orgUnitVerifiersOnly').valueChanges.subscribe(\r\n () => {\r\n // Prevent this control causing form to be dirty when changed\r\n this.submissionForm.get('detail.levelAndVerifier.verifier.orgUnitVerifiersOnly').markAsPristine();\r\n }\r\n )\r\n )\r\n this.submissionDetailSubs.add(\r\n this.submissionForm.get('detail.levelAndVerifier.verifier.selectedVerifier').valueChanges.subscribe(\r\n (changes) => {\r\n if (changes.assessorId === this.claim.assessorId) {\r\n setTimeout( () => {\r\n this.submissionForm.get('detail.levelAndVerifier.verifier.selectedVerifier').markAsPristine();\r\n this.submissionForm.get('detail.levelAndVerifier.verifier.verifierChange').disable();\r\n }, 0)\r\n }\r\n if (\r\n this.viewData.editMode && this.claim.assessorId &&\r\n this.submissionForm.get('detail.levelAndVerifier.verifier.selectedVerifier').dirty\r\n ) {\r\n setTimeout( () => {\r\n this.submissionForm.get('detail.levelAndVerifier.verifier.verifierChange').enable();\r\n }, 0)\r\n } else {\r\n setTimeout( () => {\r\n this.submissionForm.get('detail.levelAndVerifier.verifier.verifierChange').disable();\r\n }, 0)\r\n }\r\n }\r\n )\r\n )\r\n this.submissionDetailSubs.add(\r\n this.submissionForm.get('detail.levelAndVerifier.level').valueChanges.subscribe(\r\n cl => {\r\n if (cl.selfAssessed) {\r\n setTimeout( () => {\r\n this.submissionForm.get('detail.levelAndVerifier.verifier').disable();\r\n }, 0)\r\n } else {\r\n setTimeout( () => {\r\n this.submissionForm.get('detail.levelAndVerifier.verifier').enable();\r\n }, 0)\r\n }\r\n }\r\n )\r\n )\r\n // this.submissionDetailSubs.add(\r\n // this.submissionForm.get('detail').statusChanges.subscribe(\r\n // changedStatus => {\r\n // if ( changedStatus === 'VALID' && this.submissionForm.get('detail').pristine) {\r\n // // this.submissionForm.get('action').enable();\r\n // } else {\r\n // // this.submissionForm.get('action').disable();\r\n // }\r\n // }\r\n // )\r\n // )\r\n // this.submissionDetailSubs.add(\r\n // this.submissionForm.get('detail').valueChanges.subscribe(\r\n // (changes) => {\r\n // // console.log(\"('detail').valueChanges\")\r\n\r\n // const targetFormGroup: FormGroup = this.submissionForm.get(\r\n // 'action.detail' + (this.viewData.claimantView ? '.claimantAction' : '.verification')\r\n // ) as FormGroup;\r\n // // console.log('action.detail' + (this.viewData.claimantView ? '.claimantAction' : '.verification'));\r\n\r\n // if (this.submissionForm.get('detail').pristine && this.submissionForm.get('detail').valid && targetFormGroup.disabled) {\r\n // // console.log('Enabled ' + (this.viewData.claimantView ? '.claimantAction' : '.verification'))\r\n // setTimeout( () => {\r\n // targetFormGroup.get('claimAction').enable();\r\n // this.submissionForm.get('action').updateValueAndValidity(); // Re-evaluate so buttons get correct state?\r\n // }, 0);\r\n // }\r\n\r\n // if ((this.submissionForm.get('detail').dirty || this.submissionForm.get('detail').invalid) && targetFormGroup.enabled) {\r\n // // console.log('Disabled ' + (this.viewData.claimantView ? '.claimantAction' : '.verification'))\r\n // setTimeout( () => {\r\n // targetFormGroup.disable()\r\n // this.submissionForm.get('action.buttons').disable();\r\n // }, 0)\r\n // }\r\n // }\r\n // )\r\n // );\r\n // this.submissionDetailSubs.add(\r\n // this.submissionForm.get('action.detail').valueChanges.subscribe(\r\n // () => {\r\n // // console.log(\"('action.detail').valueChanges\")\r\n // // console.log('action.detail: ' + this.submissionForm.get('action.detail').status)\r\n // if (this.submissionForm.get('action.detail').valid && this.submissionForm.get('action.buttons.okButton').disabled) {\r\n // // console.log('action.detail valid; enable okButton')\r\n // setTimeout( () => {\r\n // this.submissionForm.get('action.buttons.okButton').enable();\r\n // }, 0);\r\n // }\r\n // if (this.submissionForm.get('action.detail').invalid && this.submissionForm.get('action.buttons.okButton').enabled) {\r\n // // console.log('action.detail invalid; disable okButton')\r\n // setTimeout( () => {\r\n // this.submissionForm.get('action.buttons.okButton').disable();\r\n // }, 0);\r\n // }\r\n // if (this.submissionForm.get('action.detail').dirty && this.submissionForm.get('action.buttons.cancelButton').disabled) {\r\n // // console.log('action.detail dirty; enable cancelButton')\r\n // setTimeout( () => {\r\n // this.submissionForm.get('action.buttons.cancelButton').enable();\r\n // }, 0);\r\n // }\r\n // if (this.submissionForm.get('action.detail').pristine && this.submissionForm.get('action.buttons.cancelButton').enabled) {\r\n // // console.log('action.detail pristine; disable cancelButton')\r\n // setTimeout( () => {\r\n // this.submissionForm.get('action.buttons.cancelButton').disable();\r\n // }, 0);\r\n // }\r\n // }\r\n // )\r\n // );\r\n }\r\n\r\n\r\n competencyDetailValidator(): ValidatorFn {\r\n return (control: FormControl): {[key: string]: any} => {\r\n if (!control.get('id').value) {\r\n return {'competencyAttrRequired': true};\r\n }\r\n return null;\r\n }\r\n }\r\n\r\n levelValidator(): ValidatorFn {\r\n return (control: FormControl): {[key: string]: any} => {\r\n if (!control.get('id').value) {\r\n return {'levelRequired': true};\r\n }\r\n return null;\r\n }\r\n }\r\n\r\n selectedVerifierValidator(): ValidatorFn {\r\n return (control: FormControl): {[key: string]: any} => {\r\n if (!control.get('assessorId').value) {\r\n return {'verifierRequired': true};\r\n }\r\n return null;\r\n }\r\n }\r\n\r\n levelAndVerifierValidator(): ValidatorFn {\r\n return (control: FormControl): {[key: string]: any} => {\r\n if (!control.get('level.selfAssessed').value && !control.get('verifier.selectedVerifier.assessorId').value) {\r\n return {'verifierRequiredForLevel': true};\r\n }\r\n return null;\r\n }\r\n }\r\n\r\n verifierGroupValidator(): ValidatorFn {\r\n return (control: FormControl): {[key: string]: any} => {\r\n if (\r\n this.viewData.editMode &&\r\n control.get('selectedVerifier').dirty &&\r\n this.claim.assessorId &&\r\n this.claim.assessorId !== control.get('selectedVerifier.assessorId').value &&\r\n !control.get('verifierChange.statementText').value\r\n ) {\r\n return {'verifierChangeReasonRequired': true};\r\n }\r\n return null;\r\n }\r\n }\r\n\r\n verifierChangeValidator(): ValidatorFn {\r\n return (control: FormControl): {[key: string]: any} => {\r\n if (!control.get('statementText').value) {\r\n return {'verifierChangeReasonRequired': true};\r\n }\r\n return null;\r\n }\r\n }\r\n\r\n evidenceValidator(): ValidatorFn {\r\n return (control: FormControl): {[key: string]: any} => {\r\n if (this.claim && !(\r\n (this.claim.isPublished && !this.selectedClaimAction.id) ||\r\n !this.viewData.claimantView ||\r\n (this.submissionForm.get('detail.evidence.statementText').value || '').length > 0\r\n )) {\r\n return {'evidenceStatementRequired': true}\r\n }\r\n return null;\r\n }\r\n }\r\n\r\n verificationValidator(): ValidatorFn {\r\n return (control: FormControl): {[key: string]: any} => {\r\n if (control.get('claimAction.id').value && control.get('statementText').value.length < 1) {\r\n return {'verifierStatementRequired': true}\r\n }\r\n return null;\r\n }\r\n }\r\n\r\n verificationActionValidator(): ValidatorFn {\r\n return (control: FormControl): {[key: string]: any} => {\r\n if (!control.get('id').value) {\r\n return {'verificationActionRequired': true}\r\n }\r\n return null;\r\n }\r\n }\r\n\r\n modifyClaim() {\r\n this.viewData.savePending = true;\r\n this.claimModifySubs = this.claimService.modifyClaim(this.saveClaimData).pipe(\r\n finalize( () =>\r\n this.viewData.savePending = false\r\n )\r\n ).subscribe(\r\n (c: Claim) => {\r\n this.claim = Object.assign(this.claim, c);\r\n this.submissionForm.markAsPristine();\r\n this.submissionForm.get('detail').updateValueAndValidity();\r\n this.alertService.createAlert(AlertLevels.SUCCESS, `Claim ID: ${this.claim.id} has been modified`, 'CED-000');\r\n },\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.MODIFY_CLAIM, err);\r\n },\r\n );\r\n }\r\n\r\n discardChanges() {\r\n this.selectedAssessor = this.existingClaimData.assessor || new Assessor();\r\n this.setupClaimEvidence(this.existingClaimData.evidence);\r\n this.selectedClaimLevel = this.existingClaimData.level;\r\n this.selectedSkill = this.existingClaimData.skill;\r\n\r\n this.submissionForm.get('detail.levelAndVerifier.verifier.verifierChange').disable();\r\n this.submissionForm.get('detail.levelAndVerifier.verifier.verifierChange.statementText').reset();\r\n this.submissionForm.get('detail').markAsPristine();\r\n}\r\n\r\n createClaim() {\r\n this.viewData.savePending = true;\r\n if (this.viewData.editMode) {\r\n this.claimModifySubs = this.claimService.modifyClaim(this.claimData).pipe(\r\n finalize(\r\n () => { this.viewData.savePending = false; }\r\n )\r\n ).subscribe(\r\n (c: Claim) => {\r\n this.logging.newMsg('Claim Data:' + JSON.stringify(c), 'VERBOSE');\r\n this.claim = Object.assign(this.claim, c);\r\n this.currentEvidenceStatement = this.evidenceText;\r\n this.currentAssessorId = c.assessorId;\r\n this.logging.newMsg('Modified claim', 'VERBOSE');\r\n this.viewData.changesSaved = true;\r\n this.viewData.editMode = true;\r\n this.submissionForm.markAsPristine();\r\n this.alertService.createAlert(AlertLevels.SUCCESS, `Claim ID: ${this.claim.id} has been modified`, 'CED-000');\r\n },\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.MODIFY_CLAIM, err);\r\n },\r\n );\r\n } else {\r\n this.claimCreateSubs = this.claimService.createClaim2(this.submissionForm.value).pipe(\r\n finalize(\r\n () => { this.viewData.savePending = false; }\r\n )\r\n ).subscribe(\r\n (c: any) => {\r\n this.claim = Object.assign(this.claim, c);\r\n this.currentEvidenceStatement = this.evidenceText;\r\n this.currentAssessorId = this.selectedAssessor.assessorId;\r\n this.logging.newMsg('Created claim', 'VERBOSE');\r\n this.viewData.changesSaved = true;\r\n this.viewData.editMode = true;\r\n this.submissionForm.get('detail.levelAndVerifier.verifier.verifierChange.statementText').reset();\r\n this.submissionForm.get('detail.evidence.statementText').reset(this.evidenceText);\r\n this.submissionForm.get('action.detail.verification.statement.statementText').reset('');\r\n this.submissionForm.markAsPristine();\r\n this.alertService.createAlert(\r\n AlertLevels.SUCCESS,\r\n `Claim has been created with ID: ${this.claim.id}, status: ${this.claim.statusText}`,\r\n 'CED-000'\r\n );\r\n this.router.navigate(['/claim', this.claim.id, 'claimant']);\r\n },\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.CREATE_CLAIM, err);\r\n },\r\n );\r\n }\r\n }\r\n\r\n onSubmitActionClick() {\r\n this.claimModifySubs = this.claimService.modifyClaim(this.claimData).pipe(\r\n finalize(\r\n () => { this.viewData.savePending = false; }\r\n )\r\n ).subscribe(\r\n (c: Claim) => {\r\n this.logging.newMsg('Claim Data:' + JSON.stringify(c), 'VERBOSE');\r\n this.claim = Object.assign(this.claim, c);\r\n this.logging.newMsg('Claim has been modified', 'VERBOSE');\r\n this.viewData.changesSaved = true;\r\n this.viewData.editMode = true;\r\n this.getClaimEvidence(this.claim);\r\n this.selectedClaimAction = new ClaimAction();\r\n this.alertService.createAlert(AlertLevels.SUCCESS, `Claim ID: ${this.claim.id} has been modified`, 'CED-000');\r\n },\r\n (err) => {\r\n this.alertService.createAlert2(this.exceptionData.MODIFY_CLAIM, err);\r\n },\r\n );\r\n }\r\n\r\n onActionCancel() {\r\n this.submissionForm.get('action.detail' + (this.viewData.claimantView ? '.claimantAction' : '.verification')).reset();\r\n }\r\n\r\n tabClick(tabIndex: number) {\r\n this.navigationService.clickTab(tabIndex);\r\n this.logging.newMsg('Clicked tab with index=' + tabIndex, 'VERBOSE');\r\n }\r\n\r\n detailTabStatusClass(fg: AbstractControl, editMode: boolean): string {\r\n const classList: Array = [];\r\n classList.push('fas');\r\n if (fg.invalid) {\r\n classList.push('fa-exclamation-circle');\r\n classList.push('text-danger');\r\n } else {\r\n if (editMode && fg.dirty) {\r\n classList.push('fa-asterisk');\r\n classList.push('text-warning');\r\n } else {\r\n classList.push('fa-check-circle text-success')\r\n }\r\n }\r\n return classList.join(' ');\r\n }\r\n\r\n actionTabStatusClass(): string {\r\n const classList: Array = [];\r\n classList.push('fas');\r\n if (this.submissionForm.get('detail').invalid) {\r\n classList.push('fa-ban');\r\n classList.push('text-danger');\r\n } else if (this.submissionForm.get('detail').dirty) {\r\n classList.push('fa-ban');\r\n classList.push('text-warning');\r\n } else {\r\n if (this.submissionForm.get('action').dirty) {\r\n if (this.submissionForm.get('action').invalid) {\r\n classList.push('fa-exclamation-circle');\r\n classList.push('text-danger');\r\n } else {\r\n classList.push('fa-check-circle text-success')\r\n }\r\n } else {\r\n classList.push('fa-lightbulb')\r\n }\r\n }\r\n return classList.join(' ');\r\n }\r\n\r\n public get claimData(): ClaimData {\r\n const claimData = {};\r\n if (!this.isEmptyObject(this.claim)) { claimData['claim'] = this.claim; }\r\n if (!this.isEmptyObject(this.selectedClaimAction)) {claimData['action'] = this.selectedClaimAction; }\r\n if (!this.isEmptyObject(this.selectedAssessor)) {\r\n if (!this.isEmptyObject(this.selectedClaimLevel) && this.selectedClaimLevel.selfAssessed !== true) {\r\n claimData['assessor'] = this.selectedAssessor;\r\n }\r\n }\r\n if (!this.isEmptyObject(this.claimStatements)) { claimData['evidence'] = this.claimStatements; }\r\n if (!this.isEmptyObject(this.selectedClaimLevel)) { claimData['level'] = this.selectedClaimLevel; }\r\n if (!this.isEmptyObject(this.selectedSkill)) { claimData['skill'] = this.selectedSkill; }\r\n claimData['initiator'] = {\r\n 'initiatorType': this.viewData.claimantView ? 'C' : 'A',\r\n 'personId': this.authService.me.id\r\n };\r\n return claimData;\r\n }\r\n\r\n public get saveClaimData(): ClaimData {\r\n /**\r\n * Generate claim data for saving (not actioning). Any selected action is excluded from returned data.\r\n */\r\n const claimData = {};\r\n if (!this.isEmptyObject(this.claim)) { claimData['claim'] = this.claim; }\r\n if (!this.isEmptyObject(this.selectedAssessor)) {\r\n if (!this.isEmptyObject(this.selectedClaimLevel) && this.selectedClaimLevel.selfAssessed !== true) {\r\n claimData['assessor'] = this.selectedAssessor;\r\n }\r\n }\r\n if (!this.isEmptyObject(this.claimStatements)) { claimData['evidence'] = this.claimStatements; }\r\n if (!this.isEmptyObject(this.selectedClaimLevel)) { claimData['level'] = this.selectedClaimLevel; }\r\n if (!this.isEmptyObject(this.selectedSkill)) { claimData['skill'] = this.selectedSkill; }\r\n claimData['initiator'] = {\r\n 'initiatorType': this.viewData.claimantView ? 'C' : 'A',\r\n 'personId': this.authService.me.id\r\n };\r\n return claimData;\r\n }\r\n\r\n get claimStatements(): any {\r\n const claimStatements = {};\r\n if (this.viewData.claimantView) {\r\n if (this.submissionForm.get('detail.evidence.statementText').dirty) {\r\n claimStatements['statement'] = {description: this.evidenceText, initiatorType: 'C'};\r\n if (this.existingEvidenceStatementId) { claimStatements['statement']['id'] = this.existingEvidenceStatementId; }\r\n }\r\n } else {\r\n claimStatements['assessorStatement'] = this.submissionForm.get('action.detail.verification.statement.statementText').value;\r\n }\r\n if (this.assessorChanged) {\r\n claimStatements['assessorChangeReason'] = this.submissionForm.get(\r\n 'detail.levelAndVerifier.verifier.verifierChange.statementText'\r\n ).value;\r\n }\r\n return claimStatements;\r\n }\r\n\r\n get assessorChanged(): boolean {\r\n const assessorChanged = (\r\n this.viewData.editMode &&\r\n (this.selectedAssessor && this.selectedAssessor.assessorId) &&\r\n (this.existingClaimData.assessor && this.existingClaimData.assessor.assessorId) &&\r\n (this.existingClaimData.assessor.assessorId !== this.selectedAssessor.assessorId)\r\n );\r\n return assessorChanged;\r\n }\r\n\r\n get evidenceStatementRequired(): boolean {\r\n return (\r\n this.viewData.claimantView && (\r\n !this.claim.isPublished || (\r\n this.claim.isPublished &&\r\n this.selectedClaimAction.id !== undefined &&\r\n this.selectedClaimAction.id !== null\r\n )\r\n )\r\n )\r\n }\r\n\r\n isEmptyObject(obj: any) {\r\n if (!obj) { return true; }\r\n for (const prop of Object.keys(obj)) {\r\n if (obj[prop]) {\r\n return false;\r\n }\r\n }\r\n return true;\r\n }\r\n\r\n private setupClaimEvidence(ce: Array) {\r\n if (ce.length > 0 && ce[0].initiatorType === 'C' && !this.claim.isPublished) {\r\n this.evidenceList = ce.slice(1);\r\n this.evidenceText = ce[0].description;\r\n this.existingEvidenceStatementId = ce[0].id;\r\n this.submissionForm.get('detail.evidence.statementText').reset(this.evidenceText);\r\n } else {\r\n this.evidenceList = ce;\r\n this.submissionForm.get('detail.evidence.statementText').reset('');\r\n }\r\n }\r\n\r\n toggleClaimHistory(): void {\r\n this.viewData.showClaimHistory = !this.viewData.showClaimHistory;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n {{ !viewData.editMode ? 'Create' : (viewData.claimantView ? 'Modify' : 'Verify') }} Competency Assessment{{viewData.claimantView ? ' Request' : ''}}\r\n
\r\n \r\n \r\n \r\n Create New CAR\r\n Cancel\r\n
\r\n
\r\n
\r\n
Claim Detail
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Claim IDDimensionDisciplineSkillStatusClaimantVerifier
{{claimData?.claim?.id}}{{claimData.claim?.competencyDimensionName}}{{claimData?.skill?.funcAreaName}}{{claimData?.skill?.name}}{{claimData?.claim?.statusText}}{{claimData?.claim?.claimantName}}{{claimData?.assessor?.personFamilyGivenName}}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
History
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n

{{selectedSkill | json}}

\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n

Claimant View: {{viewData.claimantView}}

\r\n

Statement changed: {{submissionForm.get('detail.evidence.statementText').dirty}}

\r\n

Dirty: {{submissionForm.get('detail.evidence').dirty}}

\r\n
\r\n \r\n
\r\n
\r\n \r\n

{{submissionForm.get('action.detail.claimantAction.claimAction').value | json}}

\r\n
\r\n \r\n \r\n

{{submissionForm.get('action.detail.verification.claimAction').value | json}}

\r\n
\r\n
\r\n
\r\n
\r\n
Claim Data
\r\n
{{this.claimData | json}}
\r\n
\r\n
\r\n
Save Claim Data
\r\n
{{this.saveClaimData | json}}
\r\n
\r\n
\r\n
Evidence
\r\n
\r\n
\r\n
View Data
\r\n
{{this.viewData | json}}
\r\n
\r\n
\r\n
Nav Service
\r\n
{{this.navigationService.currentTabIndex | json}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\nimport { SubmissionDetailComponent } from './submission-detail.component';\r\nimport { AuthGuard } from 'app/auth.guard';\r\nimport { MetaClaimGuard } from 'app/claim/meta-claim.guard';\r\nimport { MsalGuard } from '@azure/msal-angular';\r\n\r\nconst routes: Routes = [\r\n {path: 'claim/new', component: SubmissionDetailComponent, canActivate: [MsalGuard]},\r\n {path: 'claim/:claimId/assessor', component: SubmissionDetailComponent, canActivate: [MetaClaimGuard]},\r\n {path: 'claim/:claimId/claimant', component: SubmissionDetailComponent, canActivate: [MetaClaimGuard]},\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class SubmissionRoutingModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { AssessorModule } from '../assessor/assessor.module';\r\nimport { ControlsModule } from '../controls/controls.module';\r\nimport { ClaimModule } from '../claim/claim.module';\r\nimport { SkillModule } from '../skill/skill.module';\r\nimport { SubmissionRoutingModule } from './submission-routing.module';\r\n\r\nimport { LevelAndVerifierComponent } from '../submission/level-and-verifier.component';\r\nimport { SubmissionDetailComponent } from '../submission/submission-detail.component';\r\nimport { LevelSelectFormComponent } from './level-select-form.component';\r\nimport { VerifierSelectFormComponent } from './verifier-select-form.component';\r\nimport { StatementFormComponent } from '../submission/statement-form.component';\r\nimport { EvidenceComponent } from '../submission/evidence.component';\r\nimport { StatementListFormComponent } from '../submission/statement-list-form.component';\r\nimport { AttachmentSelectFormComponent } from '../submission/attachment-select-form.component';\r\nimport { CompetencyAttrFormComponent } from './competency-attr-form.component';\r\nimport { SummaryActionFormComponent } from './summary-action-form.component';\r\nimport { ActionSelectFormComponent } from '../submission/action-select-form.component';\r\nimport { VerifierActionFormComponent } from './verifier-action-form.component';\r\nimport { CompetencyAttrCategoryListComponent } from '../submission/competency-attr-category-list.component';\r\nimport { CompetencyAttrFilterListComponent } from './competency-attr-filter-list.component';\r\nimport { FormErrorListComponent } from '../submission/form-error-list.component';\r\nimport { HistoryTableComponent } from './history-table.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n AssessorModule,\r\n ControlsModule,\r\n SkillModule,\r\n ClaimModule,\r\n SubmissionRoutingModule\r\n ],\r\n declarations: [\r\n LevelAndVerifierComponent,\r\n SubmissionDetailComponent,\r\n LevelSelectFormComponent,\r\n VerifierSelectFormComponent,\r\n StatementFormComponent,\r\n EvidenceComponent,\r\n StatementListFormComponent,\r\n AttachmentSelectFormComponent,\r\n CompetencyAttrFormComponent,\r\n SummaryActionFormComponent,\r\n ActionSelectFormComponent,\r\n VerifierActionFormComponent,\r\n CompetencyAttrCategoryListComponent,\r\n CompetencyAttrFilterListComponent,\r\n FormErrorListComponent,\r\n HistoryTableComponent\r\n ],\r\n exports: [\r\n LevelAndVerifierComponent,\r\n SubmissionDetailComponent,\r\n LevelSelectFormComponent,\r\n VerifierSelectFormComponent,\r\n StatementFormComponent,\r\n EvidenceComponent,\r\n StatementListFormComponent,\r\n AttachmentSelectFormComponent,\r\n CompetencyAttrFormComponent,\r\n SummaryActionFormComponent,\r\n ActionSelectFormComponent,\r\n VerifierActionFormComponent,\r\n CompetencyAttrCategoryListComponent,\r\n CompetencyAttrFilterListComponent,\r\n FormErrorListComponent,\r\n HistoryTableComponent\r\n ]\r\n})\r\nexport class SubmissionModule { }\r\n","import { Component, EventEmitter, OnInit, Input, Output } from '@angular/core';\r\nimport { FormGroup, FormBuilder, AbstractControl } from '@angular/forms';\r\nimport { Claim } from '../claim/claim';\r\nimport { ClaimLevel } from '../claim/claim-level';\r\nimport { Skill } from 'app/skill/skill';\r\nimport { Assessor } from 'app/assessor/assessor';\r\nimport { ClaimAction } from '../claim/claim-action';\r\n\r\n@Component({\r\n selector: 'esqep-summary-action-form', // tslint:disable-line:component-selector\r\n templateUrl: './summary-action-form.component.html',\r\n styleUrls: ['./summary-action-form.component.css']\r\n})\r\nexport class SummaryActionFormComponent implements OnInit {\r\n\r\n @Input() parentFormGroup: FormGroup; // = this.fb.group({});\r\n @Input() detailFormGroup: FormGroup;\r\n @Input() claim: Claim;\r\n @Input() evidenceText: string;\r\n @Input() selectedClaimLevel: ClaimLevel;\r\n @Input() selectedCompAttr: Skill;\r\n @Input() selectedVerifier: Assessor;\r\n @Input() action: ClaimAction;\r\n\r\n @Output() actionChange: EventEmitter = new EventEmitter();\r\n @Output() actionCancel: EventEmitter = new EventEmitter();\r\n @Output() actionSubmit: EventEmitter = new EventEmitter();\r\n\r\n constructor(private fb: FormBuilder) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n onActionChange(action: ClaimAction) {\r\n this.actionChange.emit(action);\r\n }\r\n\r\n onSubmitActionClick() {\r\n this.actionSubmit.emit(true);\r\n }\r\n\r\n onCancelActionClick() {\r\n this.actionCancel.emit(true);\r\n }\r\n\r\n getStatusSymbolClass(fg: AbstractControl): Array {\r\n const classList = [];\r\n classList.push('far fa-2x');\r\n if (fg.invalid) {\r\n classList.push('fa-times-circle');\r\n classList.push('text-danger');\r\n } else if (fg.dirty) {\r\n classList.push('fa-check-circle');\r\n classList.push('text-warning');\r\n } else {\r\n classList.push('fa-check-circle');\r\n classList.push('text-success');\r\n }\r\n\r\n return classList;\r\n }\r\n\r\n getErrorList(topFormGroup: FormGroup): Array {\r\n const errorArray: Array = []\r\n this.getErrorMap(topFormGroup, new Map()).forEach( (v, k) => errorArray.push(k));\r\n return errorArray;\r\n }\r\n\r\n getErrorMap(topFormControl: FormGroup, errorMap: Map ): any {\r\n if (topFormControl.errors) {\r\n for ( const errorKey of Object.keys(topFormControl.errors)) {\r\n errorMap.set(errorKey, true);\r\n }\r\n }\r\n if (topFormControl.controls) {\r\n for (const control in topFormControl.controls) {\r\n if ( control ) {\r\n errorMap = this.getErrorMap(topFormControl.get(control), errorMap);\r\n }\r\n }\r\n }\r\n return errorMap;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
Claim Summary
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Status\r\n
\r\n
\r\n \r\n {{(claim?.statusText ? claim.statusText : 'Draft')}}\r\n {{(detailFormGroup.dirty || !claim?.id ? 'UNSAVED' : null)}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Competency\r\n
\r\n
\r\n {{selectedCompAttr?.name || 'Please select a competency'}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Claim Level\r\n
\r\n
\r\n

{{selectedClaimLevel?.name || 'Please select a claim level'}}

\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Verifier\r\n
\r\n
\r\n

{{selectedClaimLevel?.selfAssessed ? 'Self-assessed' : (selectedVerifier?.personFamilyGivenName || 'Please select a verifier')}}

\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Evidence\r\n
\r\n
\r\n

{{detailFormGroup.get('evidence').invalid ? 'Please enter evidence statement' : evidenceText}}

\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\nimport { ClaimAction } from '../claim/claim-action';\r\nimport { Claim } from '../claim/claim';\r\n\r\n@Component({\r\n selector: 'esqep-verifier-action-form', // tslint:disable-line:component-selector\r\n templateUrl: './verifier-action-form.component.html',\r\n styleUrls: ['./verifier-action-form.component.css']\r\n})\r\nexport class VerifierActionFormComponent implements OnInit {\r\n\r\n @Input() parentFormGroup: FormGroup;\r\n @Input() detailFormGroup: FormGroup;\r\n @Input() claim: Claim;\r\n @Input() action: ClaimAction;\r\n\r\n @Output() actionChange: EventEmitter = new EventEmitter();\r\n @Output() actionCancel: EventEmitter = new EventEmitter();\r\n @Output() actionSubmit: EventEmitter = new EventEmitter();\r\n @Output() tabLinkClick: EventEmitter = new EventEmitter();\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n onActionChange(action: ClaimAction) {\r\n this.actionChange.emit(action);\r\n }\r\n\r\n onSubmitActionClick() {\r\n this.actionSubmit.emit(true);\r\n }\r\n\r\n onCancelActionClick() {\r\n this.actionCancel.emit(true);\r\n }\r\n\r\n onTabLinkClick(tabIndex: number) {\r\n this.tabLinkClick.emit(tabIndex);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
Please review the claim details
\r\n

\r\n As a verifier you may modify the claim level if you feel the current level is incorrect.\r\n You may also assign a different verifier to review the claim. \r\n Both of these steps may be performed on the Level and Verifier tab.\r\n Any modifications to the claim should be supported with a Verifier Statement and they must be Saved before actioning the claim.\r\n

\r\n

\r\n Once you have reviewed the claim details please choose an appropriate Action from the dropdown box and\r\n enter an Verifier Statement to explain your decision.\r\n

\r\n

\r\n Finally, please click the OK button to submit your verification action\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n","import { Component, EventEmitter, Input, OnChanges, OnDestroy, Output, SimpleChanges } from '@angular/core';\r\nimport { FormBuilder, FormControl, FormGroup } from '@angular/forms';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\n\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { AuthService } from '../core/auth.service';\r\nimport { AlertService, AlertLevels, AlertData } from '../core/alert.service';\r\nimport { AssessorService } from '../assessor/assessor.service';\r\n// import { ClaimService } from '../claim/claim.service';\r\nimport { ConfigService } from '../core/config.service';\r\n\r\nimport { Assessor } from '../assessor/assessor';\r\n\r\n@Component({\r\n selector: 'esqep-verifier-select-form', // tslint:disable-line:component-selector\r\n templateUrl: './verifier-select-form.component.html',\r\n styleUrls: ['./verifier-select-form.component.css']\r\n})\r\nexport class VerifierSelectFormComponent implements OnChanges, OnDestroy {\r\n @Input() parentFormGroup: FormGroup;\r\n @Input() funcAreaId: number;\r\n @Input() verifier: Assessor;\r\n @Input() selfVerified = true;\r\n @Input() controlStatus = { disabled: false, reason: '' };\r\n\r\n @Output() verifierChange: EventEmitter = new EventEmitter();\r\n verifierList: Array = [];\r\n\r\n savedFuncAreaId: number;\r\n\r\n verifierSelectSubs = new Subscription();\r\n\r\n exceptionData = {\r\n 'VERIFIER_FA_OU': {\r\n level: AlertLevels.ERROR,\r\n code: 'VSC-001',\r\n message: 'Unable to retrieve verifer data'\r\n } as AlertData,\r\n };\r\n\r\n clog = (msg, lvl) => { this.configService.logging.newMsg(msg, lvl); };\r\n\r\n get orgUnitVerifiersOnly(): FormControl {\r\n return this.parentFormGroup.get('verifier.orgUnitVerifiersOnly') as FormControl;\r\n }\r\n\r\n get formGroupDisabled(): boolean {\r\n return this.parentFormGroup.get('verifier').disabled || this.controlStatus.disabled;\r\n }\r\n\r\n constructor(\r\n private authService: AuthService,\r\n private alertService: AlertService,\r\n private assessorService: AssessorService,\r\n private configService: ConfigService,\r\n private fb: FormBuilder\r\n ) { }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (!this.funcAreaId || !this.authService.me.orgUnitId) {\r\n this.verifierList = [];\r\n return;\r\n }\r\n if (this.savedFuncAreaId === this.funcAreaId) { return; }\r\n if (this.selfVerified) { return; }\r\n\r\n this.savedFuncAreaId = this.funcAreaId;\r\n this.verifierSelectSubs.add(\r\n this.assessorService.getAssessorByFuncAreaOrgUnit(this.funcAreaId, this.authService.me.orgUnitId)\r\n .subscribe(\r\n (al: Array) => {\r\n this.verifierList = al.sort(\r\n (a, b) => {\r\n return a.personFamilyGivenName.toLocaleLowerCase().localeCompare(b.personFamilyGivenName.toLocaleLowerCase())\r\n }\r\n );\r\n this.clog(`Got Verifiers for FA:${this.funcAreaId}, OU:${this.authService.me.orgUnitId}`, 'VERBOSE');\r\n const currentVerifierFromList = this.verifierList.find( v => { return v.assessorId === this.verifier.assessorId; } );\r\n if (currentVerifierFromList) {this.orgUnitVerifiersOnly.setValue(currentVerifierFromList.inOrgBranch); }\r\n },\r\n (err: HttpErrorResponse) => {\r\n this.alertService.createAlert2(this.exceptionData.VERIFIER_FA_OU, err);\r\n }\r\n )\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n this.verifierSelectSubs.unsubscribe();\r\n }\r\n\r\n onVerifierClick(idx: number, verifier: Assessor) {\r\n if (this.formGroupDisabled) { return; }\r\n this.clog(`Clicked on verifier id: ${this.verifierList[idx].assessorId} ${this.verifierList[idx].personFamilyGivenName}`, 'VERBOSE');\r\n if (this.verifier.assessorId === verifier.assessorId) {\r\n this.verifierChange.emit(new Assessor());\r\n } else {\r\n this.verifierChange.emit(verifier);\r\n }\r\n }\r\n\r\n getVerifierRowClass(verifierRow: Assessor): string {\r\n let displayClass = '';\r\n if (!verifierRow.inOrgBranch && this.orgUnitVerifiersOnly.value) {\r\n displayClass = 'd-none';\r\n } else {\r\n if (verifierRow.assessorId === this.verifier.assessorId) {\r\n displayClass = 'table-success';\r\n } else {\r\n displayClass = this.formGroupDisabled ? 'table-secondary' : 'table-light';\r\n }\r\n }\r\n return displayClass;\r\n }\r\n\r\n}\r\n\r\n","
\r\n
\r\n
\r\n Authorised Verifiers\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Claims at this level will be automatically verified; No verifier is required to be specified\r\n
\r\n
\r\n \r\n
\r\n
{{controlStatus.reason}}
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Verifier NameOrg. UnitVerifier for Job Family
{{verifier.personFamilyGivenName}}{{verifier['name']}}{{verifier.funcAreaName}}
\r\n
\r\n
\r\n
\r\n
","export const environment = {\r\n production: false,\r\n envName: 'demo',\r\n shareUrl: 'https://sqeptech-esqep-demo-api.azurewebsites.net/shared',\r\n apiUrl: 'https://sqeptech-esqep-demo-api.azurewebsites.net/esqep/api/v1.0',\r\n clientUrl: 'https://sqeptech-esqep-demo.azurewebsites.net',\r\n tenantId: 'd320fce4-2119-4307-8597-5b2363fcc067',\r\n clientId: '9ea010b4-900e-491e-a594-f385e33d551d', // dev client\r\n loggingLevel: 3,\r\n skillMatrixHeadings: [\r\n 'PM', 'TL', 'Staff'\r\n ],\r\n // skillMatrixFaId: 23,\r\n skillMatrixFaId: 983,\r\n clientLogoAsset: 'esqep-logo.png',\r\n navbarBgClass: 'bg-sqeptech',\r\n userGroups: [\r\n {id: '103eead7-1830-457b-8ba3-1a1e9ef53072', name: 'eSQEP-users', isAdmin: false},\r\n {id: 'c645c0db-2c14-4421-850a-8f4699f9f9cf', name: 'eSQEP-admins', isAdmin: true}\r\n ]};\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule);\r\n","var map = {\n\t\"./af\": 58685,\n\t\"./af.js\": 58685,\n\t\"./ar\": 254,\n\t\"./ar-dz\": 4312,\n\t\"./ar-dz.js\": 4312,\n\t\"./ar-kw\": 32614,\n\t\"./ar-kw.js\": 32614,\n\t\"./ar-ly\": 18630,\n\t\"./ar-ly.js\": 18630,\n\t\"./ar-ma\": 28674,\n\t\"./ar-ma.js\": 28674,\n\t\"./ar-sa\": 49032,\n\t\"./ar-sa.js\": 49032,\n\t\"./ar-tn\": 24730,\n\t\"./ar-tn.js\": 24730,\n\t\"./ar.js\": 254,\n\t\"./az\": 53052,\n\t\"./az.js\": 53052,\n\t\"./be\": 60150,\n\t\"./be.js\": 60150,\n\t\"./bg\": 63069,\n\t\"./bg.js\": 63069,\n\t\"./bm\": 13466,\n\t\"./bm.js\": 13466,\n\t\"./bn\": 18516,\n\t\"./bn-bd\": 90557,\n\t\"./bn-bd.js\": 90557,\n\t\"./bn.js\": 18516,\n\t\"./bo\": 26273,\n\t\"./bo.js\": 26273,\n\t\"./br\": 9588,\n\t\"./br.js\": 9588,\n\t\"./bs\": 19815,\n\t\"./bs.js\": 19815,\n\t\"./ca\": 83331,\n\t\"./ca.js\": 83331,\n\t\"./cs\": 21320,\n\t\"./cs.js\": 21320,\n\t\"./cv\": 72219,\n\t\"./cv.js\": 72219,\n\t\"./cy\": 68266,\n\t\"./cy.js\": 68266,\n\t\"./da\": 66427,\n\t\"./da.js\": 66427,\n\t\"./de\": 67435,\n\t\"./de-at\": 52871,\n\t\"./de-at.js\": 52871,\n\t\"./de-ch\": 12994,\n\t\"./de-ch.js\": 12994,\n\t\"./de.js\": 67435,\n\t\"./dv\": 82357,\n\t\"./dv.js\": 82357,\n\t\"./el\": 95649,\n\t\"./el.js\": 95649,\n\t\"./en-au\": 59961,\n\t\"./en-au.js\": 59961,\n\t\"./en-ca\": 19878,\n\t\"./en-ca.js\": 19878,\n\t\"./en-gb\": 3924,\n\t\"./en-gb.js\": 3924,\n\t\"./en-ie\": 70864,\n\t\"./en-ie.js\": 70864,\n\t\"./en-il\": 91579,\n\t\"./en-il.js\": 91579,\n\t\"./en-in\": 30940,\n\t\"./en-in.js\": 30940,\n\t\"./en-nz\": 16181,\n\t\"./en-nz.js\": 16181,\n\t\"./en-sg\": 44301,\n\t\"./en-sg.js\": 44301,\n\t\"./eo\": 85291,\n\t\"./eo.js\": 85291,\n\t\"./es\": 54529,\n\t\"./es-do\": 53764,\n\t\"./es-do.js\": 53764,\n\t\"./es-mx\": 12584,\n\t\"./es-mx.js\": 12584,\n\t\"./es-us\": 63425,\n\t\"./es-us.js\": 63425,\n\t\"./es.js\": 54529,\n\t\"./et\": 35203,\n\t\"./et.js\": 35203,\n\t\"./eu\": 70678,\n\t\"./eu.js\": 70678,\n\t\"./fa\": 83483,\n\t\"./fa.js\": 83483,\n\t\"./fi\": 96262,\n\t\"./fi.js\": 96262,\n\t\"./fil\": 52521,\n\t\"./fil.js\": 52521,\n\t\"./fo\": 34555,\n\t\"./fo.js\": 34555,\n\t\"./fr\": 63131,\n\t\"./fr-ca\": 88239,\n\t\"./fr-ca.js\": 88239,\n\t\"./fr-ch\": 21702,\n\t\"./fr-ch.js\": 21702,\n\t\"./fr.js\": 63131,\n\t\"./fy\": 267,\n\t\"./fy.js\": 267,\n\t\"./ga\": 23821,\n\t\"./ga.js\": 23821,\n\t\"./gd\": 71753,\n\t\"./gd.js\": 71753,\n\t\"./gl\": 4074,\n\t\"./gl.js\": 4074,\n\t\"./gom-deva\": 92762,\n\t\"./gom-deva.js\": 92762,\n\t\"./gom-latn\": 5969,\n\t\"./gom-latn.js\": 5969,\n\t\"./gu\": 82809,\n\t\"./gu.js\": 82809,\n\t\"./he\": 45402,\n\t\"./he.js\": 45402,\n\t\"./hi\": 315,\n\t\"./hi.js\": 315,\n\t\"./hr\": 10410,\n\t\"./hr.js\": 10410,\n\t\"./hu\": 38288,\n\t\"./hu.js\": 38288,\n\t\"./hy-am\": 67928,\n\t\"./hy-am.js\": 67928,\n\t\"./id\": 71334,\n\t\"./id.js\": 71334,\n\t\"./is\": 86959,\n\t\"./is.js\": 86959,\n\t\"./it\": 34864,\n\t\"./it-ch\": 51124,\n\t\"./it-ch.js\": 51124,\n\t\"./it.js\": 34864,\n\t\"./ja\": 36141,\n\t\"./ja.js\": 36141,\n\t\"./jv\": 29187,\n\t\"./jv.js\": 29187,\n\t\"./ka\": 42136,\n\t\"./ka.js\": 42136,\n\t\"./kk\": 94332,\n\t\"./kk.js\": 94332,\n\t\"./km\": 18607,\n\t\"./km.js\": 18607,\n\t\"./kn\": 84305,\n\t\"./kn.js\": 84305,\n\t\"./ko\": 70234,\n\t\"./ko.js\": 70234,\n\t\"./ku\": 16003,\n\t\"./ku.js\": 16003,\n\t\"./ky\": 75061,\n\t\"./ky.js\": 75061,\n\t\"./lb\": 32786,\n\t\"./lb.js\": 32786,\n\t\"./lo\": 66183,\n\t\"./lo.js\": 66183,\n\t\"./lt\": 50029,\n\t\"./lt.js\": 50029,\n\t\"./lv\": 24169,\n\t\"./lv.js\": 24169,\n\t\"./me\": 68577,\n\t\"./me.js\": 68577,\n\t\"./mi\": 68177,\n\t\"./mi.js\": 68177,\n\t\"./mk\": 50337,\n\t\"./mk.js\": 50337,\n\t\"./ml\": 65260,\n\t\"./ml.js\": 65260,\n\t\"./mn\": 52325,\n\t\"./mn.js\": 52325,\n\t\"./mr\": 14695,\n\t\"./mr.js\": 14695,\n\t\"./ms\": 75334,\n\t\"./ms-my\": 37151,\n\t\"./ms-my.js\": 37151,\n\t\"./ms.js\": 75334,\n\t\"./mt\": 63570,\n\t\"./mt.js\": 63570,\n\t\"./my\": 97963,\n\t\"./my.js\": 97963,\n\t\"./nb\": 88028,\n\t\"./nb.js\": 88028,\n\t\"./ne\": 86638,\n\t\"./ne.js\": 86638,\n\t\"./nl\": 50302,\n\t\"./nl-be\": 66782,\n\t\"./nl-be.js\": 66782,\n\t\"./nl.js\": 50302,\n\t\"./nn\": 33501,\n\t\"./nn.js\": 33501,\n\t\"./oc-lnc\": 50563,\n\t\"./oc-lnc.js\": 50563,\n\t\"./pa-in\": 50869,\n\t\"./pa-in.js\": 50869,\n\t\"./pl\": 65302,\n\t\"./pl.js\": 65302,\n\t\"./pt\": 49687,\n\t\"./pt-br\": 74884,\n\t\"./pt-br.js\": 74884,\n\t\"./pt.js\": 49687,\n\t\"./ro\": 79107,\n\t\"./ro.js\": 79107,\n\t\"./ru\": 33627,\n\t\"./ru.js\": 33627,\n\t\"./sd\": 30355,\n\t\"./sd.js\": 30355,\n\t\"./se\": 83427,\n\t\"./se.js\": 83427,\n\t\"./si\": 11848,\n\t\"./si.js\": 11848,\n\t\"./sk\": 54590,\n\t\"./sk.js\": 54590,\n\t\"./sl\": 20184,\n\t\"./sl.js\": 20184,\n\t\"./sq\": 56361,\n\t\"./sq.js\": 56361,\n\t\"./sr\": 78965,\n\t\"./sr-cyrl\": 81287,\n\t\"./sr-cyrl.js\": 81287,\n\t\"./sr.js\": 78965,\n\t\"./ss\": 25456,\n\t\"./ss.js\": 25456,\n\t\"./sv\": 70451,\n\t\"./sv.js\": 70451,\n\t\"./sw\": 77558,\n\t\"./sw.js\": 77558,\n\t\"./ta\": 51356,\n\t\"./ta.js\": 51356,\n\t\"./te\": 73693,\n\t\"./te.js\": 73693,\n\t\"./tet\": 21243,\n\t\"./tet.js\": 21243,\n\t\"./tg\": 42500,\n\t\"./tg.js\": 42500,\n\t\"./th\": 55768,\n\t\"./th.js\": 55768,\n\t\"./tk\": 77761,\n\t\"./tk.js\": 77761,\n\t\"./tl-ph\": 35780,\n\t\"./tl-ph.js\": 35780,\n\t\"./tlh\": 29590,\n\t\"./tlh.js\": 29590,\n\t\"./tr\": 33807,\n\t\"./tr.js\": 33807,\n\t\"./tzl\": 93857,\n\t\"./tzl.js\": 93857,\n\t\"./tzm\": 60654,\n\t\"./tzm-latn\": 8806,\n\t\"./tzm-latn.js\": 8806,\n\t\"./tzm.js\": 60654,\n\t\"./ug-cn\": 30845,\n\t\"./ug-cn.js\": 30845,\n\t\"./uk\": 19232,\n\t\"./uk.js\": 19232,\n\t\"./ur\": 47052,\n\t\"./ur.js\": 47052,\n\t\"./uz\": 77967,\n\t\"./uz-latn\": 32233,\n\t\"./uz-latn.js\": 32233,\n\t\"./uz.js\": 77967,\n\t\"./vi\": 98615,\n\t\"./vi.js\": 98615,\n\t\"./x-pseudo\": 12320,\n\t\"./x-pseudo.js\": 12320,\n\t\"./yo\": 31313,\n\t\"./yo.js\": 31313,\n\t\"./zh-cn\": 64490,\n\t\"./zh-cn.js\": 64490,\n\t\"./zh-hk\": 55910,\n\t\"./zh-hk.js\": 55910,\n\t\"./zh-mo\": 98262,\n\t\"./zh-mo.js\": 98262,\n\t\"./zh-tw\": 44223,\n\t\"./zh-tw.js\": 44223\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 46700;"],"names":[],"sourceRoot":"webpack:///"}