{"version":3,"sources":["./src/app/_animation/animate-when-reached/animate-when-reached.component.html","./src/app/layout-components/app.component.html","./src/app/layout-components/connect/connect.component.html","./src/app/layout-components/footer/footer.component.html","./src/app/layout-components/header/header.component.html","./src/app/layout-components/inner-layout/inner-layout.component.html","./src/app/layout-components/load-bar/load-bar.component.html","./src/app/layout-components/navigation/navigation.component.html","./src/app/layout-components/side-bar/side-bar.component.html","./src/app/page-components/about/about.component.html","./src/app/page-components/contact/contact.component.html","./src/app/page-components/home/home.component.html","./src/app/page-components/home/project/project.component.html","./src/app/page-components/project-detail/project-detail.component.html","./src/app/page-components/projects/project/project.component.html","./src/app/page-components/projects/projects.component.html","./src/app/utility-components/overlay/overlay.component.html","./node_modules/tslib/tslib.es6.js","./src/$_lazy_route_resource lazy namespace object","./src/app/_animation/animate-when-reached/animate-when-reached.component.less","./src/app/_animation/animate-when-reached/animate-when-reached.component.ts","./src/app/_animation/content-enter-animations.ts","./src/app/_animation/detail-transition-animations.ts","./src/app/_animation/route-transition-animation.ts","./src/app/_models/project.ts","./src/app/_models/text.ts","./src/app/_services/data/projects.ts","./src/app/_services/project.service.ts","./src/app/_services/viewport.service.ts","./src/app/app-routing.module.ts","./src/app/app.module.ts","./src/app/layout-components/app.component.less","./src/app/layout-components/app.component.ts","./src/app/layout-components/connect/connect.component.less","./src/app/layout-components/connect/connect.component.ts","./src/app/layout-components/footer/footer.component.less","./src/app/layout-components/footer/footer.component.ts","./src/app/layout-components/header/header.component.less","./src/app/layout-components/header/header.component.ts","./src/app/layout-components/inner-layout/inner-layout.component.less","./src/app/layout-components/inner-layout/inner-layout.component.ts","./src/app/layout-components/load-bar/load-bar.component.less","./src/app/layout-components/load-bar/load-bar.component.ts","./src/app/layout-components/navigation/navigation.component.less","./src/app/layout-components/navigation/navigation.component.ts","./src/app/layout-components/side-bar/side-bar.component.less","./src/app/layout-components/side-bar/side-bar.component.ts","./src/app/layout-components/side-connect/side-connect.component.less","./src/app/layout-components/side-connect/side-connect.component.ts","./src/app/layout-components/side-navigation/side-navigation.component.less","./src/app/layout-components/side-navigation/side-navigation.component.ts","./src/app/page-components/about/about.component.less","./src/app/page-components/about/about.component.ts","./src/app/page-components/contact/contact.component.less","./src/app/page-components/contact/contact.component.ts","./src/app/page-components/home/home.component.less","./src/app/page-components/home/home.component.ts","./src/app/page-components/home/project/project.component.less","./src/app/page-components/home/project/project.component.ts","./src/app/page-components/project-detail/project-detail.component.less","./src/app/page-components/project-detail/project-detail.component.ts","./src/app/page-components/projects/project/project.component.less","./src/app/page-components/projects/project/project.component.ts","./src/app/page-components/projects/projects.component.less","./src/app/page-components/projects/projects.component.ts","./src/app/utility-components/overlay/overlay.component.less","./src/app/utility-components/overlay/overlay.component.ts","./src/environments/environment.ts","./src/main.ts"],"names":[],"mappings":";;;;;;;;;;AAAA;AAAe,yO;;;;;;;;;;;;ACAf;AAAe,q0B;;;;;;;;;;;;ACAf;AAAe,mpB;;;;;;;;;;;;ACAf;AAAe,0FAA2B,kBAAkB,yE;;;;;;;;;;;;ACA5D;AAAe,oSAAqO,kC;;;;;;;;;;;;ACApP;AAAe,sZ;;;;;;;;;;;;ACAf;AAAe,+G;;;;;;;;;;;;ACAf;AAAe,qKAAsG,YAAY,4U;;;;;;;;;;;;ACAjI;AAAe,4HAA6D,WAAW,oO;;;;;;;;;;;;ACAvF;AAAe,mM;;;;;;;;;;;;ACAf;AAAe,+K;;;;;;;;;;;;ACAf;AAAe,wMAAyI,qV;;;;;;;;;;;;ACAxJ;AAAe,4FAA6B,YAAY,+BAA+B,eAAe,yCAAyC,qCAAqC,+CAA+C,sCAAsC,uEAAuE,eAAe,sCAAsC,qBAAqB,iB;;;;;;;;;;;;ACA1Z;AAAe,wWAAyS,wBAAwB,2EAA2E,6GAA6G,0IAA0I,oBAAoB,2EAA2E,0JAA0J,eAAe,2CAA2C,qCAAqC,+CAA+C,sCAAsC,yBAAyB,qBAAqB,iEAAiE,eAAe,6C;;;;;;;;;;;;ACA7rC;AAAe,4FAA6B,YAAY,oCAAoC,eAAe,+CAA+C,qCAAqC,+CAA+C,sCAAsC,uEAAuE,eAAe,sCAAsC,qBAAqB,kB;;;;;;;;;;;;ACAra;AAAe,iTAAkP,2X;;;;;;;;;;;;ACAjQ;AAAe,mE;;;;;;;;;;;;ACAf;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA,+DAA+D;AAC/D;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,UAAU,gBAAgB,sCAAsC,iBAAiB,EAAE;AACnF,yBAAyB,uDAAuD;AAChF;AACA;;AAEO;AACP;AACA,mBAAmB,sBAAsB;AACzC;AACA;;AAEO;AACP;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA,4DAA4D,cAAc;AAC1E;AACA;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA,4CAA4C,QAAQ;AACpD;AACA;;AAEO;AACP,mCAAmC,oCAAoC;AACvE;;AAEO;AACP;AACA;;AAEO;AACP;AACA,mCAAmC,MAAM,6BAA6B,EAAE,YAAY,WAAW,EAAE;AACjG,kCAAkC,MAAM,iCAAiC,EAAE,YAAY,WAAW,EAAE;AACpG,+BAA+B,iEAAiE,uBAAuB,EAAE,4BAA4B;AACrJ;AACA,KAAK;AACL;;AAEO;AACP,aAAa,6BAA6B,0BAA0B,aAAa,EAAE,qBAAqB;AACxG,gBAAgB,qDAAqD,oEAAoE,aAAa,EAAE;AACxJ,sBAAsB,sBAAsB,qBAAqB,GAAG;AACpE;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC;AACvC,kCAAkC,SAAS;AAC3C,kCAAkC,WAAW,UAAU;AACvD,yCAAyC,cAAc;AACvD;AACA,6GAA6G,OAAO,UAAU;AAC9H,gFAAgF,iBAAiB,OAAO;AACxG,wDAAwD,gBAAgB,QAAQ,OAAO;AACvF,8CAA8C,gBAAgB,gBAAgB,OAAO;AACrF;AACA,iCAAiC;AACjC;AACA;AACA,SAAS,YAAY,aAAa,OAAO,EAAE,UAAU,WAAW;AAChE,mCAAmC,SAAS;AAC5C;AACA;;AAEO;AACP;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,MAAM,gBAAgB;AACzC;AACA;AACA;AACA;AACA,iBAAiB,sBAAsB;AACvC;AACA;AACA;;AAEO;AACP,4BAA4B,sBAAsB;AAClD;AACA;AACA;;AAEO;AACP,iDAAiD,QAAQ;AACzD,wCAAwC,QAAQ;AAChD,wDAAwD,QAAQ;AAChE;AACA;AACA;;AAEO;AACP;AACA;;AAEO;AACP;AACA;AACA,iBAAiB,sFAAsF,aAAa,EAAE;AACtH,sBAAsB,gCAAgC,qCAAqC,0CAA0C,EAAE,EAAE,GAAG;AAC5I,2BAA2B,MAAM,eAAe,EAAE,YAAY,oBAAoB,EAAE;AACpF,sBAAsB,oGAAoG;AAC1H,6BAA6B,uBAAuB;AACpD,4BAA4B,wBAAwB;AACpD,2BAA2B,yDAAyD;AACpF;;AAEO;AACP;AACA,iBAAiB,4CAA4C,SAAS,EAAE,qDAAqD,aAAa,EAAE;AAC5I,yBAAyB,6BAA6B,oBAAoB,gDAAgD,gBAAgB,EAAE,KAAK;AACjJ;;AAEO;AACP;AACA;AACA,2GAA2G,sFAAsF,aAAa,EAAE;AAChN,sBAAsB,8BAA8B,gDAAgD,uDAAuD,EAAE,EAAE,GAAG;AAClK,4CAA4C,sCAAsC,UAAU,oBAAoB,EAAE,EAAE,UAAU;AAC9H;;AAEO;AACP,gCAAgC,uCAAuC,aAAa,EAAE,EAAE,OAAO,kBAAkB;AACjH;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;;AAEO;AACP,4CAA4C;AAC5C;;;;;;;;;;;;ACnMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA,4CAA4C,WAAW;AACvD;AACA;AACA,4E;;;;;;;;;;;;ACZA;AAAe,6GAA8C,mM;;;;;;;;;;;;;;;;;;;ACA0B;AAClB;AACY;AAQjF,IAAa,2BAA2B,GAAxC,MAAa,2BAA2B;IAgBtC,YAAoB,eAAgC;QAAhC,oBAAe,GAAf,eAAe,CAAiB;QAd5C,oBAAe,GAAY,KAAK,CAAC;QACjC,WAAM,GAAY,KAAK,CAAC;IAauB,CAAC;IAVb,QAAQ,CAAC,KAAK;QACvD,IAAI,CAAC,YAAY,EAAE,CAAC;IACtB,CAAC;IAEO,YAAY;QAClB,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;SACxH;IACH,CAAC;IAKD,QAAQ;QACN,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,EAAE;YAC9C,UAAU,CAAC,GAAG,EAAE;gBACd,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;gBACnB,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,CAAC,EAAE,GAAG,CAAC;QACT,CAAC,CAAC;IAEJ,CAAC;CAEF;;YAbsC,iFAAe;;AAZZ;IAAvC,+DAAS,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;oEAAkB,wDAAU;oEAAC;AAEzB;IAA1C,kEAAY,CAAC,eAAe,EAAE,CAAC,QAAQ,CAAC,CAAC;;;;2DAEzC;AARU,2BAA2B;IANvC,+DAAS,CAAC;QACT,QAAQ,EAAE,sBAAsB;QAChC,2QAAoD;QAEpD,UAAU,EAAE,CAAC,wFAAoB,CAAC;;KACnC,CAAC;2EAiBqC,iFAAe;GAhBzC,2BAA2B,CA6BvC;AA7BuC;;;;;;;;;;;;;;;;;;;;;ACGX;AAEtB,MAAM,gBAAgB,GAAG,mEAAO,CAAC,SAAS,EAAE;IACjD,iEAAK,CAAC,OAAO,EAAE,iEAAK,CAAC;QACnB,OAAO,EAAE,CAAC;KACX,CAAC,CAAC;IACH,sEAAU,CAAC,gBAAgB,EAAE;QAC3B,iEAAK,CAAC;YACJ,OAAO,EAAE,CAAC;SAEX,CAAC;QACF,iEAAK,CAAC,UAAU,EAAE;YAChB,iEAAK,CAAC;gBACJ,OAAO,EAAE,CAAC;gBACV,SAAS,EAAE,YAAY;aACxB,CAAC;YACF,mEAAO,CAAC,KAAK,EAAE;gBACb,mEAAO,CAAC,KAAK,EAAE,iEAAK,CAAC;oBACnB,OAAO,EAAE,CAAC;oBACV,SAAS,EAAE,UAAU;iBACtB,CAAC,CAAC;aACJ,CAAC;SACH,CAAC;KACH,CAAC;CACH,CAAC,CAAC;AAEI,MAAM,eAAe,GAAG,mEAAO,CAAC,QAAQ,EAAE;IAC/C,iEAAK,CAAC,OAAO,EAAE,iEAAK,CAAC;QACnB,OAAO,EAAE,CAAC;KACX,CAAC,CAAC;IACH,iEAAK,CAAC,MAAM,EAAE,iEAAK,CAAC;QAClB,OAAO,EAAE,CAAC;KACX,CAAC,CAAC;IACH,sEAAU,CAAC,gBAAgB,EAAE;QACvB,mEAAO,CAAC,KAAK,CAAC;KACnB,CAAC;CACH,CAAC,CAAC;AAEI,MAAM,qBAAqB,GAAG,mEAAO,CAAC,cAAc,EAAE;IAC3D,iEAAK,CAAC,OAAO,EAAE,iEAAK,CAAC;QACnB,OAAO,EAAE,CAAC;QACV,SAAS,EAAE,kBAAkB;KAC9B,CAAC,CAAC;IACH,iEAAK,CAAC,MAAM,EAAE,iEAAK,CAAC;QAClB,OAAO,EAAE,CAAC;QACV,SAAS,EAAE,eAAe;KAC3B,CAAC,CAAC;IACH,sEAAU,CAAC,gBAAgB,EAAE;QAC3B,mEAAO,CAAC,KAAK,CAAC;KACf,CAAC;CACH,CAAC,CAAC;AAEI,MAAM,oBAAoB,GAAG,mEAAO,CAAC,aAAa,EAAE;IACzD,iEAAK,CAAC,OAAO,EAAE,iEAAK,CAAC;QACnB,OAAO,EAAE,CAAC;QACV,SAAS,EAAE,mBAAmB;KAC/B,CAAC,CAAC;IACH,iEAAK,CAAC,MAAM,EAAE,iEAAK,CAAC;QAClB,OAAO,EAAE,CAAC;QACV,SAAS,EAAE,eAAe;KAC3B,CAAC,CAAC;IACH,sEAAU,CAAC,gBAAgB,EAAE;QAC3B,mEAAO,CAAC,KAAK,CAAC;KACf,CAAC;CACH,CAAC,CAAC;;;;;;;;;;;;;;;;;;;ACrE0B;AAE7B,MAAM,IAAI,GAAW,OAAO,CAAC;AAEtB,MAAM,iBAAiB,GAA6B,mEAAO,CAAC,mBAAmB,EAAE;IACtF,iEAAK,CAAC,MAAM,EAAE,iEAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IAEpC,sEAAU,CAAC,eAAe,EAAE;QAC1B,iEAAK,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;QACjD,mEAAO,CAAC,IAAI,EAAE,iEAAK,CAAC,EAAE,SAAS,EAAE,kBAAkB,EAAE,CAAC,CAAC;KACxD,CAAC;IAEF,sEAAU,CAAC,eAAe,EAAE;QAC1B,iEAAK,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC;QACzC,mEAAO,CAAC,IAAI,EAAE,iEAAK,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;KACjE,CAAC;CACH,CAAC,CAAC;AAEI,MAAM,kBAAkB,GAA6B,mEAAO,CAAC,oBAAoB,EAAE;IACxF,iEAAK,CAAC,MAAM,EAAE,iEAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IACpC,sEAAU,CAAC,eAAe,EAAE;QAC1B,iEAAK,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;QACjD,mEAAO,CAAC,IAAI,EAAE,iEAAK,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC,CAAC;KACzD,CAAC;IACF,sEAAU,CAAC,eAAe,EAAE;QAC1B,iEAAK,CAAC,EAAE,SAAS,EAAE,kBAAkB,EAAE,CAAC;QACxC,mEAAO,CAAC,IAAI,EAAE,iEAAK,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;KACjE,CAAC;CACH,CAAC,CAAC;;;;;;;;;;;;;;;;;;ACzB0B;AAEtB,MAAM,wBAAwB,GAA6B,mEAAO,CAAC,iBAAiB,EAAE;IAC3F,sEAAU,CAAC,SAAS,EAAE;QACpB,iEAAK,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;QAC/B,iEAAK,CAAC,gBAAgB,EAAE;YACtB,iEAAK,CAAC;gBACJ,QAAQ,EAAE,UAAU;gBACpB,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,CAAC;gBACP,KAAK,EAAE,CAAC;aACT,CAAC;SACH,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QACtB,iEAAK,CAAC,QAAQ,EACZ;YACE,iEAAK,CAAC;gBACJ,OAAO,EAAE,CAAC;aACX,CAAC;SACH,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CACtB;QACD,iEAAK,CAAC,QAAQ,EACZ;YACE,iEAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;YACrB,mEAAO,CAAC,MAAM,EAAE,iEAAK,CAAC;gBACpB,OAAO,EAAE,CAAC;aAEX,CAAC,CAAC;SACJ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CACtB;QACD,iEAAK,CAAC,QAAQ,EAAE;YACd,iEAAK,CAAC,IAAI,EAAE,CAAC,wEAAY,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;SAChD,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CACtB;QAED;;;;;;;;UAQE;KACH,CAAC;CACH,CAAC,CAAC;;;;;;;;;;;;;;;;;ACpDI,MAAM,OAAO;CAUnB;;;;;;;;;;;;;;;;;ACXM,MAAM,IAAI;CAMhB;;;;;;;;;;;;;;;;;;ACP2C;AAGrC,MAAM,QAAQ,GAAc;IACjC;QACE,EAAE,EAAE,CAAC;QACL,KAAK,EAAE,kBAAkB;QACzB,WAAW,EAAE,gCAAgC;QAC7C,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC;QAC9B,QAAQ,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC;QAC9B,KAAK,EAAE,sEAAsE;QAC7E,OAAO,EAAE;YACP,MAAM,CAAC,MAAM,CAAC,IAAI,wDAAI,EAAE,EAAE;gBACxB,EAAE,EAAE,CAAC;gBACL,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,CAAC;aACZ,CAAC;SACH;KACF;IACD;QACE,EAAE,EAAE,CAAC;QACL,KAAK,EAAE,OAAO;QACd,WAAW,EAAE,8CAA8C;QAC3D,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC;QAC7B,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,iDAAiD;QACxD,OAAO,EAAE,EAAE;KACZ;IACD;QACE,EAAE,EAAE,CAAC;QACL,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,0FAA0F;QACvG,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,IAAI,IAAI,CAAC,YAAY,CAAC;QAC/B,QAAQ,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC;QAC/B,KAAK,EAAE,qDAAqD;QAC5D,OAAO,EAAE,EAAE;KACZ;IACD;QACE,EAAE,EAAE,CAAC;QACL,KAAK,EAAE,OAAO;QACd,WAAW,EAAE,oEAAoE;QACjF,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC;QAC7B,QAAQ,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC;QAC/B,KAAK,EAAE,iDAAiD;QACxD,OAAO,EAAE,EAAE;KACZ;IACD;QACE,EAAE,EAAE,CAAC;QACL,KAAK,EAAE,uBAAuB;QAC9B,WAAW,EAAE,2FAA2F;QACxG,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC;QAC9B,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,0DAA0D;QACjE,OAAO,EAAE,EAAE;KACZ;IACD;QACE,EAAE,EAAE,CAAC;QACL,KAAK,EAAE,gBAAgB;QACvB,WAAW,EAAE,+EAA+E;QAC5F,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC;QAC9B,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,4DAA4D;QACnE,OAAO,EAAE,EAAE;KACZ;IACD;QACE,EAAE,EAAE,CAAC;QACL,KAAK,EAAE,mBAAmB;QAC1B,WAAW,EAAE,gFAAgF;QAC7F,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC;QAC9B,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,4DAA4D;QACnE,OAAO,EAAE,EAAE;KACZ;IACD;QACE,EAAE,EAAE,CAAC;QACL,KAAK,EAAE,iBAAiB;QACxB,WAAW,EAAE,yFAAyF;QACtG,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC;QAC9B,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,mDAAmD;QAC1D,OAAO,EAAE,EAAE;KACZ;IACD;QACE,EAAE,EAAE,CAAC;QACL,KAAK,EAAE,gBAAgB;QACvB,WAAW,EAAE,2FAA2F;QACxG,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,IAAI,IAAI,CAAC,YAAY,CAAC;QAC/B,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,kDAAkD;QACzD,OAAO,EAAE,EAAE;KACZ;IACD;QACE,EAAE,EAAE,EAAE;QACN,KAAK,EAAE,gBAAgB;QACvB,WAAW,EAAE,0EAA0E;QACvF,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC;QAC7B,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,8DAA8D;QACrE,OAAO,EAAE,EAAE;KACZ;IACD;QACE,EAAE,EAAE,EAAE;QACN,KAAK,EAAE,gBAAgB;QACvB,WAAW,EAAE,4CAA4C;QACzD,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,IAAI,IAAI,CAAC,YAAY,CAAC;QAC/B,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,wDAAwD;QAC/D,OAAO,EAAE,EAAE;KACZ;IACD;QACE,EAAE,EAAE,EAAE;QACN,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,sBAAsB;QACnC,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC;QAC9B,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,iDAAiD;QACxD,OAAO,EAAE,EAAE;KACZ;CACF,CAAC,IAAI,CAAC,CAAC,CAAU,EAAE,CAAU,EAAU,EAAE,GAAG,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;ACpInF;AACL;AAEK;AAM3C,IAAa,cAAc,GAA3B,MAAa,cAAc;IAEzB,gBAAgB,CAAC;IAEjB,KAAK;QACH,OAAO,+CAAE,CAAC,uDAAQ,CAAC,CAAC;IACtB,CAAC;IAED,MAAM,CAAC,KAAa;QAClB,OAAO,+CAAE,CAAC,uDAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;IACtC,CAAC;IAED,GAAG,CAAC,EAAU;QACZ,OAAO,+CAAE,CAAC,uDAAQ,CAAC,IAAI,CAAC,CAAC,OAAgB,EAAE,EAAE,GAAG,OAAO,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/E,CAAC;IAED,OAAO,CAAC,EAAU;QAEhB,IAAI,OAAO,GAAY,uDAAQ,CAAC,IAAI,CAAC,CAAC,OAAgB,EAAE,EAAE;YACxD,OAAO,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC;QAC3B,CAAC,CAAC,CAAC;QACH,IAAI,KAAK,GAAW,uDAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC9C,KAAK,EAAE,CAAC;QACR,IAAI,KAAK,GAAG,uDAAQ,CAAC,MAAM,EAAE;YAC3B,OAAO,+CAAE,CAAC,uDAAQ,CAAC,KAAK,CAAC,CAAC;SAC3B;QACD,OAAO,+CAAE,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC;IAED,WAAW,CAAC,EAAU;QACpB,IAAI,OAAO,GAAY,uDAAQ,CAAC,IAAI,CAAC,CAAC,OAAgB,EAAE,EAAE;YACxD,OAAO,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC;QAC3B,CAAC,CAAC,CAAC;QACH,IAAI,KAAK,GAAW,uDAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC9C,KAAK,EAAE,CAAC;QACR,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnB,IAAI,KAAK,IAAI,CAAC,EAAE;YACd,OAAO,+CAAE,CAAC,uDAAQ,CAAC,KAAK,CAAC,CAAC;SAC3B;QACD,OAAO,+CAAE,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC;CACF;AAzCY,cAAc;IAH1B,gEAAU,CAAC;QACV,UAAU,EAAE,MAAM;KACnB,CAAC;;GACW,cAAc,CAyC1B;AAzC0B;;;;;;;;;;;;;;;;;;;;;ACTe;AAC2B;AAC6B;AACnD;AAK/C,IAAa,eAAe,GAA5B,MAAa,eAAe;IAI1B,YAAoB,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;QAF1B,wBAAmB,GAAqB,IAAI,CAAC;QAiE7C,cAAS,GAAsB,sDAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAmB3D,eAAU,GAAW,CAAC,CAAC;QAhF7B,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAE9B,IAAI,CAAC,mBAAmB,GAAG,IAAI,+CAAU,CAAO,CAAC,QAAQ,EAAE,EAAE;YAG3D,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;YAE/B,MAAM,CAAC,MAAM;iBACV,IAAI,CACL,6DAAM,CAAC,CAAC,KAAkB,EAAE,EAAE,CAAC,KAAK,YAAY,6DAAa,IAAI,KAAK,CAAC,EAAE,KAAK,SAAS,CAAC,CACvF;iBACA,SAAS,CAAC,CAAC,KAAkB,EAAE,EAAE;gBAEhC,IAAI,oBAAoB,GAAiB,IAAI,CAAC;gBAC9C,IAAI,qBAAqB,GAAiB,IAAI,CAAC;gBAE/C,OAAO,CAAC,GAAG,CAAC,eAAe,GAAG,KAAK,CAAC,GAAG,GAAG,cAAc,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC;gBAErE,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;gBACxB,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;gBAE5B,IAAI,oBAAoB,IAAI,IAAI,EAAE;oBAChC,oBAAoB,CAAC,WAAW,EAAE,CAAC;oBACnC,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;iBAC7C;gBACD,IAAI,qBAAqB,IAAI,IAAI,EAAE;oBACjC,qBAAqB,CAAC,WAAW,EAAE,CAAC;oBACpC,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;iBAClD;gBAGD,IAAI,mBAAmB,GAAqB,IAAI,+CAAU,CAAO,CAAC,QAAQ,EAAE,EAAE;oBAC5E,MAAM,iBAAiB,GAAW,GAAG,CAAC;oBACtC,UAAU,CAAC,GAAG,EAAE;wBACd,QAAQ,CAAC,QAAQ,EAAE,CAAC;oBACtB,CAAC,EAAE,iBAAiB,CAAC,CAAC;gBACxB,CAAC,CAAC;gBAEF,oBAAoB,GAAG,mBAAmB,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;oBACpE,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;oBAC3B,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;oBAE/B,IAAI,sBAAsB,GAAmC,IAAI,CAAC,aAAa,EAAE,CAAC;oBAClF,qBAAqB,GAAG,sBAAsB,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC9F,CAAC,CAAC,CAAC;YAGL,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC,IAAI,CAAC,4DAAK,EAAE,CAAC,CAAC;QAEjB,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAElG,sDAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE;YACzC,IAAI,CAAC,UAAU,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QAC/E,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,CAAC;IAGD,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAGD,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;IACjD,CAAC;IAGD,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAGD,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC;IAC9C,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,eAAe,CAAC,YAAY,EAAE,MAAM,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC;IAClF,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,QAAQ,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,YAAY,CAAC;IAChE,CAAC;IAED,IAAI,aAAa;QACf,OAAO,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC;IAChC,CAAC;IAED,IAAI,gBAAgB;QAClB,IAAI,MAAM,GAAY,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,UAAU,CAAC;QAC5D,OAAO,MAAM,CAAC;IAChB,CAAC;IAEM,WAAW;QAChB,MAAM,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IAC9B,CAAC;IAEM,cAAc,CAAC,OAAoB,EAAE,gBAAwB,GAAG;QACrE,IAAI,cAAc,GAAW,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,eAAe,CAAC,YAAY,EAAE,MAAM,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC;QACtG,IAAI,iBAAiB,GAAY,CAAC,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC;QACrG,OAAO,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC,GAAG,GAAG,cAAc,GAAG,aAAa,IAAI,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACzG,CAAC;IAEM,aAAa;QAClB,IAAI,MAAM,GAAuC,QAAQ,CAAC,MAAM,CAAC,CAAC,sCAAsC;QACxG,IAAI,oBAAoB,GAAmC,EAAE,CAAC;QAE9D,OAAO,CAAC,GAAG,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,GAAG,2BAA2B,CAAC,CAAC;QACxE,IAAI,gBAAgB,GAAW,CAAC,CAAC;QACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,gBAAgB;YACxD,IAAI,mBAAmB,GAAiC,IAAI,+CAAU,CAAmB,CAAC,GAAiC,EAAE,EAAE;gBAC7H,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,EAAE,qIAAqI;oBACrL,GAAG,CAAC,QAAQ,EAAE,CAAC;iBAChB;qBACI;oBACH,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,GAAG,EAAE,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,6CAA6C;oBAChG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,GAAG,EAAE,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,iDAAiD;oBACrG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,iDAAiD;wBAC9E,GAAG,CAAC,QAAQ,EAAE,CAAC;qBAChB;iBACF;YACH,CAAC,CAAC,CAAC,IAAI,CAAC,4DAAK,EAAE,CAAC,CAAC;YAEjB,oBAAoB,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YAC/C,mBAAmB,CAAC,SAAS,CAAC,CAAC,KAAuB,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,KAAK,CAAC,GAAG,CAAC,EAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,gBAAgB,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACpM;QAED,OAAO,0DAAa,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,4DAAK,EAAE,CAAC,CAAC;IAC3D,CAAC;CACF;;YAhJ6B,sDAAM;;AAJvB,eAAe;IAH3B,gEAAU,CAAC;QACV,UAAU,EAAE,MAAM;KACnB,CAAC;2EAK4B,sDAAM;GAJvB,eAAe,CAoJ3B;AApJ2B;;;;;;;;;;;;;;;;;;;;;;;;ACRa;AACc;AACkB;AACM;AACG;AACZ;AAC6B;AAEnG,MAAM,MAAM,GAAW;IACrB,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,qFAAc,EAAE;IAC5C,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,2FAAgB,EAAE;IAChD,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,8FAAiB,EAAE;IAClD,EAAE,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,+GAAsB,EAAE;IAC3D,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,kFAAa,EAAE;CACvC,CAAC;AAMF,IAAa,gBAAgB,GAA7B,MAAa,gBAAgB;CAAI;AAApB,gBAAgB;IAJ5B,8DAAQ,CAAC;QACR,OAAO,EAAE,CAAC,4DAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACvC,OAAO,EAAE,CAAC,4DAAY,CAAC;KACxB,CAAC;GACW,gBAAgB,CAAI;AAAJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACpB6B;AACjB;AACsC;AAEvB;AACS;AACa;AACA;AACY;AACX;AACN;AACS;AACZ;AACW;AACE;AACD;AACa;AACA;AACS;AAChB;AACoB;AACzB;AAC4B;AACX;AAgCpG,IAAa,SAAS,GAAtB,MAAa,SAAS;CAAI;AAAb,SAAS;IA9BrB,8DAAQ,CAAC;QACR,YAAY,EAAE;YACZ,6EAAY;YACZ,0FAAe;YACf,0FAAe;YACf,sGAAmB;YACnB,2FAAgB;YAChB,sFAAc;YACd,+FAAiB;YACjB,mFAAa;YACb,8FAAgB;YAChB,gGAAgB;YAChB,+FAAgB;YAChB,4GAAoB;YACpB,4GAAoB;YACpB,qHAAuB;YACvB,qGAAgB;YAChB,iGAAoB;YACpB,gGAAgB;YAChB,2HAA2B;YAC3B,gHAAsB;SACvB;QACD,OAAO,EAAE;YACP,uEAAa;YACb,oEAAgB;YAChB,4FAAuB;SACxB;QACD,SAAS,EAAE,EAAE;QACb,SAAS,EAAE,CAAC,6EAAY,CAAC;KAC1B,CAAC;GACW,SAAS,CAAI;AAAJ;;;;;;;;;;;;;ACvDtB;AAAe,uEAAQ,uBAAuB,gBAAgB,iBAAiB,GAAG,mBAAmB,gBAAgB,yBAAyB,kBAAkB,iCAAiC,kCAAkC,mCAAmC,8BAA8B,gCAAgC,GAAG,SAAS,iBAAiB,uBAAuB,GAAG,WAAW,oBAAoB,eAAe,0CAA0C,GAAG,oBAAoB,qBAAqB,gBAAgB,mBAAmB,iBAAiB,GAAG,aAAa,qBAAqB,oBAAoB,iBAAiB,aAAa,GAAG,sBAAsB,oBAAoB,GAAG,WAAW,wBAAwB,yBAAyB,GAAG,YAAY,wBAAwB,2BAA2B,sBAAsB,GAAG,YAAY,oBAAoB,gBAAgB,kBAAkB,GAAG,mBAAmB,iBAAiB,gBAAgB,GAAG,+CAA+C,unG;;;;;;;;;;;;;;;;;;;;ACA57B;AACoB;AAYvD;AACmC;AAyChE,IAAa,YAAY,GAAzB,MAAa,YAAY;IAGvB,YAAoB,eAAgC;QAAhC,oBAAe,GAAf,eAAe,CAAiB;QAClD,eAAe,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,EAAE;YACzC,eAAe,CAAC,WAAW,EAAE,CAAC;QAChC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,QAAQ;IAER,CAAC;CACF;;YATsC,0EAAe;;AAHzC,YAAY;IAvCxB,+DAAS,CAAC;QACT,QAAQ,EAAE,UAAU;QACpB,2NAAmC;QAEnC,UAAU,EAAE;YACV,8FAAwB;YACxB,mEAAO,CAAC,WAAW,EAAE;gBACnB,iEAAK,CAAC,MAAM,EAAE,iEAAK,CAAC;oBAChB,IAAI,EAAE,OAAO;iBACd,CAAC,CACH;gBACD,iEAAK,CAAC,OAAO,EAAE,iEAAK,CAAC;oBACjB,IAAI,EAAE,CAAC;iBACR,CAAC,CACH;gBACD,sEAAU,CAAC,gBAAgB,EAAE;oBAC3B,iEAAK,CAAC;wBACJ,iEAAK,CAAC,IAAI,EAAE,CAAC,wEAAY,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;wBACjD,mEAAO,CAAC,KAAK,CAAC;qBACf,CAAC;iBACH,CAAC;aACH,CAAC;YACF,mEAAO,CAAC,YAAY,EAAE;gBACpB,iEAAK,CAAC,MAAM,EAAE,iEAAK,CAAC;oBAClB,eAAe,EAAE,qBAAqB;oBACtC,YAAY,EAAE,+BAA+B;iBAC9C,CAAC,CACD;gBACD,iEAAK,CAAC,OAAO,EAAE,iEAAK,CAAC;oBACnB,eAAe,EAAE,uBAAuB;oBACxC,YAAY,EAAE,oBAAoB;iBACnC,CAAC,CACD;gBACD,sEAAU,CAAC,gBAAgB,EAAE;oBAC3B,mEAAO,CAAC,KAAK,CAAC;iBACf,CAAC;aACH,CAAC;SACH;;KACF,CAAC;2EAIqC,0EAAe;GAHzC,YAAY,CAYxB;AAZwB;;;;;;;;;;;;;ACvDzB;AAAe,uEAAQ,aAAa,wCAAwC,wCAAwC,aAAa,qBAAqB,gBAAgB,oBAAoB,yBAAyB,kBAAkB,iCAAiC,kCAAkC,mCAAmC,8BAA8B,2CAA2C,6BAA6B,oCAAoC,qBAAqB,gBAAgB,6BAA6B,qBAAqB,GAAG,KAAK,2BAA2B,iCAAiC,iBAAiB,uCAAuC,uCAAuC,gBAAgB,kBAAkB,kBAAkB,qBAAqB,6BAA6B,qBAAqB,GAAG,OAAO,qBAAqB,uBAAuB,kBAAkB,6BAA6B,qBAAqB,GAAG,WAAW,uCAAuC,uCAAuC,GAAG,eAAe,eAAe,GAAG,8CAA8C,WAAW,iBAAiB,KAAK,GAAG,+CAA+C,+1G;;;;;;;;;;;;;;;;;;ACA/nC;AAQzC;AAmB7B,IAAa,gBAAgB,GAA7B,MAAa,gBAAgB;IAQ3B;QAFS,SAAI,GAAY,KAAK,CAAC;IAEf,CAAC;IANU,IAAI,SAAS;QACtC,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAMD,QAAQ;IACR,CAAC;CAEF;AAX4B;IAA1B,iEAAW,CAAC,YAAY,CAAC;;;iDAEzB;AAEQ;IAAR,2DAAK,EAAE;;8CAAuB;AANpB,gBAAgB;IAjB5B,+DAAS,CAAC;QACT,QAAQ,EAAE,aAAa;QACvB,2OAAuC;QACvC,UAAU,EAAE;YACV,mEAAO,CAAC,WAAW,EAAE;gBACnB,iEAAK,CAAC,MAAM,EAAE,iEAAK,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC3C,iEAAK,CAAC,OAAO,EAAE,iEAAK,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC1C,sEAAU,CAAC,eAAe,EAAE;oBAC1B,mEAAO,CAAC,KAAK,CAAC;iBACf,CAAC;gBACF,sEAAU,CAAC,eAAe,EAAE;oBAC1B,mEAAO,CAAC,SAAS,CAAC;iBACnB,CAAC;aACH,CAAC;SACH;;KAEF,CAAC;;GACW,gBAAgB,CAa5B;AAb4B;;;;;;;;;;;;;AC3B7B;AAAe,uEAAQ,yBAAyB,kBAAkB,iCAAiC,kCAAkC,mCAAmC,0BAA0B,8BAA8B,8BAA8B,8BAA8B,8BAA8B,8BAA8B,gCAAgC,6BAA6B,oCAAoC,GAAG,cAAc,uBAAuB,GAAG,+CAA+C,+uC;;;;;;;;;;;;;;;;;ACA1d;AAOzD,IAAa,eAAe,GAA5B,MAAa,eAAe;IAE1B,gBAAgB,CAAC;IAEjB,QAAQ;IACR,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC;IAC7C,CAAC;CAEF;AAXY,eAAe;IAL3B,+DAAS,CAAC;QACT,QAAQ,EAAE,YAAY;QACtB,wOAAsC;;KAEvC,CAAC;;GACW,eAAe,CAW3B;AAX2B;;;;;;;;;;;;;ACP5B;AAAe,uEAAQ,yBAAyB,kBAAkB,8BAA8B,gCAAgC,8BAA8B,8BAA8B,8BAA8B,8BAA8B,qBAAqB,GAAG,OAAO,iBAAiB,sBAAsB,GAAG,eAAe,qCAAqC,qCAAqC,qCAAqC,qCAAqC,0CAA0C,0CAA0C,8CAA8C,8CAA8C,GAAG,SAAS,wBAAwB,2BAA2B,yBAAyB,kBAAkB,8BAA8B,gCAAgC,0BAA0B,sCAAsC,qBAAqB,GAAG,eAAe,oCAAoC,oCAAoC,6BAA6B,qBAAqB,qBAAqB,GAAG,gBAAgB,sBAAsB,mBAAmB,GAAG,6CAA6C,iBAAiB,mCAAmC,mCAAmC,iBAAiB,KAAK,GAAG,oCAAoC,QAAQ,0CAA0C,0CAA0C,KAAK,SAAS,8CAA8C,8CAA8C,KAAK,SAAS,0CAA0C,0CAA0C,KAAK,SAAS,8CAA8C,8CAA8C,KAAK,UAAU,0CAA0C,0CAA0C,KAAK,GAAG,4BAA4B,QAAQ,0CAA0C,0CAA0C,KAAK,SAAS,8CAA8C,8CAA8C,KAAK,SAAS,0CAA0C,0CAA0C,KAAK,SAAS,8CAA8C,8CAA8C,KAAK,UAAU,0CAA0C,0CAA0C,KAAK,GAAG,+CAA+C,mqI;;;;;;;;;;;;;;;;;ACA/yE;AAOxE,IAAa,eAAe,GAA5B,MAAa,eAAe;IAI1B;QAFU,oBAAe,GAAuB,IAAI,0DAAY,EAAQ,CAAC;IAEzD,CAAC;IAEjB,UAAU;QACR,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,QAAQ;IACR,CAAC;CAEF;AAXW;IAAT,4DAAM,EAAE;oEAAkB,0DAAY;wDAAkC;AAF9D,eAAe;IAL3B,+DAAS,CAAC;QACT,QAAQ,EAAE,YAAY;QACtB,wOAAsC;;KAEvC,CAAC;;GACW,eAAe,CAa3B;AAb2B;;;;;;;;;;;;;ACP5B;AAAe,uEAAQ,wBAAwB,2BAA2B,yBAAyB,kBAAkB,iCAAiC,kCAAkC,mCAAmC,+BAA+B,iCAAiC,iBAAiB,qBAAqB,gBAAgB,mBAAmB,GAAG,WAAW,wBAAwB,yBAAyB,GAAG,YAAY,wBAAwB,2BAA2B,kBAAkB,GAAG,iBAAiB,iCAAiC,gCAAgC,2BAA2B,iCAAiC,2BAA2B,yBAAyB,kBAAkB,iCAAiC,kCAAkC,mCAAmC,8BAA8B,2CAA2C,8BAA8B,gCAAgC,GAAG,+CAA+C,2hF;;;;;;;;;;;;;;;;;;;ACAv6B;AACM;AAEP;AASrE,IAAa,oBAAoB,GAAjC,MAAa,oBAAoB;IAI/B,YAAoB,eAAgC;QAAhC,oBAAe,GAAf,eAAe,CAAiB;QAF5C,eAAU,GAAW,MAAM,CAAC;QAU3B,cAAS,GAAY,KAAK,CAAC;QAC3B,4BAAuB,GAAY,KAAK,CAAC;IAPlD,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAKO,gBAAgB;QAEtB,IAAI,gBAAgB,GAAW,OAAO,CAAC,CAAC,2BAA2B;QAEnE,IAAI,aAAa,GAAgB,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,oBAAoB;QACxF,IAAI,aAAa,IAAI,IAAI,EAAE,EAAE,0BAA0B;YACrD,gBAAgB,GAAG,aAAa,CAAC,YAAY,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,CAAC,gDAAgD;SAClH;QAED,IAAI,cAAc,GAAgB,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,yBAAyB;QAC/F,IAAI,cAAc,IAAI,IAAI,EAAE,EAAE,+BAA+B;YAC3D,IAAI,eAAe,GAAW,QAAQ,gBAAgB,MAAM,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,iGAAiG;YACjL,cAAc,CAAC,KAAK,CAAC,UAAU,GAAG,eAAe,CAAC,CAAC,uFAAuF;SAC3I;IACH,CAAC;CACF;;YA1BsC,iFAAe;;AAQ3C;IAAR,2DAAK,EAAE;;uDAA4B;AAC3B;IAAR,2DAAK,EAAE;;qEAA0C;AAbvC,oBAAoB;IAPhC,+DAAS,CAAC;QACT,QAAQ,EAAE,kBAAkB;QAC5B,0PAA4C;QAE5C,UAAU,EAAE,CAAC,mFAAe,CAAC;;KAC9B,CAAC;2EAMqC,iFAAe;GAJzC,oBAAoB,CA8BhC;AA9BgC;;;;;;;;;;;;;ACZjC;AAAe,uEAAQ,oBAAoB,aAAa,cAAc,6CAA6C,6CAA6C,GAAG,+CAA+C,+0B;;;;;;;;;;;;;;;;;ACAhK;AAOlD,IAAa,gBAAgB,GAA7B,MAAa,gBAAgB;IAE3B,gBAAgB,CAAC;IAEjB,QAAQ;IACR,CAAC;CAEF;AAPY,gBAAgB;IAL5B,+DAAS,CAAC;QACT,QAAQ,EAAE,cAAc;QACxB,8OAAwC;;KAEzC,CAAC;;GACW,gBAAgB,CAO5B;AAP4B;;;;;;;;;;;;;ACP7B;AAAe,uEAAQ,yBAAyB,kBAAkB,8BAA8B,gCAAgC,0BAA0B,sCAAsC,GAAG,MAAM,mBAAmB,GAAG,KAAK,kBAAkB,iBAAiB,GAAG,WAAW,iBAAiB,GAAG,+CAA+C,+wC;;;;;;;;;;;;;;;;;ACAhR;AAOxE,IAAa,mBAAmB,GAAhC,MAAa,mBAAmB;IAI9B;QAFU,mBAAc,GAAuB,IAAI,0DAAY,EAAQ,CAAC;IAExD,CAAC;IAEjB,QAAQ;IACR,CAAC;IAED,SAAS;QACP,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;CAEF;AAXW;IAAT,4DAAM,EAAE;oEAAiB,0DAAY;2DAAkC;AAF7D,mBAAmB;IAL/B,+DAAS,CAAC;QACT,QAAQ,EAAE,gBAAgB;QAC1B,oPAA0C;;KAE3C,CAAC;;GACW,mBAAmB,CAa/B;AAb+B;;;;;;;;;;;;;ACPhC;AAAe,uEAAQ,yBAAyB,kBAAkB,iCAAiC,kCAAkC,mCAAmC,8BAA8B,gCAAgC,8BAA8B,8BAA8B,8BAA8B,8BAA8B,qBAAqB,oBAAoB,GAAG,oBAAoB,wBAAwB,2BAA2B,GAAG,eAAe,yBAAyB,sBAAsB,GAAG,kBAAkB,sBAAsB,qBAAqB,GAAG,cAAc,yBAAyB,kBAAkB,iCAAiC,kCAAkC,mCAAmC,8BAA8B,gCAAgC,8BAA8B,2CAA2C,wBAAwB,2BAA2B,gBAAgB,GAAG,+CAA+C,u1E;;;;;;;;;;;;;;;;;;ACAj7B;AAUlC;AAwC7B,IAAa,gBAAgB,GAA7B,MAAa,gBAAgB;IAoB3B;QAlBA,WAAM,GAAY,KAAK,CAAC;IAkBR,CAAC;IAhBU,IAAI,SAAS;QACtC,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAED,IAAI;QACF,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;IAC7B,CAAC;IAID,QAAQ;IACR,CAAC;CAEF;AArB4B;IAA1B,iEAAW,CAAC,YAAY,CAAC;;;iDAEzB;AANU,gBAAgB;IAtC5B,+DAAS,CAAC;QACT,QAAQ,EAAE,cAAc;QACxB,8OAAwC;QAExC,UAAU,EAAE;YACV,mEAAO,CAAC,WAAW,EAAE;gBACnB,iEAAK,CAAC,MAAM,EACV,iEAAK,CAAC;oBACJ,KAAK,EAAE,MAAM;iBACd,CAAC,CACH;gBACD,iEAAK,CAAC,OAAO,EACX,iEAAK,CAAC;oBACJ,KAAK,EAAE,GAAG;iBACX,CAAC,CACH;gBACD,sEAAU,CAAC,eAAe,EAAE;oBAC1B,iEAAK,CAAC;wBACJ,iEAAK,CAAC,YAAY,EAAE;4BAClB,mEAAO,CAAC,KAAK,EAAE,iEAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;yBACtC,CAAC;wBACF,mEAAO,CAAC,KAAK,CAAC;qBACf,CAAC;iBACH,CAAC;gBACF,sEAAU,CAAC,eAAe,EAAE;oBAC1B,iEAAK,CAAC,YAAY,EAAC;wBACjB,iEAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;qBACtB,CAAC;oBACF,iEAAK,CAAC;wBACJ,mEAAO,CAAC,KAAK,CAAC;wBACd,iEAAK,CAAC,YAAY,EAAE;4BAClB,mEAAO,CAAC,KAAK,EAAE,iEAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;yBACtC,CAAC;qBACH,CAAC;iBACH,CAAC;aACH,CAAC;SACH;;KACF,CAAC;;GACW,gBAAgB,CAyB5B;AAzB4B;;;;;;;;;;;;;AClD7B;AAAe,uEAAQ,2BAA2B,yBAAyB,kBAAkB,kCAAkC,gBAAgB,GAAG,OAAO,kBAAkB,6BAA6B,qBAAqB,iBAAiB,gBAAgB,GAAG,aAAa,eAAe,GAAG,+CAA+C,+3C;;;;;;;;;;;;;;;;;ACA7R;AAOlD,IAAa,oBAAoB,GAAjC,MAAa,oBAAoB;IAE/B,gBAAgB,CAAC;IAEjB,QAAQ;IACR,CAAC;CAEF;AAPY,oBAAoB;IALhC,+DAAS,CAAC;QACT,QAAQ,EAAE,kBAAkB;QAC5B,oPAAgD;;KAEjD,CAAC;;GACW,oBAAoB,CAOhC;AAPgC;;;;;;;;;;;;;ACPjC;AAAe,uEAAQ,yBAAyB,kBAAkB,+BAA+B,iCAAiC,iCAAiC,kCAAkC,mCAAmC,gBAAgB,GAAG,MAAM,mBAAmB,GAAG,KAAK,qBAAqB,kBAAkB,8BAA8B,6BAA6B,qBAAqB,GAAG,WAAW,8BAA8B,GAAG,WAAW,iBAAiB,GAAG,+CAA+C,2vD;;;;;;;;;;;;;;;;;ACAxc;AAOxE,IAAa,uBAAuB,GAApC,MAAa,uBAAuB;IAIlC;QAFU,mBAAc,GAAuB,IAAI,0DAAY,EAAQ,CAAC;IAExD,CAAC;IAEjB,QAAQ;IACR,CAAC;IAED,SAAS;QACP,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;CAEF;AAXW;IAAT,4DAAM,EAAE;oEAAiB,0DAAY;+DAAkC;AAF7D,uBAAuB;IALnC,+DAAS,CAAC;QACT,QAAQ,EAAE,qBAAqB;QAC/B,gQAAsD;;KAEvD,CAAC;;GACW,uBAAuB,CAanC;AAbmC;;;;;;;;;;;;;ACPpC;AAAe,6GAA8C,+J;;;;;;;;;;;;;;;;;;;ACAX;AACgC;AACb;AAQrE,IAAa,cAAc,GAA3B,MAAa,cAAc;IAEzB,YAAoB,eAAgC;QAAhC,oBAAe,GAAf,eAAe,CAAiB;IAAI,CAAC;IAEzD,QAAQ;IACR,CAAC;CAEF;;YALsC,iFAAe;;AAFzC,cAAc;IAN1B,+DAAS,CAAC;QACT,QAAQ,EAAE,WAAW;QACrB,mOAAqC;QAErC,UAAU,EAAE,CAAC,yFAAqB,CAAC;;KACpC,CAAC;2EAGqC,iFAAe;GAFzC,cAAc,CAO1B;AAP0B;;;;;;;;;;;;;ACV3B;AAAe,6GAA8C,uK;;;;;;;;;;;;;;;;;;;ACAX;AAC+B;AACZ;AAQrE,IAAa,gBAAgB,GAA7B,MAAa,gBAAgB;IAE3B,YAAoB,eAAgC;QAAhC,oBAAe,GAAf,eAAe,CAAiB;IAAI,CAAC;IAEzD,QAAQ;IACR,CAAC;CAEF;;YALsC,iFAAe;;AAFzC,gBAAgB;IAN5B,+DAAS,CAAC;QACT,QAAQ,EAAE,aAAa;QACvB,yOAAuC;QAEvC,UAAU,EAAE,CAAC,wFAAoB,CAAC;;KACnC,CAAC;2EAGqC,iFAAe;GAFzC,gBAAgB,CAO5B;AAP4B;;;;;;;;;;;;;ACV7B;AAAe,uEAAQ,yBAAyB,kBAAkB,iCAAiC,kCAAkC,mCAAmC,iBAAiB,GAAG,UAAU,iBAAiB,mBAAmB,oBAAoB,8BAA8B,8BAA8B,8BAA8B,8BAA8B,sCAAsC,iCAAiC,gCAAgC,2BAA2B,iCAAiC,GAAG,kBAAkB,uBAAuB,yBAAyB,kBAAkB,8BAA8B,gCAAgC,6BAA6B,oCAAoC,kBAAkB,eAAe,qBAAqB,iBAAiB,cAAc,wCAAwC,wCAAwC,sBAAsB,oBAAoB,qBAAqB,gBAAgB,2BAA2B,uBAAuB,eAAe,6CAA6C,6CAA6C,0CAA0C,0CAA0C,6BAA6B,qBAAqB,GAAG,wBAAwB,gBAAgB,uBAAuB,eAAe,GAAG,iBAAiB,wBAAwB,2BAA2B,kBAAkB,GAAG,oBAAoB,uBAAuB,yBAAyB,kBAAkB,uBAAuB,GAAG,sCAAsC,UAAU,iBAAiB,KAAK,QAAQ,iBAAiB,KAAK,GAAG,8BAA8B,UAAU,iBAAiB,KAAK,QAAQ,iBAAiB,KAAK,GAAG,+CAA+C,2lJ;;;;;;;;;;;;;;;;;;;;ACApuD;AAG0B;AACT;AACE;AAQrE,IAAa,aAAa,GAA1B,MAAa,aAAa;IAIxB,YAAoB,cAA8B,EAAU,eAAgC;QAAxE,mBAAc,GAAd,cAAc,CAAgB;QAAU,oBAAe,GAAf,eAAe,CAAiB;IAAI,CAAC;IAEjG,QAAQ;QACN,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;aAC1B,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC;IAGrD,CAAC;IAED,KAAK;QAEH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,GAAG,CAAC,EAAU;QAEZ,OAAO,IAAI,CAAC;IACd,CAAC;IAED,eAAe;QACb,IAAI,cAAc,GAAgB,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,CAAC,8BAA8B;QACzG,IAAI,cAAc,IAAI,IAAI,EAAE,EAAE,oCAAoC;YAChE,cAAc,CAAC,cAAc,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,sCAAsC;SAC9F;IAEH,CAAC;CAEF;;YA3BqC,+EAAc;YAA2B,iFAAe;;AAJjF,aAAa;IANzB,+DAAS,CAAC;QACT,QAAQ,EAAE,UAAU;QACpB,gOAAoC;QAEpC,UAAU,EAAE,CAAE,mFAAe,CAAE;;KAChC,CAAC;2EAKoC,+EAAc,EAA2B,iFAAe;GAJjF,aAAa,CA+BzB;AA/ByB;;;;;;;;;;;;;ACb1B;AAAe,mEAAI,kBAAkB,yBAAyB,0CAA0C,6BAA6B,mBAAmB,kBAAkB,kBAAkB,gFAAgF,8BAA8B,gCAAgC,6BAA6B,oCAAoC,qBAAqB,6BAA6B,qBAAqB,oBAAoB,wBAAwB,8BAA8B,+BAA+B,mBAAmB,8BAA8B,8BAA8B,8BAA8B,8BAA8B,GAAG,WAAW,4CAA4C,4CAA4C,8BAA8B,kDAAkD,kDAAkD,GAAG,OAAO,gBAAgB,yBAAyB,wBAAwB,GAAG,UAAU,qBAAqB,GAAG,SAAS,oBAAoB,sBAAsB,GAAG,UAAU,qBAAqB,GAAG,gBAAgB,2BAA2B,wBAAwB,GAAG,6CAA6C,OAAO,wCAAwC,+BAA+B,sFAAsF,KAAK,sBAAsB,2BAA2B,yBAAyB,KAAK,GAAG,+CAA+C,2gJ;;;;;;;;;;;;;;;;;;ACA19C;AACP;AAOlD,IAAa,gBAAgB,GAA7B,MAAa,gBAAgB;IAE3B,gBAAgB,CAAC;IAIjB,QAAQ;IACR,CAAC;CAEF;AALU;IAAR,2DAAK,EAAE;oEAAU,8DAAO;iDAAC;AAJf,gBAAgB;IAL5B,+DAAS,CAAC;QACT,QAAQ,EAAE,cAAc;QACxB,8OAAuC;;KAExC,CAAC;;GACW,gBAAgB,CAS5B;AAT4B;;;;;;;;;;;;;ACR7B;AAAe,6EAAc,wBAAwB,yBAAyB,kBAAkB,6BAA6B,oCAAoC,GAAG,WAAW,8BAA8B,8BAA8B,8BAA8B,8BAA8B,kBAAkB,iBAAiB,uBAAuB,mBAAmB,gCAAgC,yBAAyB,8BAA8B,gCAAgC,6BAA6B,oCAAoC,GAAG,aAAa,iBAAiB,gBAAgB,oBAAoB,qBAAqB,uBAAuB,wBAAwB,mBAAmB,8BAA8B,+BAA+B,mBAAmB,GAAG,eAAe,iBAAiB,uBAAuB,cAAc,aAAa,6CAA6C,6CAA6C,6BAA6B,qBAAqB,iCAAiC,iCAAiC,GAAG,WAAW,uCAAuC,GAAG,eAAe,uCAAuC,GAAG,iBAAiB,uBAAuB,cAAc,aAAa,6CAA6C,6CAA6C,eAAe,gBAAgB,6BAA6B,qBAAqB,cAAc,eAAe,GAAG,kBAAkB,6CAA6C,6CAA6C,GAAG,mBAAmB,4CAA4C,4CAA4C,8BAA8B,kDAAkD,kDAAkD,GAAG,yBAAyB,gBAAgB,GAAG,uBAAuB,iCAAiC,iCAAiC,GAAG,+CAA+C,2+J;;;;;;;;;;;;;;;;;;;;;;;ACAv5D;AACU;AACE;AACJ;AACf;AACsD;AAC1B;AAQ9E,IAAa,sBAAsB,GAAnC,MAAa,sBAAsB;IASjC,YAAoB,KAAqB,EAAU,MAAc,EAAU,cAA8B,EAAU,eAAgC;QAA/H,UAAK,GAAL,KAAK,CAAgB;QAAU,WAAM,GAAN,MAAM,CAAQ;QAAU,mBAAc,GAAd,cAAc,CAAgB;QAAU,oBAAe,GAAf,eAAe,CAAiB;QAJ3I,eAAU,GAAY,KAAK,CAAC;QAC5B,eAAU,GAAY,KAAK,CAAC;QAC5B,cAAS,GAAY,KAAK,CAAC;IAEoH,CAAC;IAExJ,QAAQ;QACN,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,EAAE;YAC9C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAc,EAAE,EAAE;YAC7C,IAAI,EAAE,GAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC/B,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YACpB,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;YACxB,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,UAAU,CAAC,EAAU;QACnB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,OAAgB,EAAE,EAAE;YACzD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACzB,CAAC,CAAC;IACJ,CAAC;IAED,cAAc,CAAC,EAAU;QACvB,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,OAAgB,EAAE,EAAE;YAC7D,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;QAC9B,CAAC,CAAC;IACJ,CAAC;IAED,kBAAkB,CAAC,EAAU;QAC3B,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,OAAgB,EAAE,EAAE;YACjE,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;QAClC,CAAC,CAAC;IACJ,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACrC,MAAM,iBAAiB,GAAW,GAAG,CAAC;QACtC,UAAU,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QACvF,CAAC,EAAE,iBAAiB,CAAC,CAAC;IACxB,CAAC;IAED,IAAI;QACF,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACrC,MAAM,iBAAiB,GAAW,GAAG,CAAC;QACtC,UAAU,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QACnF,CAAC,EAAE,iBAAiB,CAAC,CAAC;IAExB,CAAC;CAEF;;YAvD4B,8DAAc;YAAkB,sDAAM;YAA0B,+EAAc;YAA2B,iFAAe;;AAP1I;IAAR,2DAAK,EAAE;oEAAU,8DAAO;uDAAC;AAFf,sBAAsB;IANlC,+DAAS,CAAC;QACT,QAAQ,EAAE,oBAAoB;QAC9B,8PAA8C;QAE9C,UAAU,EAAE,CAAC,gGAAiB,EAAE,iGAAkB,EAAE,0FAAe,CAAC;;KACrE,CAAC;2EAU2B,8DAAc,EAAkB,sDAAM,EAA0B,+EAAc,EAA2B,iFAAe;GATxI,sBAAsB,CAgElC;AAhEkC;;;;;;;;;;;;;ACdnC;AAAe,mEAAI,uBAAuB,cAAc,eAAe,qBAAqB,yBAAyB,kBAAkB,8BAA8B,gCAAgC,6BAA6B,oCAAoC,2BAA2B,oBAAoB,wBAAwB,GAAG,kBAAkB,qCAAqC,GAAG,yBAAyB,2BAA2B,GAAG,iBAAiB,gBAAgB,GAAG,wBAAwB,kBAAkB,GAAG,MAAM,gBAAgB,6BAA6B,qBAAqB,GAAG,cAAc,gBAAgB,GAAG,OAAO,oBAAoB,mCAAmC,mCAAmC,6BAA6B,qBAAqB,GAAG,eAAe,kCAAkC,kCAAkC,GAAG,UAAU,uBAAuB,iBAAiB,gBAAgB,oBAAoB,sEAAsE,sEAAsE,iBAAiB,uBAAuB,yBAAyB,kBAAkB,iCAAiC,kCAAkC,mCAAmC,8BAA8B,gCAAgC,6BAA6B,oCAAoC,eAAe,qBAAqB,8BAA8B,8BAA8B,8BAA8B,8BAA8B,qBAAqB,8BAA8B,2BAA2B,kDAAkD,kDAAkD,GAAG,6CAA6C,YAAY,uBAAuB,KAAK,GAAG,+CAA+C,uvJ;;;;;;;;;;;;;;;;;;ACAnyD;AACP;AAOlD,IAAa,gBAAgB,GAA7B,MAAa,gBAAgB;IAE3B,gBAAgB,CAAC;IAIjB,QAAQ;IACR,CAAC;CAEF;AALU;IAAR,2DAAK,EAAE;oEAAU,8DAAO;iDAAC;AAJf,gBAAgB;IAL5B,+DAAS,CAAC;QACT,QAAQ,EAAE,kBAAkB;QAC5B,kPAAuC;;KAExC,CAAC;;GACW,gBAAgB,CAS5B;AAT4B;;;;;;;;;;;;;ACR7B;AAAe,2EAAY,yBAAyB,kBAAkB,iCAAiC,kCAAkC,mCAAmC,+BAA+B,iCAAiC,GAAG,wBAAwB,kBAAkB,yBAAyB,uCAAuC,mBAAmB,kBAAkB,GAAG,eAAe,yEAAyE,GAAG,cAAc,yEAAyE,GAAG,aAAa,wBAAwB,GAAG,6CAA6C,0BAA0B,qCAAqC,KAAK,gCAAgC,uEAAuE,KAAK,GAAG,+CAA+C,uuF;;;;;;;;;;;;;;;;;;;;ACA3zB;AACe;AAE6B;AACzB;AAQrE,IAAa,iBAAiB,GAA9B,MAAa,iBAAiB;IAI5B,YAAoB,cAA8B,EAAU,eAAgC;QAAxE,mBAAc,GAAd,cAAc,CAAgB;QAAU,oBAAe,GAAf,eAAe,CAAiB;IAAI,CAAC;IAEjG,QAAQ;QACN,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE;aACxB,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjF,CAAC;IAED,2GAA2G;IAC3G,wEAAwE;IACxE,qBAAqB,CAAC,QAAmB;QACvC,IAAI,kBAAkB,GAAgB,QAAQ,CAAC,MAAM,CAAC,CAAC,UAAuB,EAAE,cAAuB,EAAE,YAAoB,EAAE,WAAsB,EAAe,EAAE;YACpK,IAAI,cAAc,CAAC,QAAQ,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,EAAE,mEAAmE;gBAC3H,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,kCAAkC;aACxD;YACD,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,EAAC,6DAA6D;YACpH,OAAO,UAAU,CAAC;QACpB,CAAC,EAAE,EAAE,CAAC;QACN,OAAO,kBAAkB,CAAC;IAC5B,CAAC;CACF;;YAnBqC,wEAAc;YAA2B,iFAAe;;AAJjF,iBAAiB;IAN7B,+DAAS,CAAC;QACT,QAAQ,EAAE,cAAc;QACxB,4OAAwC;QAExC,UAAU,EAAE,CAAE,oFAAgB,EAAE,mFAAe,CAAE;;KAClD,CAAC;2EAKoC,wEAAc,EAA2B,iFAAe;GAJjF,iBAAiB,CAuB7B;AAvB6B;;;;;;;;;;;;;ACZ9B;AAAe,uEAAQ,2BAA2B,gBAAgB,iBAAiB,GAAG,+CAA+C,+uB;;;;;;;;;;;;;;;;;;ACA/D;AAQzC;AAkB7B,IAAa,gBAAgB,GAA7B,MAAa,gBAAgB;IAQ3B;QAFS,SAAI,GAAY,KAAK,CAAC;IAI/B,CAAC;IAR0B,IAAI,SAAS;QACtC,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAQD,QAAQ;IAER,CAAC;CAEF;AAd4B;IAA1B,iEAAW,CAAC,YAAY,CAAC;;;iDAEzB;AAEQ;IAAR,2DAAK,EAAE;;8CAAuB;AANpB,gBAAgB;IAjB5B,+DAAS,CAAC;QACT,QAAQ,EAAE,aAAa;QACvB,4OAAuC;QAEvC,UAAU,EAAE;YACV,mEAAO,CAAC,WAAW,EAAE;gBACnB,iEAAK,CAAC,MAAM,EAAE,iEAAK,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;gBAC5D,iEAAK,CAAC,OAAO,EAAE,iEAAK,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;gBACxD,sEAAU,CAAC,gBAAgB,EAAE;oBAC3B,oEAAQ,CAAC;wBACP,iEAAK,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;wBAC7B,mEAAO,CAAC,KAAK,CAAC;qBACf,CAAC;iBACH,CAAC;aACH,CAAC;SACH;;KACF,CAAC;;GACW,gBAAgB,CAgB5B;AAhB4B;;;;;;;;;;;;;AC1B7B;AAAA;AAAA;AAAA,gFAAgF;AAChF,0EAA0E;AAC1E,gEAAgE;;AAEzD,MAAM,WAAW,GAAG;IACzB,UAAU,EAAE,KAAK;CAClB,CAAC;AAEF;;;;;;GAMG;AACH,mEAAmE;;;;;;;;;;;;;;;;;;;;ACfpB;AAC4B;AAE9B;AACY;AAEzD,IAAI,qEAAW,CAAC,UAAU,EAAE;IAC1B,oEAAc,EAAE,CAAC;CAClB;AAED,gGAAsB,EAAE,CAAC,eAAe,CAAC,yDAAS,CAAC;KAChD,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC","file":"main-es2015.js","sourcesContent":["export default \"
\\r\\n \\r\\n
\\r\\n\"","export default \"
\\r\\n
\\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 default \"\\\"Mail\\\"\\r\\n\\\"GitHub\\\"\\r\\n\\\"LinkedIn\\\"\\r\\n\\\"Facebook\\\"\\r\\n\\r\\n\\r\\n\"","export default \"
© {{getCurrentYear()}} Nathan Russell
\\r\\n\"","export default \"\\r\\n
\\r\\n \\r\\n

\\r\\n
\\r\\n\\r\\n\"","export default \"
\\r\\n
\\r\\n\"","export default \"\\n\"","export default \"

Home

\\r\\n

Projects

\\r\\n

About

\\r\\n

Contact

\\r\\n\"","export default \"

\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\"","export default \"\\r\\n

\\r\\n about works!\\r\\n

\\r\\n
\\r\\n\"","export default \"\\r\\n contact works!\\r\\n\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n\\r\\n

Welcome to naterussell.com. This website is currently under construction.

\\r\\n

Latest Projects

\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n

{{project.title}}

\\r\\n

created: {{project.created | date:\\\"MMM yyyy\\\"}}, modified: {{project.modified | date:\\\"MMM yyyy\\\"}}

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

{{project.description}}

\\r\\n
\\r\\n\"","export default \"\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n

{{project.title}}

\\r\\n

created: {{project.created | date:\\\"MMM yyyy\\\"}}, modified: {{project.modified | date:\\\"MMM yyyy\\\"}}

\\r\\n

{{project.description}}

\\r\\n \\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n

{{project.title}}

\\r\\n

created: {{project.created | date:\\\"MMM yyyy\\\"}}, modified: {{project.modified | date:\\\"MMM yyyy\\\"}}

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

{{project.description}}

\\r\\n
\\r\\n\"","export default \"\\r\\n \\r\\n
\\r\\n
0 && !projectSubdivision[0].featured)?'no-feat':(i % 2 == 0)?'right-feat':'left-feat'\\\">\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"\\n\"","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./src/$$_lazy_route_resource lazy recursive\";","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL19hbmltYXRpb24vYW5pbWF0ZS13aGVuLXJlYWNoZWQvYW5pbWF0ZS13aGVuLXJlYWNoZWQuY29tcG9uZW50Lmxlc3MifQ== */\"","import { Component, OnInit, HostListener, ViewChild, ElementRef } from '@angular/core';\r\nimport { ViewportService } from 'src/app/_services/viewport.service';\r\nimport { leftSlideInAnimation } from '../../_animation/content-enter-animations';\r\n\r\n@Component({\r\n selector: 'animate-when-reached',\r\n templateUrl: './animate-when-reached.component.html',\r\n styleUrls: ['./animate-when-reached.component.less'],\r\n animations: [leftSlideInAnimation]\r\n})\r\nexport class AnimateWhenReachedComponent implements OnInit {\r\n\r\n private _elementReached: boolean = false;\r\n private _ready: boolean = false;\r\n @ViewChild('content', { static: true }) _contentElement: ElementRef;\r\n\r\n @HostListener('window:scroll', ['$event']) onScroll(event) {\r\n this.checkVisible();\r\n }\r\n\r\n private checkVisible(): void {\r\n if (this._ready) {\r\n this._elementReached = this._elementReached || this.viewportService.elementReached(this._contentElement.nativeElement);\r\n }\r\n }\r\n\r\n constructor(private viewportService: ViewportService) {}\r\n\r\n\r\n ngOnInit() {\r\n this.viewportService.onPageReady.subscribe(() => {\r\n setTimeout(() => { //wait until old outlet has faded away\r\n this._ready = true;\r\n this.checkVisible();\r\n }, 100)\r\n })\r\n\r\n }\r\n\r\n}\r\n","import {\r\n trigger,\r\n style,\r\n animate,\r\n transition,\r\n animateChild,\r\n query,\r\n group,\r\n animation,\r\n\r\n stagger,\r\n state,\r\n sequence\r\n} from '@angular/animations';\r\n\r\nexport const scaleInAnimation = trigger('scaleIn', [\r\n state('false', style({\r\n opacity: 0\r\n })),\r\n transition('false <=> true', [\r\n style({\r\n opacity: 1\r\n \r\n }),\r\n query('.project', [\r\n style({\r\n opacity: 0,\r\n transform: 'scale(.85)'\r\n }),\r\n stagger('.2s', [\r\n animate('.4s', style({\r\n opacity: 1,\r\n transform: 'scale(1)'\r\n }))\r\n ])\r\n ])\r\n ])\r\n]);\r\n\r\nexport const fadeInAnimation = trigger('fadeIn', [\r\n state('false', style({\r\n opacity: 0\r\n })),\r\n state('true', style({\r\n opacity: 1\r\n })),\r\n transition('false <=> true', [\r\n animate('.4s')\r\n ])\r\n]);\r\n\r\nexport const rightSlideInAnimation = trigger('rightSlideIn', [\r\n state('false', style({\r\n opacity: 0,\r\n transform: \"translateX(25px)\"\r\n })),\r\n state('true', style({\r\n opacity: 1,\r\n transform: \"translateX(0)\"\r\n })),\r\n transition('false <=> true', [\r\n animate('.8s')\r\n ])\r\n]);\r\n\r\nexport const leftSlideInAnimation = trigger('leftSlideIn', [\r\n state('false', style({\r\n opacity: 0,\r\n transform: \"translateX(-25px)\"\r\n })),\r\n state('true', style({\r\n opacity: 1,\r\n transform: \"translateX(0)\"\r\n })),\r\n transition('false <=> true', [\r\n animate('.8s')\r\n ])\r\n]);\r\n","import {\r\n trigger,\r\n style,\r\n animate,\r\n transition,\r\n AnimationTriggerMetadata,\r\n\r\n state\r\n} from '@angular/animations';\r\n\r\nconst time: string = '250ms';\r\n\r\nexport const exitLeftAnimation: AnimationTriggerMetadata = trigger('exitLeftAnimation', [\r\n state('true', style({ opacity: 0 })),\r\n\r\n transition('false => true', [\r\n style({ transform: 'translateX(0)', opacity: 1 }),\r\n animate(time, style({ transform: 'translateX(100%)' }))\r\n ]),\r\n \r\n transition('true => false', [\r\n style({ transform: 'translateX(-100%)' }),\r\n animate(time, style({ transform: 'translateX(0)', opacity: 1 }))\r\n ])\r\n]);\r\n\r\nexport const exitRightAnimation: AnimationTriggerMetadata = trigger('exitRightAnimation', [\r\n state('true', style({ opacity: 0 })),\r\n transition('false => true', [\r\n style({ transform: 'translateX(0)', opacity: 1 }),\r\n animate(time, style({ transform: 'translateX(-100%)' }))\r\n ]),\r\n transition('true => false', [\r\n style({ transform: 'translateX(100%)' }),\r\n animate(time, style({ transform: 'translateX(0)', opacity: 1 }))\r\n ])\r\n]);\r\n","import {\r\n trigger,\r\n style,\r\n animate,\r\n transition,\r\n animateChild,\r\n query,\r\n group,\r\n animation,\r\r\n AnimationTriggerMetadata\n} from '@angular/animations';\r\n\r\nexport const routeTransitionAnimation: AnimationTriggerMetadata = trigger('routeAnimations', [\r\n transition('* <=> *', [\r\n style({ position: 'relative' }),\r\n query(':enter, :leave', [\r\n style({\r\n position: 'absolute',\r\n height: '100%',\r\n left: 0,\r\n right: 0\r\n })\r\n ], { optional: true }),\r\n query(':enter',\r\n [\r\n style({\r\n opacity: 0\r\n })\r\n ], { optional: true }\r\n ),\r\n query(':leave',\r\n [\r\n style({ opacity: 1 }),\r\n animate('0.4s', style({\r\n opacity: 0,\r\n //display: 'none'\r\n }))\r\n ], { optional: true }\r\n ),\r\n query(':enter', [\r\n query('@*', [animateChild()], { optional: true })\r\n ], { optional: true }\r\n )\r\n \r\n /* uncomment to add fade-in animation to route transitions\r\n query(':enter',\r\n [\r\n style({ opacity: 0 }),\r\n animate('0.2s', style({ opacity: 1 }))\r\n ],\r\n { optional: true }\r\n )\r\n */\r\n ])\r\n]);\r\n","import { Content } from './content';\r\n\r\n\r\nexport class Project\r\n{\r\n id: number;\r\n title: string;\r\n description: string;\r\n featured: boolean;\r\n created: Date;\r\n modified: Date;\r\n thumb: string;\r\n content: Content[];\r\n}\r\n","import { Content } from './content';\r\n\r\nexport class Text implements Content\r\n{\r\n id: number;\r\n header: string;\r\n text: string;\r\n position: number\r\n}\r\n","import { Project } from 'src/app/_models/project';\r\nimport { Text } from 'src/app/_models/text';\r\n\r\n\r\nexport const PROJECTS: Project[] = [\r\n {\r\n id: 1,\r\n title: 'Furniture Design',\r\n description: 'A fresh take on an old friend.',\r\n featured: true,\r\n created: new Date('3/16/2010'),\r\n modified: new Date('9/1/2015'),\r\n thumb: '../../assets/project files/furniture design/furnitureDesignThumb.jpg',\r\n content: [\r\n Object.assign(new Text(), {\r\n id: 1,\r\n header: 'test',\r\n text: 'test',\r\n position: 1\r\n }) \r\n ]\r\n },\r\n {\r\n id: 2,\r\n title: 'Drone',\r\n description: 'A fully rigged and textured character model.',\r\n featured: true,\r\n created: new Date('4/5/2010'),\r\n modified: null,\r\n thumb: '../../assets/project files/drone/droneThumb.jpg',\r\n content: []\r\n },\r\n {\r\n id: 3,\r\n title: 'Goliath',\r\n description: 'A 3D sculpted organic model based on the main character of the Disney cartoon Gargoyles.',\r\n featured: false,\r\n created: new Date('10/21/2009'),\r\n modified: new Date('5/10/2011'),\r\n thumb: '../../assets/project files/goliath/GoliathThumb.jpg',\r\n content: []\r\n },\r\n {\r\n id: 4,\r\n title: 'Petra',\r\n description: `A model based on the character Petra from the book \"Ender's Game\".`,\r\n featured: false,\r\n created: new Date('4/8/2010'),\r\n modified: new Date('2/18/2011'),\r\n thumb: '../../assets/project files/petra/PetraThumb.jpg',\r\n content: []\r\n },\r\n {\r\n id: 5,\r\n title: '3D Printed Dice Boxes',\r\n description: `Magnetic D&D dice boxes printed in a variety of materials. Design by Agrif (Thingiverse).`,\r\n featured: true,\r\n created: new Date('8/23/2018'),\r\n modified: null,\r\n thumb: '../../assets/project files/dice boxes/diceBoxesThumb.jpg',\r\n content: []\r\n },\r\n {\r\n id: 6,\r\n title: 'SD Card Holder',\r\n description: `An SD card holder in the shape of a spiral heart shell (Meiocardia Vulgaris).`,\r\n featured: false,\r\n created: new Date('3/28/2019'),\r\n modified: null,\r\n thumb: '../../assets/project files/heart shell/heartShellThumb.jpg',\r\n content: []\r\n },\r\n {\r\n id: 7,\r\n title: 'Soccer Ball Model',\r\n description: `A quick render of a soccer ball model that is part of another, larger project.`,\r\n featured: false,\r\n created: new Date('4/24/2016'),\r\n modified: null,\r\n thumb: '../../assets/project files/soccer ball/soccerBallThumb.jpg',\r\n content: []\r\n },\r\n {\r\n id: 8,\r\n title: 'Vintage Toy Box',\r\n description: `A polygon model based on a 1980s Little Tikes toybox (part of another, larger project).`,\r\n featured: false,\r\n created: new Date('4/28/2016'),\r\n modified: null,\r\n thumb: '../../assets/project files/toybox/toyBoxThumb.jpg',\r\n content: []\r\n },\r\n {\r\n id: 9,\r\n title: 'G. B. Piranesi',\r\n description: `A 3D render based on a sketch by 18th century Italian artist, Giovanni Battista Piranesi.`,\r\n featured: false,\r\n created: new Date('11/27/2002'),\r\n modified: null,\r\n thumb: '../../assets/project files/piranesi/piranesi.jpg',\r\n content: []\r\n },\r\n {\r\n id: 10,\r\n title: 'Junkyard Robot',\r\n description: `Concept art of robot that put itself together from pieces in a junkyard.`,\r\n featured: false,\r\n created: new Date('4/5/2005'),\r\n modified: null,\r\n thumb: '../../assets/project files/robot illustration/robotThumb.jpg',\r\n content: []\r\n },\r\n {\r\n id: 11,\r\n title: 'T-Shirt Design',\r\n description: `My entry for a T-Shirt design competition.`,\r\n featured: false,\r\n created: new Date('10/27/2011'),\r\n modified: null,\r\n thumb: '../../assets/project files/T&B T-shirts/shirtThumb.jpg',\r\n content: []\r\n },\r\n {\r\n id: 12,\r\n title: 'T&B Car',\r\n description: `A polygon car model.`,\r\n featured: true,\r\n created: new Date('3/20/2013'),\r\n modified: null,\r\n thumb: '../../assets/project files/T&B car/carThumb.jpg',\r\n content: []\r\n },\r\n].sort((a: Project, b: Project): number => { return Number((b.modified || b.created)) - Number((a.modified || a.created)); });\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable, of } from 'rxjs';\r\nimport { Project } from '../_models/project';\r\nimport { PROJECTS } from './data/projects';\r\nimport { log } from 'util';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ProjectService {\r\n\r\n constructor() { }\r\n\r\n index(): Observable {\r\n return of(PROJECTS);\r\n }\r\n\r\n latest(count: number): Observable {\r\n return of(PROJECTS.slice(0, count));\r\n }\r\n\r\n get(id: number): Observable {\r\n return of(PROJECTS.find((project: Project) => { return project.id === id; }))\r\n }\r\n\r\n getNext(id: number): Observable {\r\n\r\n let project: Project = PROJECTS.find((project: Project) => {\r\n return project.id === id;\r\n });\r\n let index: number = PROJECTS.indexOf(project);\r\n index++;\r\n if (index < PROJECTS.length) {\r\n return of(PROJECTS[index])\r\n }\r\n return of(null);\r\n }\r\n\r\n getPrevious(id: number): Observable {\r\n let project: Project = PROJECTS.find((project: Project) => {\r\n return project.id === id;\r\n });\r\n let index: number = PROJECTS.indexOf(project);\r\n index--;\r\n console.log(index);\r\n if (index >= 0) {\r\n return of(PROJECTS[index])\r\n }\r\n return of(null);\r\n }\r\n}\r\n","import { Injectable} from '@angular/core';\r\nimport { Router, NavigationEnd, RouterEvent } from '@angular/router';\r\nimport { observable, Observable, fromEvent, Subscription, combineLatest, Subscriber } from 'rxjs';\r\nimport { filter, share } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ViewportService {\r\n\r\n private _pageReadyObervable: Observable = null;\r\n\r\n constructor(private router: Router) {\r\n\r\n console.log(\"VS initialized\");\r\n\r\n this._pageReadyObervable = new Observable((readyObs) => {\r\n \r\n\r\n console.log('new obs created');\r\n\r\n router.events\r\n .pipe(\r\n filter((event: RouterEvent) => event instanceof NavigationEnd && event.id !== undefined),\r\n )\r\n .subscribe((event: RouterEvent) => { //fires every time a route change occurs\r\n\r\n let pageDelaySubscripton: Subscription = null;\r\n let pageReadySubscription: Subscription = null;\r\n\r\n console.log(\"route changed\" + event.url + \" - even id: \" + event.id);\r\n\r\n this._pageReady = false;\r\n this._delayComplete = false;\r\n\r\n if (pageDelaySubscripton != null) {\r\n pageDelaySubscripton.unsubscribe();\r\n console.log(\"Delay subscription canceled.\");\r\n }\r\n if (pageReadySubscription != null) {\r\n pageReadySubscription.unsubscribe();\r\n console.log(\"Page ready subscription canceled.\");\r\n }\r\n \r\n\r\n let pageDelayObservable: Observable = new Observable((delayObs) => {\r\n const OUTLET_EXIT_DELAY: number = 600;\r\n setTimeout(() => { //wait until old outlet has faded away\r\n delayObs.complete();\r\n }, OUTLET_EXIT_DELAY);\r\n })\r\n\r\n pageDelaySubscripton = pageDelayObservable.subscribe(null, null, () => {\r\n this._delayComplete = true;\r\n console.log(\"Delay complete.\");\r\n\r\n let imagesLoadedObservable: Observable = this.waitForImages();\r\n pageReadySubscription = imagesLoadedObservable.subscribe(null, null, () => readyObs.next());\r\n });\r\n\r\n \r\n });\r\n }).pipe(share());\r\n\r\n this._pageReadyObervable.subscribe(() => { this._pageReady = true; console.log(\"Page ready.\"); });\r\n\r\n fromEvent(window, 'scroll').subscribe(() => {\r\n this._scrollTop = (window.pageYOffset || document.documentElement.scrollTop);\r\n });\r\n }\r\n\r\n get onPageReady(): Observable {\r\n return this._pageReadyObervable;\r\n }\r\n\r\n private _onscroll: Observable = fromEvent(window, 'scroll');\r\n get onScroll(): Observable {\r\n return this._onscroll;\r\n }\r\n\r\n private _pageReady: boolean;\r\n get pageReady(): boolean {\r\n return this._pageReady;\r\n }\r\n\r\n get pageLoading(): boolean {\r\n return this._delayComplete && !this._pageReady;\r\n }\r\n\r\n private _delayComplete: boolean;\r\n get delayComplete(): boolean {\r\n return this._delayComplete;\r\n }\r\n\r\n private _scrollTop: number = 0;\r\n get scrollTop(): number {\r\n return this._scrollTop;\r\n }\r\n\r\n get scrollBottom(): number {\r\n return this.scrollTop + this.viewportHeight;\r\n }\r\n\r\n get viewportHeight(): number {\r\n return Math.max(document.documentElement.clientHeight, window.innerHeight || 0);\r\n }\r\n\r\n get pageHeight(): number {\r\n return document.getElementById('outlet-wrapper').scrollHeight;\r\n }\r\n\r\n get scrolledToTop(): boolean {\r\n return (this.scrollTop === 0);\r\n }\r\n\r\n get scrolledToBottom(): boolean {\r\n let output: boolean = (this.scrollBottom >= this.pageHeight)\r\n return output;\r\n }\r\n\r\n public scrollToTop(): void {\r\n window.scrollTo({ top: 0 });\r\n }\r\n\r\n public elementReached(element: HTMLElement, viewportRatio: number = .75): boolean {\r\n let viewportHeight: number = Math.max(document.documentElement.clientHeight, window.innerHeight || 0);\r\n let pageBottomReached: boolean = (window.innerHeight + window.scrollY) >= document.body.offsetHeight;\r\n return (element.getBoundingClientRect().top < viewportHeight * viewportRatio || this.scrolledToBottom);\r\n }\r\n\r\n public waitForImages(): Observable {\r\n let images: HTMLCollectionOf = document.images; //collection of all images on the page\r\n let imageLoadObservables: Observable[] = [];\r\n\r\n console.log(\"Creating (\" + images.length + \") image load observables.\");\r\n let imageLoadedCount: number = 0;\r\n for (let i = 0; i < images.length; i++) { //for each image\r\n let imageLoadObservable: Observable = new Observable((obs: Subscriber) => { //create a new promise\r\n if (images.item(i).src.endsWith('LoadBar.gif')) { //if the image is the load bar, resolve it so that you don't run into situations where the user is waiting to only load the load bar.\r\n obs.complete();\r\n }\r\n else {\r\n images.item(i).onload = () => { obs.complete(); }; //resolve the observable when the image loads\r\n images.item(i).onerror = () => { obs.complete(); }; //resolve observable when the image fails to load\r\n if (images.item(i).complete) { //resolve observable if image has already loaded\r\n obs.complete();\r\n }\r\n }\r\n }).pipe(share());\r\n\r\n imageLoadObservables.push(imageLoadObservable);\r\n imageLoadObservable.subscribe((image: HTMLImageElement) => { console.log(\"Image loading - \" + image.src) }, null, () => { imageLoadedCount++; console.log(\"Image loaded: \" + imageLoadedCount); });\r\n }\r\n\r\n return combineLatest(imageLoadObservables).pipe(share());\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { AboutComponent } from './page-components/about/about.component';\r\nimport { ContactComponent } from './page-components/contact/contact.component';\r\nimport { ProjectsComponent } from './page-components/projects/projects.component';\r\nimport { HomeComponent } from './page-components/home/home.component';\r\nimport { ProjectDetailComponent } from './page-components/project-detail/project-detail.component';\r\n\r\nconst routes: Routes = [\r\n { path: 'about', component: AboutComponent },\r\n { path: 'contact', component: ContactComponent },\r\n { path: 'projects', component: ProjectsComponent },\r\n { path: 'projects/:id', component: ProjectDetailComponent },\r\n { path: '', component: HomeComponent }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule { }\r\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { NgModule } from '@angular/core';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\n\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AppComponent } from './layout-components/app.component';\r\nimport { HeaderComponent } from './layout-components/header/header.component';\r\nimport { FooterComponent } from './layout-components/footer/footer.component';\r\nimport { NavigationComponent } from './layout-components/navigation/navigation.component';\r\nimport { ContactComponent } from './page-components/contact/contact.component';\r\nimport { AboutComponent } from './page-components/about/about.component';\r\nimport { ProjectsComponent } from './page-components/projects/projects.component';\r\nimport { HomeComponent } from './page-components/home/home.component';\r\nimport { ConnectComponent } from './layout-components/connect/connect.component';\r\nimport { SideBarComponent } from './layout-components/side-bar/side-bar.component';\r\nimport { OverlayComponent } from './utility-components/overlay/overlay.component';\r\nimport { InnerLayoutComponent } from './layout-components/inner-layout/inner-layout.component';\r\nimport { SideConnectComponent } from './layout-components/side-connect/side-connect.component';\r\nimport { SideNavigationComponent } from './layout-components/side-navigation/side-navigation.component';\r\nimport { ProjectComponent } from './page-components/projects/project/project.component';\r\nimport { ProjectComponent as HomeProjectComponent } from './page-components/home/project/project.component';\r\nimport { LoadBarComponent } from './layout-components/load-bar/load-bar.component';\r\nimport { AnimateWhenReachedComponent } from './_animation/animate-when-reached/animate-when-reached.component';\r\nimport { ProjectDetailComponent } from './page-components/project-detail/project-detail.component' ;\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n HeaderComponent,\r\n FooterComponent,\r\n NavigationComponent,\r\n ContactComponent,\r\n AboutComponent,\r\n ProjectsComponent,\r\n HomeComponent,\r\n ConnectComponent,\r\n SideBarComponent,\r\n OverlayComponent,\r\n InnerLayoutComponent,\r\n SideConnectComponent,\r\n SideNavigationComponent,\r\n ProjectComponent,\r\n HomeProjectComponent,\r\n LoadBarComponent,\r\n AnimateWhenReachedComponent,\r\n ProjectDetailComponent\r\n ],\r\n imports: [\r\n BrowserModule,\r\n AppRoutingModule,\r\n BrowserAnimationsModule\r\n ],\r\n providers: [],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule { }\r\n","export default \"#page {\\n position: absolute;\\n width: 100%;\\n height: 100%;\\n}\\n#body,\\n#header {\\n width: 100%;\\n display: -webkit-box;\\n display: flex;\\n -webkit-box-orient: vertical;\\n -webkit-box-direction: normal;\\n flex-direction: column;\\n -webkit-box-align: center;\\n align-items: center;\\n}\\n#body {\\n height: 100%;\\n position: absolute;\\n}\\n#header {\\n position: fixed;\\n z-index: 9;\\n background-color: rgba(24, 24, 24, 0);\\n}\\n.width-container {\\n max-width: 960px;\\n width: 100%;\\n margin: 0 auto;\\n height: 100%;\\n}\\n#side-bar {\\n overflow: hidden;\\n position: fixed;\\n height: 100%;\\n right: 0;\\n}\\n#footer,\\n#content {\\n padding: 0 10px;\\n}\\n#footer {\\n -webkit-box-flex: 0;\\n flex-grow: 0;\\n}\\n#content {\\n -webkit-box-flex: 1;\\n flex: 1 0 auto;\\n padding-top: 80px;\\n}\\n#overlay {\\n position: fixed;\\n z-index: 10;\\n height: 100vh;\\n}\\n#outlet-wrapper {\\n height: 100%;\\n width: 100%;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvbGF5b3V0LWNvbXBvbmVudHMvQzovVXNlcnMvTmF0aGFuL3NvdXJjZS9yZXBvcy9Qb3J0Zm9saW9XZWJzaXRlL1BvcnRmb2xpb1dlYnNpdGUvQ2xpZW50QXBwL3NyYy9hcHAvbGF5b3V0LWNvbXBvbmVudHMvYXBwLmNvbXBvbmVudC5sZXNzIiwic3JjL2FwcC9sYXlvdXQtY29tcG9uZW50cy9hcHAuY29tcG9uZW50Lmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUE7RUFDRSxrQkFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0FDREY7QURJQTs7RUFDRSxXQUFBO0VBQ0Esb0JBQUE7RUFBQSxhQUFBO0VBQ0EsNEJBQUE7RUFBQSw2QkFBQTtVQUFBLHNCQUFBO0VBQ0EseUJBQUE7VUFBQSxtQkFBQTtBQ0RGO0FESUE7RUFDRSxZQUFBO0VBQ0Esa0JBQUE7QUNGRjtBREtBO0VBQ0UsZUFBQTtFQUNBLFVBQUE7RUFDQSxxQ0FBQTtBQ0hGO0FETUE7RUFDRSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxjQUFBO0VBQ0EsWUFBQTtBQ0pGO0FET0E7RUFDRSxnQkFBQTtFQUNBLGVBQUE7RUFDQSxZQUFBO0VBQ0EsUUFBQTtBQ0xGO0FEUUE7O0VBQ0UsZUFBQTtBQ0xGO0FEUUE7RUFDRSxtQkFBQTtVQUFBLFlBQUE7QUNORjtBRFNBO0VBQ0UsbUJBQUE7VUFBQSxjQUFBO0VBQ0EsaUJBQUE7QUNQRjtBRFVBO0VBQ0UsZUFBQTtFQUNBLFdBQUE7RUFDQSxhQUFBO0FDUkY7QURXQTtFQUNFLFlBQUE7RUFDQSxXQUFBO0FDVEYiLCJmaWxlIjoic3JjL2FwcC9sYXlvdXQtY29tcG9uZW50cy9hcHAuY29tcG9uZW50Lmxlc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0ICcuLi8uLi9hc3NldHMvc3R5bGVzL3ZhcmlhYmxlcy5sZXNzJztcblxuI3BhZ2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbiNib2R5LCAjaGVhZGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbiNib2R5IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbiNoZWFkZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDk7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoIDI0LCAyNCwgMjQsIDApO1xufVxuXG4ud2lkdGgtY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiBAcGFnZVdpZHRoO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGhlaWdodDogMTAwJTtcbn1cblxuI3NpZGUtYmFyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHJpZ2h0OiAwO1xufVxuXG4jZm9vdGVyLCAjY29udGVudCB7XG4gIHBhZGRpbmc6IDAgMTBweDtcbn1cblxuI2Zvb3RlciB7XG4gIGZsZXgtZ3JvdzogMDtcbn1cblxuI2NvbnRlbnQge1xuICBmbGV4OiAxIDAgYXV0bztcbiAgcGFkZGluZy10b3A6IDgwcHg7XG59XG5cbiNvdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAxMDtcbiAgaGVpZ2h0OiAxMDB2aDtcbn1cblxuI291dGxldC13cmFwcGVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cbiIsIiNwYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuI2JvZHksXG4jaGVhZGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4jYm9keSB7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuI2hlYWRlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNCwgMjQsIDI0LCAwKTtcbn1cbi53aWR0aC1jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDk2MHB4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGhlaWdodDogMTAwJTtcbn1cbiNzaWRlLWJhciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgaGVpZ2h0OiAxMDAlO1xuICByaWdodDogMDtcbn1cbiNmb290ZXIsXG4jY29udGVudCB7XG4gIHBhZGRpbmc6IDAgMTBweDtcbn1cbiNmb290ZXIge1xuICBmbGV4LWdyb3c6IDA7XG59XG4jY29udGVudCB7XG4gIGZsZXg6IDEgMCBhdXRvO1xuICBwYWRkaW5nLXRvcDogODBweDtcbn1cbiNvdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAxMDtcbiAgaGVpZ2h0OiAxMDB2aDtcbn1cbiNvdXRsZXQtd3JhcHBlciB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG4iXX0= */\"","import { Component, OnInit, HostListener } from '@angular/core';\r\nimport { routeTransitionAnimation } from '../_animation/route-transition-animation';\r\nimport {\r\n trigger,\r\n style,\r\n animate,\r\n transition,\r\n animateChild,\r\n query,\r\n state,\r\n group,\r\n\r\n sequence\r\n} from '@angular/animations';\r\nimport { ViewportService } from '../_services/viewport.service';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.less'],\r\n animations: [\r\n routeTransitionAnimation,\r\n trigger('shiftLeft', [\r\n state('true', style({\r\n left: '-15em'\r\n })\r\n ),\r\n state('false', style({\r\n left: 0\r\n })\r\n ),\r\n transition('true <=> false', [\r\n group([\r\n query('@*', [animateChild()], { optional: true }),\r\n animate('.4s'),\r\n ])\r\n ])\r\n ]),\r\n trigger('headerFade', [\r\n state('true', style({\r\n backgroundColor: 'rgba(24, 24, 24, 0)',\r\n borderBottom: '2px solid rgba(24, 24, 24, 0)'\r\n })\r\n ),\r\n state('false', style({\r\n backgroundColor: 'rgba(24, 24, 24, .95)',\r\n borderBottom: '2px solid #282828'\r\n })\r\n ),\r\n transition('true <=> false', [\r\n animate('.4s')\r\n ])\r\n ])\r\n ]\r\n})\r\nexport class AppComponent implements OnInit {\r\n\r\n\r\n constructor(private viewportService: ViewportService) {\r\n viewportService.onPageReady.subscribe(() => {\r\n viewportService.scrollToTop();\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n \r\n }\r\n}\r\n","export default \":host {\\n top: 50%;\\n -webkit-transform: translateY(-50%);\\n transform: translateY(-50%);\\n right: 0;\\n max-height: 100%;\\n width: 80px;\\n position: fixed;\\n display: -webkit-box;\\n display: flex;\\n -webkit-box-orient: vertical;\\n -webkit-box-direction: normal;\\n flex-direction: column;\\n -webkit-box-pack: justify;\\n justify-content: space-between;\\n -webkit-box-align: start;\\n align-items: flex-start;\\n overflow: hidden;\\n z-index: 10;\\n -webkit-transition: 0.4s;\\n transition: 0.4s;\\n}\\na {\\n background-color: #258;\\n border-radius: 10px 0 0 10px;\\n padding: 5px;\\n -webkit-transform: translateX(8px);\\n transform: translateX(8px);\\n width: 100%;\\n height: 2.5em;\\n margin: 5px 0;\\n overflow: hidden;\\n -webkit-transition: 0.4s;\\n transition: 0.4s;\\n}\\nimg {\\n max-height: 100%;\\n position: relative;\\n opacity: 0.35;\\n -webkit-transition: 0.4s;\\n transition: 0.4s;\\n}\\na:hover {\\n -webkit-transform: translateX(0px);\\n transform: translateX(0px);\\n}\\na:hover img {\\n opacity: 1;\\n}\\n@media only screen and (max-width: 1104px) {\\n :host {\\n width: 0px;\\n }\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvbGF5b3V0LWNvbXBvbmVudHMvY29ubmVjdC9DOi9Vc2Vycy9OYXRoYW4vc291cmNlL3JlcG9zL1BvcnRmb2xpb1dlYnNpdGUvUG9ydGZvbGlvV2Vic2l0ZS9DbGllbnRBcHAvc3JjL2FwcC9sYXlvdXQtY29tcG9uZW50cy9jb25uZWN0L2Nvbm5lY3QuY29tcG9uZW50Lmxlc3MiLCJzcmMvYXBwL2xheW91dC1jb21wb25lbnRzL2Nvbm5lY3QvY29ubmVjdC5jb21wb25lbnQubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQTtFQUNFLFFBQUE7RUFDQSxtQ0FBQTtVQUFBLDJCQUFBO0VBQ0EsUUFBQTtFQUNBLGdCQUFBO0VBQ0EsV0FBQTtFQUNBLGVBQUE7RUFDQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSw0QkFBQTtFQUFBLDZCQUFBO1VBQUEsc0JBQUE7RUFDQSx5QkFBQTtVQUFBLDhCQUFBO0VBQ0Esd0JBQUE7VUFBQSx1QkFBQTtFQUNBLGdCQUFBO0VBQ0EsV0FBQTtFQUNBLHdCQUFBO0VBQUEsZ0JBQUE7QUNIRjtBRFFBO0VBQ0Usc0JBQUE7RUFDQSw0QkFBQTtFQUNBLFlBQUE7RUFDQSxrQ0FBQTtVQUFBLDBCQUFBO0VBQ0EsV0FBQTtFQUNBLGFBQUE7RUFDQSxhQUFBO0VBQ0EsZ0JBQUE7RUFDQSx3QkFBQTtFQUFBLGdCQUFBO0FDTkY7QURTQTtFQUNFLGdCQUFBO0VBQ0Esa0JBQUE7RUFDQSxhQUFBO0VBQ0Esd0JBQUE7RUFBQSxnQkFBQTtBQ1BGO0FEVUE7RUFDRSxrQ0FBQTtVQUFBLDBCQUFBO0FDUkY7QURXQTtFQUNFLFVBQUE7QUNURjtBRGNBO0VBQ0U7SUFDRSxVQUFBO0VDWkY7QUFDRiIsImZpbGUiOiJzcmMvYXBwL2xheW91dC1jb21wb25lbnRzL2Nvbm5lY3QvY29ubmVjdC5jb21wb25lbnQubGVzcyIsInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgJy4uLy4uLy4uL2Fzc2V0cy9zdHlsZXMvdmFyaWFibGVzLmxlc3MnO1xuXG5Ad2lkdGg6IDgwcHg7XG5cbjpob3N0IHtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgcmlnaHQ6IDA7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiBAd2lkdGg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgei1pbmRleDogMTA7XG4gIHRyYW5zaXRpb246IC40cztcbn1cblxuQHRhYi1vZmZzZXQ6IEB3aWR0aCAqIC4xO1xuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGFjY2VudENvbG9yO1xuICBib3JkZXItcmFkaXVzOiAxMHB4IDAgMCAxMHB4O1xuICBwYWRkaW5nOiA1cHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWChAdGFiLW9mZnNldCk7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIuNWVtO1xuICBtYXJnaW46IDVweCAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiAuNHM7XG59XG5cbmltZyB7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3BhY2l0eTogLjM1O1xuICB0cmFuc2l0aW9uOiAwLjRzO1xufVxuXG5hOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG59XG5cbmE6aG92ZXIgaW1nIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuQHRyYW5zaXRpb24td2lkdGg6IEBwYWdlV2lkdGggKyBAd2lkdGggKiAxLjg7XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogQHRyYW5zaXRpb24td2lkdGgpIHtcbiAgOmhvc3Qge1xuICAgIHdpZHRoOiAwcHg7XG4gIH1cbn1cbiIsIjpob3N0IHtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgcmlnaHQ6IDA7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiA4MHB4O1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IDEwO1xuICB0cmFuc2l0aW9uOiAwLjRzO1xufVxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNTg7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHggMCAwIDEwcHg7XG4gIHBhZGRpbmc6IDVweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDhweCk7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIuNWVtO1xuICBtYXJnaW46IDVweCAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiAwLjRzO1xufVxuaW1nIHtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvcGFjaXR5OiAwLjM1O1xuICB0cmFuc2l0aW9uOiAwLjRzO1xufVxuYTpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xufVxuYTpob3ZlciBpbWcge1xuICBvcGFjaXR5OiAxO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTA0cHgpIHtcbiAgOmhvc3Qge1xuICAgIHdpZHRoOiAwcHg7XG4gIH1cbn1cbiJdfQ== */\"","import { Component, OnInit, Input, HostBinding } from '@angular/core';\r\nimport {\r\n trigger,\r\n state,\r\n style,\r\n animate,\r\n transition,\r\n sequence,\r\n} from '@angular/animations';\r\n\r\n@Component({\r\n selector: 'app-connect',\r\n templateUrl: './connect.component.html',\r\n animations: [\r\n trigger('fadeInOut', [\r\n state('true', style({ maxWidth: '3.5em' })),\r\n state('false', style({ maxWidth: '0em' })),\r\n transition('true => false', [\r\n animate('.2s')\r\n ]),\r\n transition('false => true', [\r\n animate('.2s .4s')\r\n ])\r\n ])\r\n ],\r\n styleUrls: ['./connect.component.less']\r\n})\r\nexport class ConnectComponent implements OnInit {\r\n\r\n @HostBinding('@fadeInOut') get fadeInOut(): boolean {\r\n return this.show;\r\n }\r\n\r\n @Input() show: boolean = false;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","export default \":host {\\n display: -webkit-box;\\n display: flex;\\n -webkit-box-orient: vertical;\\n -webkit-box-direction: normal;\\n flex-direction: column;\\n padding: 15px 0 5px 0;\\n -webkit-user-select: none;\\n -moz-user-select: none;\\n -ms-user-select: none;\\n user-select: none;\\n -webkit-box-align: center;\\n align-items: center;\\n -webkit-box-pack: center;\\n justify-content: center;\\n}\\n#copyright {\\n text-align: center;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvbGF5b3V0LWNvbXBvbmVudHMvZm9vdGVyL0M6L1VzZXJzL05hdGhhbi9zb3VyY2UvcmVwb3MvUG9ydGZvbGlvV2Vic2l0ZS9Qb3J0Zm9saW9XZWJzaXRlL0NsaWVudEFwcC9zcmMvYXBwL2xheW91dC1jb21wb25lbnRzL2Zvb3Rlci9mb290ZXIuY29tcG9uZW50Lmxlc3MiLCJzcmMvYXBwL2xheW91dC1jb21wb25lbnRzL2Zvb3Rlci9mb290ZXIuY29tcG9uZW50Lmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxvQkFBQTtFQUFBLGFBQUE7RUFDQSw0QkFBQTtFQUFBLDZCQUFBO1VBQUEsc0JBQUE7RUFDQSxxQkFBQTtFQUNBLHlCQUFBO0tBQUEsc0JBQUE7TUFBQSxxQkFBQTtVQUFBLGlCQUFBO0VBQ0EseUJBQUE7VUFBQSxtQkFBQTtFQUNBLHdCQUFBO1VBQUEsdUJBQUE7QUNDRjtBREVBO0VBQ0Usa0JBQUE7QUNBRiIsImZpbGUiOiJzcmMvYXBwL2xheW91dC1jb21wb25lbnRzL2Zvb3Rlci9mb290ZXIuY29tcG9uZW50Lmxlc3MiLCJzb3VyY2VzQ29udGVudCI6WyI6aG9zdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmc6IDE1cHggMCA1cHggMDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4jY29weXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiOmhvc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBwYWRkaW5nOiAxNXB4IDAgNXB4IDA7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbiNjb3B5cmlnaHQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4iXX0= */\"","import { Component, OnInit, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-footer',\r\n templateUrl: './footer.component.html',\r\n styleUrls: ['./footer.component.less']\r\n})\r\nexport class FooterComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n getCurrentYear(): string {\r\n return new Date().getFullYear().toString();\r\n }\r\n\r\n}\r\n","export default \":host {\\n display: -webkit-box;\\n display: flex;\\n -webkit-box-align: center;\\n align-items: center;\\n -webkit-user-select: none;\\n -moz-user-select: none;\\n -ms-user-select: none;\\n user-select: none;\\n overflow: hidden;\\n}\\nimg {\\n height: 45px;\\n margin: 10px 10px;\\n}\\na:hover img {\\n -webkit-animation: iconAnimation;\\n animation: iconAnimation;\\n -webkit-animation-duration: 0.4s;\\n animation-duration: 0.4s;\\n -webkit-animation-fill-mode: forwards;\\n animation-fill-mode: forwards;\\n -webkit-animation-timing-function: linear;\\n animation-timing-function: linear;\\n}\\n#menu {\\n -webkit-box-flex: 1;\\n flex: 1 1 auto;\\n display: -webkit-box;\\n display: flex;\\n -webkit-box-align: center;\\n align-items: center;\\n -webkit-box-pack: end;\\n justify-content: flex-end;\\n overflow: hidden;\\n}\\n#navigation {\\n -webkit-transform: scaleY(100%);\\n transform: scaleY(100%);\\n -webkit-transition: 0.4s;\\n transition: 0.4s;\\n overflow: hidden;\\n}\\n#toggle-menu {\\n margin: 10px 10px;\\n flex-shrink: 0;\\n}\\n@media only screen and (max-width: 960px) {\\n #navigation {\\n -webkit-transform: scaleY(0);\\n transform: scaleY(0);\\n opacity: 0;\\n }\\n}\\n@-webkit-keyframes iconAnimation {\\n 0% {\\n -webkit-transform: scale3d(1, 1, 1);\\n transform: scale3d(1, 1, 1);\\n }\\n 30% {\\n -webkit-transform: scale3d(0.6, 1.4, 1);\\n transform: scale3d(0.6, 1.4, 1);\\n }\\n 60% {\\n -webkit-transform: scale3d(1, 1, 1);\\n transform: scale3d(1, 1, 1);\\n }\\n 80% {\\n -webkit-transform: scale3d(1.2, 0.8, 1);\\n transform: scale3d(1.2, 0.8, 1);\\n }\\n 100% {\\n -webkit-transform: scale3d(1, 1, 1);\\n transform: scale3d(1, 1, 1);\\n }\\n}\\n@keyframes iconAnimation {\\n 0% {\\n -webkit-transform: scale3d(1, 1, 1);\\n transform: scale3d(1, 1, 1);\\n }\\n 30% {\\n -webkit-transform: scale3d(0.6, 1.4, 1);\\n transform: scale3d(0.6, 1.4, 1);\\n }\\n 60% {\\n -webkit-transform: scale3d(1, 1, 1);\\n transform: scale3d(1, 1, 1);\\n }\\n 80% {\\n -webkit-transform: scale3d(1.2, 0.8, 1);\\n transform: scale3d(1.2, 0.8, 1);\\n }\\n 100% {\\n -webkit-transform: scale3d(1, 1, 1);\\n transform: scale3d(1, 1, 1);\\n }\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvbGF5b3V0LWNvbXBvbmVudHMvaGVhZGVyL0M6L1VzZXJzL05hdGhhbi9zb3VyY2UvcmVwb3MvUG9ydGZvbGlvV2Vic2l0ZS9Qb3J0Zm9saW9XZWJzaXRlL0NsaWVudEFwcC9zcmMvYXBwL2xheW91dC1jb21wb25lbnRzL2hlYWRlci9oZWFkZXIuY29tcG9uZW50Lmxlc3MiLCJzcmMvYXBwL2xheW91dC1jb21wb25lbnRzL2hlYWRlci9oZWFkZXIuY29tcG9uZW50Lmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUE7RUFDRSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtVQUFBLG1CQUFBO0VBQ0EseUJBQUE7S0FBQSxzQkFBQTtNQUFBLHFCQUFBO1VBQUEsaUJBQUE7RUFDQSxnQkFBQTtBQ0RGO0FESUE7RUFDRSxZQUFBO0VBQ0EsaUJBQUE7QUNGRjtBREtBO0VBQ0UsZ0NBQUE7VUFBQSx3QkFBQTtFQUNBLGdDQUFBO1VBQUEsd0JBQUE7RUFDQSxxQ0FBQTtVQUFBLDZCQUFBO0VBQ0EseUNBQUE7VUFBQSxpQ0FBQTtBQ0hGO0FETUE7RUFDRSxtQkFBQTtVQUFBLGNBQUE7RUFDQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtVQUFBLG1CQUFBO0VBQ0EscUJBQUE7VUFBQSx5QkFBQTtFQUNBLGdCQUFBO0FDSkY7QURPQTtFQUNFLCtCQUFBO1VBQUEsdUJBQUE7RUFDQSx3QkFBQTtFQUFBLGdCQUFBO0VBQ0EsZ0JBQUE7QUNMRjtBRFFBO0VBQ0UsaUJBQUE7RUFDQSxjQUFBO0FDTkY7QURTQTtFQUNFO0lBQ0UsNEJBQUE7WUFBQSxvQkFBQTtJQUNBLFVBQUE7RUNQRjtBQUNGO0FEVUE7RUFDRTtJQUNFLG1DQUFBO1lBQUEsMkJBQUE7RUNSRjtFRFVBO0lBQ0UsdUNBQUE7WUFBQSwrQkFBQTtFQ1JGO0VEV0E7SUFDRSxtQ0FBQTtZQUFBLDJCQUFBO0VDVEY7RURZQTtJQUNFLHVDQUFBO1lBQUEsK0JBQUE7RUNWRjtFRGFBO0lBQ0UsbUNBQUE7WUFBQSwyQkFBQTtFQ1hGO0FBQ0Y7QURQQTtFQUNFO0lBQ0UsbUNBQUE7WUFBQSwyQkFBQTtFQ1JGO0VEVUE7SUFDRSx1Q0FBQTtZQUFBLCtCQUFBO0VDUkY7RURXQTtJQUNFLG1DQUFBO1lBQUEsMkJBQUE7RUNURjtFRFlBO0lBQ0UsdUNBQUE7WUFBQSwrQkFBQTtFQ1ZGO0VEYUE7SUFDRSxtQ0FBQTtZQUFBLDJCQUFBO0VDWEY7QUFDRiIsImZpbGUiOiJzcmMvYXBwL2xheW91dC1jb21wb25lbnRzL2hlYWRlci9oZWFkZXIuY29tcG9uZW50Lmxlc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwiLi4vLi4vLi4vYXNzZXRzL3N0eWxlcy92YXJpYWJsZXMubGVzc1wiO1xuXG46aG9zdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5pbWcge1xuICBoZWlnaHQ6IDQ1cHg7XG4gIG1hcmdpbjogMTBweCAxMHB4O1xufVxuXG5hOmhvdmVyIGltZyB7XG4gIGFuaW1hdGlvbjogaWNvbkFuaW1hdGlvbjtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAuNHM7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6Zm9yd2FyZHM7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbn1cblxuI21lbnUge1xuICBmbGV4OiAxIDEgYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuI25hdmlnYXRpb24ge1xuICB0cmFuc2Zvcm06IHNjYWxlWSgxMDAlKTtcbiAgdHJhbnNpdGlvbjogLjRzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4jdG9nZ2xlLW1lbnUge1xuICBtYXJnaW46IDEwcHggMTBweDtcbiAgZmxleC1zaHJpbms6IDA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogQHBhZ2VXaWR0aCkge1xuICAjbmF2aWdhdGlvbiB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGljb25BbmltYXRpb24ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG4gIDMwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC42LCAxLjQsIDEpO1xuICAgIFxuICB9XG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG5cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4yLCAuOCwgMSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIH1cbn1cbiIsIjpob3N0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5pbWcge1xuICBoZWlnaHQ6IDQ1cHg7XG4gIG1hcmdpbjogMTBweCAxMHB4O1xufVxuYTpob3ZlciBpbWcge1xuICBhbmltYXRpb246IGljb25BbmltYXRpb247XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMC40cztcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbn1cbiNtZW51IHtcbiAgZmxleDogMSAxIGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4jbmF2aWdhdGlvbiB7XG4gIHRyYW5zZm9ybTogc2NhbGVZKDEwMCUpO1xuICB0cmFuc2l0aW9uOiAwLjRzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuI3RvZ2dsZS1tZW51IHtcbiAgbWFyZ2luOiAxMHB4IDEwcHg7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NjBweCkge1xuICAjbmF2aWdhdGlvbiB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQGtleWZyYW1lcyBpY29uQW5pbWF0aW9uIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgfVxuICAzMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjYsIDEuNCwgMSk7XG4gIH1cbiAgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIH1cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4yLCAwLjgsIDEpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgfVxufVxuIl19 */\"","import { Component, OnInit, Output, EventEmitter } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-header',\r\n templateUrl: './header.component.html',\r\n styleUrls: ['./header.component.less']\r\n})\r\nexport class HeaderComponent implements OnInit {\r\n\r\n @Output() toggleMenuEvent: EventEmitter = new EventEmitter();\r\n\r\n constructor() { }\r\n\r\n toggleMenu() {\r\n this.toggleMenuEvent.emit(null);\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","export default \":host {\\n -webkit-box-flex: 1;\\n flex: 1 0 auto;\\n display: -webkit-box;\\n display: flex;\\n -webkit-box-orient: vertical;\\n -webkit-box-direction: normal;\\n flex-direction: column;\\n -webkit-box-align: stretch;\\n align-items: stretch;\\n height: 100%;\\n max-width: 960px;\\n width: 100%;\\n margin: 0 auto;\\n}\\n#footer {\\n -webkit-box-flex: 0;\\n flex-grow: 0;\\n}\\n#content {\\n -webkit-box-flex: 1;\\n flex: 1 0 auto;\\n padding: 10px;\\n}\\n#header-image {\\n background-repeat: no-repeat;\\n background-position: center;\\n background-size: cover;\\n background-attachment: fixed;\\n background-color: #000;\\n display: -webkit-box;\\n display: flex;\\n -webkit-box-orient: vertical;\\n -webkit-box-direction: normal;\\n flex-direction: column;\\n -webkit-box-pack: justify;\\n justify-content: space-between;\\n -webkit-box-align: center;\\n align-items: center;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvbGF5b3V0LWNvbXBvbmVudHMvaW5uZXItbGF5b3V0L0M6L1VzZXJzL05hdGhhbi9zb3VyY2UvcmVwb3MvUG9ydGZvbGlvV2Vic2l0ZS9Qb3J0Zm9saW9XZWJzaXRlL0NsaWVudEFwcC9zcmMvYXBwL2xheW91dC1jb21wb25lbnRzL2lubmVyLWxheW91dC9pbm5lci1sYXlvdXQuY29tcG9uZW50Lmxlc3MiLCJzcmMvYXBwL2xheW91dC1jb21wb25lbnRzL2lubmVyLWxheW91dC9pbm5lci1sYXlvdXQuY29tcG9uZW50Lmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUE7RUFDRSxtQkFBQTtVQUFBLGNBQUE7RUFDQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSw0QkFBQTtFQUFBLDZCQUFBO1VBQUEsc0JBQUE7RUFDQSwwQkFBQTtVQUFBLG9CQUFBO0VBQ0EsWUFBQTtFQUNBLGdCQUFBO0VBQ0EsV0FBQTtFQUNBLGNBQUE7QUNERjtBRElBO0VBQ0UsbUJBQUE7VUFBQSxZQUFBO0FDRkY7QURLQTtFQUNFLG1CQUFBO1VBQUEsY0FBQTtFQUNBLGFBQUE7QUNIRjtBRE1BO0VBRUUsNEJBQUE7RUFDQSwyQkFBQTtFQUNBLHNCQUFBO0VBQ0EsNEJBQUE7RUFDQSxzQkFBQTtFQUNBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLDRCQUFBO0VBQUEsNkJBQUE7VUFBQSxzQkFBQTtFQUNBLHlCQUFBO1VBQUEsOEJBQUE7RUFDQSx5QkFBQTtVQUFBLG1CQUFBO0FDTEYiLCJmaWxlIjoic3JjL2FwcC9sYXlvdXQtY29tcG9uZW50cy9pbm5lci1sYXlvdXQvaW5uZXItbGF5b3V0LmNvbXBvbmVudC5sZXNzIiwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCAnLi4vLi4vLi4vYXNzZXRzL3N0eWxlcy92YXJpYWJsZXMubGVzcyc7XG5cbjpob3N0IHtcbiAgZmxleDogMSAwIGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1heC13aWR0aDogQHBhZ2VXaWR0aDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4jZm9vdGVyIHtcbiAgZmxleC1ncm93OiAwO1xufVxuXG4jY29udGVudCB7XG4gIGZsZXg6IDEgMCBhdXRvO1xuICBwYWRkaW5nOiAxMHB4O1xufVxuXG4jaGVhZGVyLWltYWdlIHtcbiAgLy9mbGV4LWdyb3c6IDE7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuIiwiOmhvc3Qge1xuICBmbGV4OiAxIDAgYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiA5NjBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuI2Zvb3RlciB7XG4gIGZsZXgtZ3JvdzogMDtcbn1cbiNjb250ZW50IHtcbiAgZmxleDogMSAwIGF1dG87XG4gIHBhZGRpbmc6IDEwcHg7XG59XG4jaGVhZGVyLWltYWdlIHtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4iXX0= */\"","import { Component, OnInit, Input, HostBinding } from '@angular/core';\r\nimport { fadeInAnimation } from '../../_animation/content-enter-animations';\r\nimport { debug } from 'util';\r\nimport { ViewportService } from 'src/app/_services/viewport.service';\r\n\r\n@Component({\r\n selector: 'app-inner-layout',\r\n templateUrl: './inner-layout.component.html',\r\n styleUrls: ['./inner-layout.component.less'],\r\n animations: [fadeInAnimation]\r\n})\r\n\r\nexport class InnerLayoutComponent implements OnInit {\r\n\r\n private topPadding: string = '10px';\r\n\r\n constructor(private viewportService: ViewportService) {\r\n \r\n }\r\n\r\n ngOnInit() {\r\n this.adjustTopPadding();\r\n }\r\n\r\n @Input() pageReady: boolean = false;\r\n @Input() pageReadyManualOverride: boolean = false;\r\n\r\n private adjustTopPadding(): void {\r\n\r\n let adjustmentHeight: string = '4.2em'; //fallback adjustment value\r\n\r\n let headerElement: HTMLElement = document.getElementById('header'); //get header element\r\n if (headerElement != null) { //if header element exists\r\n adjustmentHeight = headerElement.clientHeight.toString() + 'px'; //use the header height as the adjustment height\r\n }\r\n\r\n let contentElement: HTMLElement = document.getElementById('content'); //get the content element\r\n if (contentElement != null) { //if the content element exists\r\n let totalTopPadding: string = `calc(${adjustmentHeight} + ${this.topPadding})`; //calculate the total top padding value by adding the adjustment height to the top padding height\r\n contentElement.style.paddingTop = totalTopPadding; //set the content element's top padding value to the calculated total top padding value\r\n }\r\n }\r\n}\r\n","export default \":host {\\n position: fixed;\\n top: 50%;\\n left: 50%;\\n -webkit-transform: translate(-50%, -50%);\\n transform: translate(-50%, -50%);\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvbGF5b3V0LWNvbXBvbmVudHMvbG9hZC1iYXIvQzovVXNlcnMvTmF0aGFuL3NvdXJjZS9yZXBvcy9Qb3J0Zm9saW9XZWJzaXRlL1BvcnRmb2xpb1dlYnNpdGUvQ2xpZW50QXBwL3NyYy9hcHAvbGF5b3V0LWNvbXBvbmVudHMvbG9hZC1iYXIvbG9hZC1iYXIuY29tcG9uZW50Lmxlc3MiLCJzcmMvYXBwL2xheW91dC1jb21wb25lbnRzL2xvYWQtYmFyL2xvYWQtYmFyLmNvbXBvbmVudC5sZXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsZUFBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBQ0Esd0NBQUE7VUFBQSxnQ0FBQTtBQ0NGIiwiZmlsZSI6InNyYy9hcHAvbGF5b3V0LWNvbXBvbmVudHMvbG9hZC1iYXIvbG9hZC1iYXIuY29tcG9uZW50Lmxlc3MiLCJzb3VyY2VzQ29udGVudCI6WyI6aG9zdCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG4iLCI6aG9zdCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG4iXX0= */\"","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-load-bar',\n templateUrl: './load-bar.component.html',\n styleUrls: ['./load-bar.component.less']\n})\nexport class LoadBarComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","export default \":host {\\n display: -webkit-box;\\n display: flex;\\n -webkit-box-align: center;\\n align-items: center;\\n -webkit-box-pack: end;\\n justify-content: flex-end;\\n}\\nh2 {\\n color: inherit;\\n}\\na {\\n margin: 0 5px;\\n padding: 5px;\\n}\\n.active {\\n color: white;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvbGF5b3V0LWNvbXBvbmVudHMvbmF2aWdhdGlvbi9DOi9Vc2Vycy9OYXRoYW4vc291cmNlL3JlcG9zL1BvcnRmb2xpb1dlYnNpdGUvUG9ydGZvbGlvV2Vic2l0ZS9DbGllbnRBcHAvc3JjL2FwcC9sYXlvdXQtY29tcG9uZW50cy9uYXZpZ2F0aW9uL25hdmlnYXRpb24uY29tcG9uZW50Lmxlc3MiLCJzcmMvYXBwL2xheW91dC1jb21wb25lbnRzL25hdmlnYXRpb24vbmF2aWdhdGlvbi5jb21wb25lbnQubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTtFQUNFLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHlCQUFBO1VBQUEsbUJBQUE7RUFDQSxxQkFBQTtVQUFBLHlCQUFBO0FDREY7QURJQTtFQUNFLGNBQUE7QUNGRjtBREtBO0VBQ0UsYUFBQTtFQUNBLFlBQUE7QUNIRjtBRE1BO0VBQ0UsWUFBQTtBQ0pGIiwiZmlsZSI6InNyYy9hcHAvbGF5b3V0LWNvbXBvbmVudHMvbmF2aWdhdGlvbi9uYXZpZ2F0aW9uLmNvbXBvbmVudC5sZXNzIiwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCAnLi4vLi4vLi4vYXNzZXRzL3N0eWxlcy92YXJpYWJsZXMubGVzcyc7XG5cbjpob3N0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuaDIge1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuYSB7XG4gIG1hcmdpbjogMCA1cHg7XG4gIHBhZGRpbmc6IDVweDtcbn1cblxuLmFjdGl2ZSB7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cbiIsIjpob3N0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cbmgyIHtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5hIHtcbiAgbWFyZ2luOiAwIDVweDtcbiAgcGFkZGluZzogNXB4O1xufVxuLmFjdGl2ZSB7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cbiJdfQ== */\"","import { Component, OnInit, Output, EventEmitter } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-navigation',\r\n templateUrl: './navigation.component.html',\r\n styleUrls: ['./navigation.component.less']\r\n})\r\nexport class NavigationComponent implements OnInit {\r\n\r\n @Output() closeMenuEvent: EventEmitter = new EventEmitter();\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n closeMenu() {\r\n this.closeMenuEvent.emit(null);\r\n }\r\n\r\n}\r\n","export default \":host {\\n display: -webkit-box;\\n display: flex;\\n -webkit-box-orient: vertical;\\n -webkit-box-direction: normal;\\n flex-direction: column;\\n -webkit-box-align: center;\\n align-items: center;\\n -webkit-user-select: none;\\n -moz-user-select: none;\\n -ms-user-select: none;\\n user-select: none;\\n overflow: hidden;\\n max-width: 100%;\\n}\\n#side-navigation {\\n -webkit-box-flex: 1;\\n flex: 1 0 auto;\\n}\\n#close-menu {\\n align-self: flex-end;\\n margin: 20px 10px;\\n}\\n#close-menu h2 {\\n font-weight: bold;\\n font-size: 1.2em;\\n}\\n#side-menu {\\n display: -webkit-box;\\n display: flex;\\n -webkit-box-orient: vertical;\\n -webkit-box-direction: normal;\\n flex-direction: column;\\n -webkit-box-align: center;\\n align-items: center;\\n -webkit-box-pack: justify;\\n justify-content: space-between;\\n -webkit-box-flex: 1;\\n flex: 1 0 auto;\\n width: 15em;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvbGF5b3V0LWNvbXBvbmVudHMvc2lkZS1iYXIvQzovVXNlcnMvTmF0aGFuL3NvdXJjZS9yZXBvcy9Qb3J0Zm9saW9XZWJzaXRlL1BvcnRmb2xpb1dlYnNpdGUvQ2xpZW50QXBwL3NyYy9hcHAvbGF5b3V0LWNvbXBvbmVudHMvc2lkZS1iYXIvc2lkZS1iYXIuY29tcG9uZW50Lmxlc3MiLCJzcmMvYXBwL2xheW91dC1jb21wb25lbnRzL3NpZGUtYmFyL3NpZGUtYmFyLmNvbXBvbmVudC5sZXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBO0VBQ0Usb0JBQUE7RUFBQSxhQUFBO0VBQ0EsNEJBQUE7RUFBQSw2QkFBQTtVQUFBLHNCQUFBO0VBQ0EseUJBQUE7VUFBQSxtQkFBQTtFQUNBLHlCQUFBO0tBQUEsc0JBQUE7TUFBQSxxQkFBQTtVQUFBLGlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxlQUFBO0FDREY7QURJQTtFQUNFLG1CQUFBO1VBQUEsY0FBQTtBQ0ZGO0FES0E7RUFDRSxvQkFBQTtFQUNBLGlCQUFBO0FDSEY7QURNQTtFQUNFLGlCQUFBO0VBQ0EsZ0JBQUE7QUNKRjtBRE9BO0VBQ0Usb0JBQUE7RUFBQSxhQUFBO0VBQ0EsNEJBQUE7RUFBQSw2QkFBQTtVQUFBLHNCQUFBO0VBQ0EseUJBQUE7VUFBQSxtQkFBQTtFQUNBLHlCQUFBO1VBQUEsOEJBQUE7RUFDQSxtQkFBQTtVQUFBLGNBQUE7RUFDQSxXQUFBO0FDTEYiLCJmaWxlIjoic3JjL2FwcC9sYXlvdXQtY29tcG9uZW50cy9zaWRlLWJhci9zaWRlLWJhci5jb21wb25lbnQubGVzcyIsInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgJy4uLy4uLy4uL2Fzc2V0cy9zdHlsZXMvdmFyaWFibGVzLmxlc3MnO1xuXG46aG9zdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbiNzaWRlLW5hdmlnYXRpb24ge1xuICBmbGV4OiAxIDAgYXV0bztcbn1cblxuI2Nsb3NlLW1lbnUge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgbWFyZ2luOiAyMHB4IDEwcHg7XG59XG5cbiNjbG9zZS1tZW51IGgyIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG59XG5cbiNzaWRlLW1lbnUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGZsZXg6IDEgMCBhdXRvO1xuICB3aWR0aDogMTVlbTtcbn1cblxuI3NpZGUtY29ubmVjdCB7XG4gIFxufVxuIiwiOmhvc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuI3NpZGUtbmF2aWdhdGlvbiB7XG4gIGZsZXg6IDEgMCBhdXRvO1xufVxuI2Nsb3NlLW1lbnUge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgbWFyZ2luOiAyMHB4IDEwcHg7XG59XG4jY2xvc2UtbWVudSBoMiB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDEuMmVtO1xufVxuI3NpZGUtbWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZmxleDogMSAwIGF1dG87XG4gIHdpZHRoOiAxNWVtO1xufVxuIl19 */\"","import { Component, OnInit, HostBinding } from '@angular/core';\r\nimport {\r\n trigger,\r\n state,\r\n style,\r\n animate,\r\n group,\r\n transition,\r\n query,\r\n sequence\r\n} from '@angular/animations';\r\n\r\n@Component({\r\n selector: 'app-side-bar',\r\n templateUrl: './side-bar.component.html',\r\n styleUrls: ['./side-bar.component.less'],\r\n animations: [\r\n trigger('openClose', [\r\n state('true',\r\n style({\r\n width: '15em',\r\n })\r\n ),\r\n state('false',\r\n style({\r\n width: '0',\r\n }),\r\n ),\r\n transition('true => false', [\r\n group([\r\n query('#side-menu', [\r\n animate('.4s', style({ opacity: 0 }))\r\n ]),\r\n animate('.4s'),\r\n ])\r\n ]),\r\n transition('false => true', [\r\n query('#side-menu',[\r\n style({ opacity: 0 })\r\n ]),\r\n group([\r\n animate('.4s'),\r\n query('#side-menu', [\r\n animate('.4s', style({ opacity: 1 }))\r\n ])\r\n ])\r\n ])\r\n ])\r\n ]\r\n})\r\nexport class SideBarComponent implements OnInit {\r\n\r\n isOpen: boolean = false;\r\n\r\n @HostBinding('@openClose') get openClose() :boolean {\r\n return this.isOpen;\r\n }\r\n\r\n close(): void {\r\n this.isOpen = false;\r\n }\r\n\r\n open(): void {\r\n this.isOpen = true;\r\n }\r\n\r\n toggle(): void {\r\n this.isOpen = !this.isOpen;\r\n }\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","export default \":host {\\n background-color: #258;\\n display: -webkit-box;\\n display: flex;\\n justify-content: space-around;\\n width: 100%;\\n}\\nimg {\\n opacity: 0.35;\\n -webkit-transition: 0.4s;\\n transition: 0.4s;\\n height: 40px;\\n margin: 5px;\\n}\\nimg:hover {\\n opacity: 1;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvbGF5b3V0LWNvbXBvbmVudHMvc2lkZS1jb25uZWN0L0M6L1VzZXJzL05hdGhhbi9zb3VyY2UvcmVwb3MvUG9ydGZvbGlvV2Vic2l0ZS9Qb3J0Zm9saW9XZWJzaXRlL0NsaWVudEFwcC9zcmMvYXBwL2xheW91dC1jb21wb25lbnRzL3NpZGUtY29ubmVjdC9zaWRlLWNvbm5lY3QuY29tcG9uZW50Lmxlc3MiLCJzcmMvYXBwL2xheW91dC1jb21wb25lbnRzL3NpZGUtY29ubmVjdC9zaWRlLWNvbm5lY3QuY29tcG9uZW50Lmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUE7RUFDRSxzQkFBQTtFQUNBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLDZCQUFBO0VBQ0EsV0FBQTtBQ0RGO0FESUE7RUFDRSxhQUFBO0VBQ0Esd0JBQUE7RUFBQSxnQkFBQTtFQUNBLFlBQUE7RUFDQSxXQUFBO0FDRkY7QURLQTtFQUNFLFVBQUE7QUNIRiIsImZpbGUiOiJzcmMvYXBwL2xheW91dC1jb21wb25lbnRzL3NpZGUtY29ubmVjdC9zaWRlLWNvbm5lY3QuY29tcG9uZW50Lmxlc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0ICcuLi8uLi8uLi9hc3NldHMvc3R5bGVzL3ZhcmlhYmxlcy5sZXNzJztcblxuOmhvc3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAYWNjZW50Q29sb3I7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICB3aWR0aDogMTAwJTtcbn1cblxuaW1nIHtcbiAgb3BhY2l0eTogLjM1O1xuICB0cmFuc2l0aW9uOiAuNHM7XG4gIGhlaWdodDogNDBweDtcbiAgbWFyZ2luOiA1cHg7XG59XG5cbmltZzpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG4iLCI6aG9zdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNTg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICB3aWR0aDogMTAwJTtcbn1cbmltZyB7XG4gIG9wYWNpdHk6IDAuMzU7XG4gIHRyYW5zaXRpb246IDAuNHM7XG4gIGhlaWdodDogNDBweDtcbiAgbWFyZ2luOiA1cHg7XG59XG5pbWc6aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuIl19 */\"","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-side-connect',\n templateUrl: '../connect/connect.component.html',\n styleUrls: ['./side-connect.component.less']\n})\nexport class SideConnectComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","export default \":host {\\n display: -webkit-box;\\n display: flex;\\n -webkit-box-align: stretch;\\n align-items: stretch;\\n -webkit-box-orient: vertical;\\n -webkit-box-direction: normal;\\n flex-direction: column;\\n width: 100%;\\n}\\nh2 {\\n color: inherit;\\n}\\na {\\n padding: 7px 5px;\\n margin: 3px 0;\\n background-color: #282828;\\n -webkit-transition: 0.4s;\\n transition: 0.4s;\\n}\\na:hover {\\n background-color: #282828;\\n}\\n.active {\\n color: white;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvbGF5b3V0LWNvbXBvbmVudHMvc2lkZS1uYXZpZ2F0aW9uL0M6L1VzZXJzL05hdGhhbi9zb3VyY2UvcmVwb3MvUG9ydGZvbGlvV2Vic2l0ZS9Qb3J0Zm9saW9XZWJzaXRlL0NsaWVudEFwcC9zcmMvYXBwL2xheW91dC1jb21wb25lbnRzL3NpZGUtbmF2aWdhdGlvbi9zaWRlLW5hdmlnYXRpb24uY29tcG9uZW50Lmxlc3MiLCJzcmMvYXBwL2xheW91dC1jb21wb25lbnRzL3NpZGUtbmF2aWdhdGlvbi9zaWRlLW5hdmlnYXRpb24uY29tcG9uZW50Lmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUE7RUFDRSxvQkFBQTtFQUFBLGFBQUE7RUFDQSwwQkFBQTtVQUFBLG9CQUFBO0VBQ0EsNEJBQUE7RUFBQSw2QkFBQTtVQUFBLHNCQUFBO0VBQ0EsV0FBQTtBQ0RGO0FESUE7RUFDRSxjQUFBO0FDRkY7QURLQTtFQUNFLGdCQUFBO0VBQ0EsYUFBQTtFQUVBLHlCQUFBO0VBQ0Esd0JBQUE7RUFBQSxnQkFBQTtBQ0pGO0FET0E7RUFDRSx5QkFBQTtBQ0xGO0FEUUE7RUFDRSxZQUFBO0FDTkYiLCJmaWxlIjoic3JjL2FwcC9sYXlvdXQtY29tcG9uZW50cy9zaWRlLW5hdmlnYXRpb24vc2lkZS1uYXZpZ2F0aW9uLmNvbXBvbmVudC5sZXNzIiwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCAnLi4vLi4vLi4vYXNzZXRzL3N0eWxlcy92YXJpYWJsZXMubGVzcyc7XG5cbjpob3N0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5oMiB7XG4gIGNvbG9yOiBpbmhlcml0XG59XG5cbmEge1xuICBwYWRkaW5nOiA3cHggNXB4O1xuICBtYXJnaW46IDNweCAwO1xuICAvL2JvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAZ3JleTtcbiAgdHJhbnNpdGlvbjogLjRzO1xufVxuXG5hOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGdyZXk7XG59XG5cbi5hY3RpdmUge1xuICBjb2xvcjogd2hpdGU7XG59XG4iLCI6aG9zdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogMTAwJTtcbn1cbmgyIHtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5hIHtcbiAgcGFkZGluZzogN3B4IDVweDtcbiAgbWFyZ2luOiAzcHggMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI4MjgyODtcbiAgdHJhbnNpdGlvbjogMC40cztcbn1cbmE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjgyODI4O1xufVxuLmFjdGl2ZSB7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cbiJdfQ== */\"","import { Component, OnInit, Output, EventEmitter } from '@angular/core';\n\n@Component({\n selector: 'app-side-navigation',\n templateUrl: '../navigation/navigation.component.html',\n styleUrls: ['./side-navigation.component.less']\n})\nexport class SideNavigationComponent implements OnInit {\n\n @Output() closeMenuEvent: EventEmitter = new EventEmitter();\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n closeMenu() {\r\n this.closeMenuEvent.emit(null);\r\n }\n\n}\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2UtY29tcG9uZW50cy9hYm91dC9hYm91dC5jb21wb25lbnQubGVzcyJ9 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { rightSlideInAnimation } from '../../_animation/content-enter-animations';\r\nimport { ViewportService } from 'src/app/_services/viewport.service';\r\n\r\n@Component({\r\n selector: 'app-about',\r\n templateUrl: './about.component.html',\r\n styleUrls: ['./about.component.less'],\r\n animations: [rightSlideInAnimation]\r\n})\r\nexport class AboutComponent implements OnInit {\r\n\r\n constructor(private viewportService: ViewportService) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2UtY29tcG9uZW50cy9jb250YWN0L2NvbnRhY3QuY29tcG9uZW50Lmxlc3MifQ== */\"","import { Component, OnInit } from '@angular/core';\nimport { leftSlideInAnimation } from '../../_animation/content-enter-animations';\nimport { ViewportService } from 'src/app/_services/viewport.service';\r\n\n@Component({\n selector: 'app-contact',\n templateUrl: './contact.component.html',\n styleUrls: ['./contact.component.less'],\n animations: [leftSlideInAnimation]\n})\nexport class ContactComponent implements OnInit {\n\n constructor(private viewportService: ViewportService) { }\n\n ngOnInit() {\n }\n\n}\n","export default \":host {\\n display: -webkit-box;\\n display: flex;\\n -webkit-box-orient: vertical;\\n -webkit-box-direction: normal;\\n flex-direction: column;\\n height: 100%;\\n}\\n#intro {\\n height: 100%;\\n flex-shrink: 0;\\n display: inline;\\n -webkit-user-select: none;\\n -moz-user-select: none;\\n -ms-user-select: none;\\n user-select: none;\\n background: url('IntroImage.jpg');\\n background-repeat: no-repeat;\\n background-position: center;\\n background-size: cover;\\n background-attachment: fixed;\\n}\\n#scroll-button {\\n position: absolute;\\n display: -webkit-box;\\n display: flex;\\n -webkit-box-align: center;\\n align-items: center;\\n -webkit-box-pack: center;\\n justify-content: center;\\n height: 1.5em;\\n width: 4em;\\n overflow: hidden;\\n bottom: 50px;\\n left: 50%;\\n -webkit-transform: translateX(-50%);\\n transform: translateX(-50%);\\n padding-top: -8px;\\n cursor: pointer;\\n font-size: 2.5em;\\n color: #258;\\n border: 2px solid #258;\\n border-radius: 2em;\\n opacity: 0;\\n -webkit-animation: fadeInAnimation 3s 4s;\\n animation: fadeInAnimation 3s 4s;\\n -webkit-animation-fill-mode: forwards;\\n animation-fill-mode: forwards;\\n -webkit-transition: 0.4s;\\n transition: 0.4s;\\n}\\n#scroll-button:hover {\\n color: #EEE;\\n border-color: #EEE;\\n opacity: 1;\\n}\\n#inner-layout {\\n -webkit-box-flex: 1;\\n flex: 1 1 auto;\\n height: unset;\\n}\\n#inner-layout h3 {\\n text-align: center;\\n margin-bottom: 150px;\\n padding: 10px;\\n font-style: italic;\\n}\\n@-webkit-keyframes fadeInAnimation {\\n from {\\n opacity: 0;\\n }\\n to {\\n opacity: 1;\\n }\\n}\\n@keyframes fadeInAnimation {\\n from {\\n opacity: 0;\\n }\\n to {\\n opacity: 1;\\n }\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcGFnZS1jb21wb25lbnRzL2hvbWUvQzovVXNlcnMvTmF0aGFuL3NvdXJjZS9yZXBvcy9Qb3J0Zm9saW9XZWJzaXRlL1BvcnRmb2xpb1dlYnNpdGUvQ2xpZW50QXBwL3NyYy9hcHAvcGFnZS1jb21wb25lbnRzL2hvbWUvaG9tZS5jb21wb25lbnQubGVzcyIsInNyYy9hcHAvcGFnZS1jb21wb25lbnRzL2hvbWUvaG9tZS5jb21wb25lbnQubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTtFQUNFLG9CQUFBO0VBQUEsYUFBQTtFQUNBLDRCQUFBO0VBQUEsNkJBQUE7VUFBQSxzQkFBQTtFQUNBLFlBQUE7QUNERjtBRElBO0VBRUUsWUFBQTtFQUNBLGNBQUE7RUFDQSxlQUFBO0VBQ0EseUJBQUE7S0FBQSxzQkFBQTtNQUFBLHFCQUFBO1VBQUEsaUJBQUE7RUFDQSxpQ0FBQTtFQUNBLDRCQUFBO0VBQ0EsMkJBQUE7RUFDQSxzQkFBQTtFQUNBLDRCQUFBO0FDSEY7QURNQTtFQUNFLGtCQUFBO0VBQ0Esb0JBQUE7RUFBQSxhQUFBO0VBQ0EseUJBQUE7VUFBQSxtQkFBQTtFQUNBLHdCQUFBO1VBQUEsdUJBQUE7RUFDQSxhQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsWUFBQTtFQUNBLFNBQUE7RUFDQSxtQ0FBQTtVQUFBLDJCQUFBO0VBQ0EsaUJBQUE7RUFDQSxlQUFBO0VBQ0EsZ0JBQUE7RUFDQSxXQUFBO0VBQ0Esc0JBQUE7RUFDQSxrQkFBQTtFQUNBLFVBQUE7RUFDQSx3Q0FBQTtVQUFBLGdDQUFBO0VBQ0EscUNBQUE7VUFBQSw2QkFBQTtFQUNBLHdCQUFBO0VBQUEsZ0JBQUE7QUNKRjtBRE9BO0VBQ0UsV0FBQTtFQUNBLGtCQUFBO0VBQ0EsVUFBQTtBQ0xGO0FEUUE7RUFDRSxtQkFBQTtVQUFBLGNBQUE7RUFDQSxhQUFBO0FDTkY7QURTQTtFQUNFLGtCQUFBO0VBQ0Esb0JBQUE7RUFDQSxhQUFBO0VBQ0Esa0JBQUE7QUNQRjtBRFlBO0VBQ0U7SUFDRSxVQUFBO0VDVkY7RURhQTtJQUNFLFVBQUE7RUNYRjtBQUNGO0FESUE7RUFDRTtJQUNFLFVBQUE7RUNWRjtFRGFBO0lBQ0UsVUFBQTtFQ1hGO0FBQ0YiLCJmaWxlIjoic3JjL2FwcC9wYWdlLWNvbXBvbmVudHMvaG9tZS9ob21lLmNvbXBvbmVudC5sZXNzIiwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCAnLi4vLi4vLi4vYXNzZXRzL3N0eWxlcy92YXJpYWJsZXMubGVzcyc7XG5cbjpob3N0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4jaW50cm8ge1xuICAvL3Bvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBmbGV4LXNocmluazogMDtcbiAgZGlzcGxheTppbmxpbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vLi4vLi4vYXNzZXRzL2ltZy9JbnRyb0ltYWdlLmpwZyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbn1cblxuI3Njcm9sbC1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBoZWlnaHQ6IDEuNWVtO1xuICB3aWR0aDogNGVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3R0b206IDUwcHg7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBwYWRkaW5nLXRvcDogLThweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDIuNWVtO1xuICBjb2xvcjogQGFjY2VudENvbG9yO1xuICBib3JkZXI6IDJweCBzb2xpZCBAYWNjZW50Q29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDJlbTtcbiAgb3BhY2l0eTogMDtcbiAgYW5pbWF0aW9uOiBmYWRlSW5BbmltYXRpb24gM3MgNHM7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICB0cmFuc2l0aW9uOiAuNHM7XG59XG5cbiNzY3JvbGwtYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6IEB3aGl0ZTtcbiAgYm9yZGVyLWNvbG9yOiBAd2hpdGU7XG4gIG9wYWNpdHk6IDE7XG59XG5cbiNpbm5lci1sYXlvdXQge1xuICBmbGV4OiAxIDEgYXV0bztcbiAgaGVpZ2h0OiB1bnNldDtcbn1cblxuI2lubmVyLWxheW91dCBoMyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMTUwcHg7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGZvbnQtc3R5bGU6aXRhbGljO1xufVxuXG5cblxuQGtleWZyYW1lcyBmYWRlSW5BbmltYXRpb24ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuXG4iLCI6aG9zdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGhlaWdodDogMTAwJTtcbn1cbiNpbnRybyB7XG4gIGhlaWdodDogMTAwJTtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHVybCguLi8uLi8uLi9hc3NldHMvaW1nL0ludHJvSW1hZ2UuanBnKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xufVxuI3Njcm9sbC1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBoZWlnaHQ6IDEuNWVtO1xuICB3aWR0aDogNGVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3R0b206IDUwcHg7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBwYWRkaW5nLXRvcDogLThweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDIuNWVtO1xuICBjb2xvcjogIzI1ODtcbiAgYm9yZGVyOiAycHggc29saWQgIzI1ODtcbiAgYm9yZGVyLXJhZGl1czogMmVtO1xuICBvcGFjaXR5OiAwO1xuICBhbmltYXRpb246IGZhZGVJbkFuaW1hdGlvbiAzcyA0cztcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gIHRyYW5zaXRpb246IDAuNHM7XG59XG4jc2Nyb2xsLWJ1dHRvbjpob3ZlciB7XG4gIGNvbG9yOiAjRUVFO1xuICBib3JkZXItY29sb3I6ICNFRUU7XG4gIG9wYWNpdHk6IDE7XG59XG4jaW5uZXItbGF5b3V0IHtcbiAgZmxleDogMSAxIGF1dG87XG4gIGhlaWdodDogdW5zZXQ7XG59XG4jaW5uZXItbGF5b3V0IGgzIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAxNTBweDtcbiAgcGFkZGluZzogMTBweDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuQGtleWZyYW1lcyBmYWRlSW5BbmltYXRpb24ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4iXX0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { Project } from '../../_models/project';\r\nimport { fadeInAnimation } from '../../_animation/content-enter-animations';\r\nimport { ProjectService } from 'src/app/_services/project.service';\r\nimport { ViewportService } from 'src/app/_services/viewport.service';\r\n\r\n@Component({\r\n selector: 'app-home',\r\n templateUrl: './home.component.html',\r\n styleUrls: ['./home.component.less'],\r\n animations: [ fadeInAnimation ]\r\n})\r\nexport class HomeComponent implements OnInit {\r\n\r\n projects: Project[];\r\n\r\n constructor(private projectService: ProjectService, private viewportService: ViewportService) { }\r\n\r\n ngOnInit() {\r\n this.projectService.latest(3)\r\n .subscribe(projects => this.projects = projects);\r\n\r\n \r\n }\r\n\r\n index(): Observable {\r\n\r\n return null;\r\n }\r\n\r\n get(id: number): Observable {\r\n\r\n return null;\r\n }\r\n\r\n scrollToContent(): void {\r\n let contentElement: HTMLElement = document.getElementById(\"inner-layout\"); //get the inner layout element\r\n if (contentElement != null) { //if the inner layout element exists\r\n contentElement.scrollIntoView({ behavior: \"smooth\" }); //scroll to the inner layout component\r\n }\r\n \r\n }\r\n\r\n}\r\n","export default \"a {\\n display: grid;\\n grid-auto-rows: auto;\\n grid-template-columns: 150px 1fr auto;\\n grid-template-rows: auto;\\n grid-gap: 10px;\\n padding: 10px;\\n margin: 5px 0;\\n grid-template-areas: \\\"thumb title date\\\" \\\"thumb description description\\\";\\n -webkit-box-align: center;\\n align-items: center;\\n -webkit-box-pack: center;\\n justify-content: center;\\n margin-top: 30px;\\n -webkit-transition: 0.4s;\\n transition: 0.4s;\\n cursor: pointer;\\n border-radius: 10px;\\n background-color: #181818;\\n border: 1px dotted #282828;\\n color: inherit;\\n -webkit-user-select: none;\\n -moz-user-select: none;\\n -ms-user-select: none;\\n user-select: none;\\n}\\na:hover {\\n -webkit-transform: translate(0px, -3px);\\n transform: translate(0px, -3px);\\n background-color: #282828;\\n -webkit-filter: drop-shadow(0px 3px 3px #000);\\n filter: drop-shadow(0px 3px 3px #000);\\n}\\nimg {\\n width: 100%;\\n justify-self: center;\\n border-radius: 10px;\\n}\\n.thumb {\\n grid-area: thumb;\\n}\\n.date {\\n grid-area: date;\\n justify-self: end;\\n}\\n.title {\\n grid-area: title;\\n}\\n.description {\\n grid-area: description;\\n text-align: justify;\\n}\\n@media only screen and (max-width: 600px) {\\n a {\\n grid-template-columns: 150px auto;\\n grid-template-rows: auto;\\n grid-template-areas: \\\"thumb title\\\" \\\"thumb date\\\" \\\"description description\\\";\\n }\\n .title,\\n .date {\\n justify-self: center;\\n text-align: center;\\n }\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcGFnZS1jb21wb25lbnRzL2hvbWUvcHJvamVjdC9DOi9Vc2Vycy9OYXRoYW4vc291cmNlL3JlcG9zL1BvcnRmb2xpb1dlYnNpdGUvUG9ydGZvbGlvV2Vic2l0ZS9DbGllbnRBcHAvc3JjL2FwcC9wYWdlLWNvbXBvbmVudHMvaG9tZS9wcm9qZWN0L3Byb2plY3QuY29tcG9uZW50Lmxlc3MiLCJzcmMvYXBwL3BhZ2UtY29tcG9uZW50cy9ob21lL3Byb2plY3QvcHJvamVjdC5jb21wb25lbnQubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTtFQUNFLGFBQUE7RUFDQSxvQkFBQTtFQUNBLHFDQUFBO0VBQ0Esd0JBQUE7RUFDQSxjQUFBO0VBQ0EsYUFBQTtFQUNBLGFBQUE7RUFDQSx1RUFBQTtFQUVBLHlCQUFBO1VBQUEsbUJBQUE7RUFDQSx3QkFBQTtVQUFBLHVCQUFBO0VBQ0EsZ0JBQUE7RUFDQSx3QkFBQTtFQUFBLGdCQUFBO0VBQ0EsZUFBQTtFQUNBLG1CQUFBO0VBQ0EseUJBQUE7RUFDQSwwQkFBQTtFQUNBLGNBQUE7RUFDQSx5QkFBQTtLQUFBLHNCQUFBO01BQUEscUJBQUE7VUFBQSxpQkFBQTtBQ0ZGO0FES0E7RUFDRSx1Q0FBQTtVQUFBLCtCQUFBO0VBQ0EseUJBQUE7RUFDQSw2Q0FBQTtVQUFBLHFDQUFBO0FDSEY7QURNQTtFQUNFLFdBQUE7RUFDQSxvQkFBQTtFQUNBLG1CQUFBO0FDSkY7QURPQTtFQUNFLGdCQUFBO0FDTEY7QURRQTtFQUNFLGVBQUE7RUFDQSxpQkFBQTtBQ05GO0FEU0E7RUFDRSxnQkFBQTtBQ1BGO0FEVUE7RUFDRSxzQkFBQTtFQUNBLG1CQUFBO0FDUkY7QURXQTtFQUNFO0lBQ0UsaUNBQUE7SUFDQSx3QkFBQTtJQUNBLHlFQUFBO0VDVEY7RURjQTs7SUFDRSxvQkFBQTtJQUNBLGtCQUFBO0VDWEY7QUFDRiIsImZpbGUiOiJzcmMvYXBwL3BhZ2UtY29tcG9uZW50cy9ob21lL3Byb2plY3QvcHJvamVjdC5jb21wb25lbnQubGVzcyIsInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgXCIuLi8uLi8uLi8uLi9hc3NldHMvc3R5bGVzL3ZhcmlhYmxlcy5sZXNzXCI7XG5cbmEge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLWF1dG8tcm93czogYXV0bztcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxNTBweCAxZnIgYXV0bztcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuICBncmlkLWdhcDogMTBweDtcbiAgcGFkZGluZzogMTBweDtcbiAgbWFyZ2luOiA1cHggMDtcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogIFwidGh1bWIgdGl0bGUgZGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBcInRodW1iIGRlc2NyaXB0aW9uIGRlc2NyaXB0aW9uXCI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICB0cmFuc2l0aW9uOiAuNHM7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGRhcmtncmV5O1xuICBib3JkZXI6IDFweCBkb3R0ZWQgQGdyZXk7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuYTpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0wcHgsIC0zcHgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAZ3JleTtcbiAgZmlsdGVyOiBkcm9wLXNoYWRvdygwcHggM3B4IDNweCAjMDAwKTtcbn1cblxuaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGp1c3RpZnktc2VsZjogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xufVxuXG4udGh1bWIge1xuICBncmlkLWFyZWE6IHRodW1iO1xufVxuXG4uZGF0ZSB7XG4gIGdyaWQtYXJlYTogZGF0ZTtcbiAganVzdGlmeS1zZWxmOiBlbmQ7XG59XG5cbi50aXRsZSB7XG4gIGdyaWQtYXJlYTogdGl0bGU7XG59XG5cbi5kZXNjcmlwdGlvbiB7XG4gIGdyaWQtYXJlYTogZGVzY3JpcHRpb247XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgYSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxNTBweCBhdXRvO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiAgXCJ0aHVtYiB0aXRsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwidGh1bWIgZGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGVzY3JpcHRpb24gZGVzY3JpcHRpb25cIjtcbiAgfVxuXG4gIC50aXRsZSwgLmRhdGV7XG4gICAganVzdGlmeS1zZWxmOiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG4iLCJhIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC1hdXRvLXJvd3M6IGF1dG87XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMTUwcHggMWZyIGF1dG87XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbiAgZ3JpZC1nYXA6IDEwcHg7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIG1hcmdpbjogNXB4IDA7XG4gIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwidGh1bWIgdGl0bGUgZGF0ZVwiIFwidGh1bWIgZGVzY3JpcHRpb24gZGVzY3JpcHRpb25cIjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIHRyYW5zaXRpb246IDAuNHM7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE4MTgxODtcbiAgYm9yZGVyOiAxcHggZG90dGVkICMyODI4Mjg7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cbmE6aG92ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIC0zcHgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjgyODI4O1xuICBmaWx0ZXI6IGRyb3Atc2hhZG93KDBweCAzcHggM3B4ICMwMDApO1xufVxuaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGp1c3RpZnktc2VsZjogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xufVxuLnRodW1iIHtcbiAgZ3JpZC1hcmVhOiB0aHVtYjtcbn1cbi5kYXRlIHtcbiAgZ3JpZC1hcmVhOiBkYXRlO1xuICBqdXN0aWZ5LXNlbGY6IGVuZDtcbn1cbi50aXRsZSB7XG4gIGdyaWQtYXJlYTogdGl0bGU7XG59XG4uZGVzY3JpcHRpb24ge1xuICBncmlkLWFyZWE6IGRlc2NyaXB0aW9uO1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuICBhIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDE1MHB4IGF1dG87XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwidGh1bWIgdGl0bGVcIiBcInRodW1iIGRhdGVcIiBcImRlc2NyaXB0aW9uIGRlc2NyaXB0aW9uXCI7XG4gIH1cbiAgLnRpdGxlLFxuICAuZGF0ZSB7XG4gICAganVzdGlmeS1zZWxmOiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG4iXX0= */\"","import { Component, OnInit, Input } from '@angular/core';\r\nimport { Project } from 'src/app/_models/project';\r\n\r\n@Component({\r\n selector: 'home-project',\r\n templateUrl: './project.component.html',\r\n styleUrls: ['./project.component.less']\r\n})\r\nexport class ProjectComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n @Input() project: Project; \r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","export default \".projectNav {\\n margin-bottom: 30px;\\n display: -webkit-box;\\n display: flex;\\n -webkit-box-pack: center;\\n justify-content: center;\\n}\\n.button {\\n -webkit-user-select: none;\\n -moz-user-select: none;\\n -ms-user-select: none;\\n user-select: none;\\n height: 100px;\\n width: 100px;\\n position: relative;\\n margin: 0 10px;\\n display: -webkit-inline-box;\\n display: inline-flex;\\n -webkit-box-align: center;\\n align-items: center;\\n -webkit-box-pack: center;\\n justify-content: center;\\n}\\n.button a {\\n height: 100%;\\n width: 100%;\\n cursor: pointer;\\n overflow: hidden;\\n position: relative;\\n border-radius: 10px;\\n font-size: 4em;\\n background-color: #181818;\\n border: 1px dotted #282828;\\n color: inherit;\\n}\\n.button img {\\n height: 125%;\\n position: absolute;\\n left: 50%;\\n top: 50%;\\n -webkit-transform: translate(-50%, -50%);\\n transform: translate(-50%, -50%);\\n -webkit-transition: 0.4s;\\n transition: 0.4s;\\n -webkit-filter: opacity(25%);\\n filter: opacity(25%);\\n}\\n.next a {\\n border-radius: 10px 51px 51px 10px;\\n}\\n.previous a {\\n border-radius: 51px 10px 10px 51px;\\n}\\n.button .text {\\n position: absolute;\\n left: 50%;\\n top: 50%;\\n -webkit-transform: translate(-50%, -54%);\\n transform: translate(-50%, -54%);\\n z-index: 1;\\n color: #888;\\n -webkit-transition: 0.4s;\\n transition: 0.4s;\\n margin: 0;\\n padding: 0;\\n}\\n.project .text {\\n -webkit-transform: translate(-50%, -50%);\\n transform: translate(-50%, -50%);\\n}\\n.button a:hover {\\n -webkit-transform: translate(0px, -3px);\\n transform: translate(0px, -3px);\\n background-color: #282828;\\n -webkit-filter: drop-shadow(0px 3px 3px #000);\\n filter: drop-shadow(0px 3px 3px #000);\\n}\\n.button a:hover .text {\\n color: #EEE;\\n}\\n.button a:hover img {\\n -webkit-filter: opacity(75%);\\n filter: opacity(75%);\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcGFnZS1jb21wb25lbnRzL3Byb2plY3QtZGV0YWlsL0M6L1VzZXJzL05hdGhhbi9zb3VyY2UvcmVwb3MvUG9ydGZvbGlvV2Vic2l0ZS9Qb3J0Zm9saW9XZWJzaXRlL0NsaWVudEFwcC9zcmMvYXBwL3BhZ2UtY29tcG9uZW50cy9wcm9qZWN0LWRldGFpbC9wcm9qZWN0LWRldGFpbC5jb21wb25lbnQubGVzcyIsInNyYy9hcHAvcGFnZS1jb21wb25lbnRzL3Byb2plY3QtZGV0YWlsL3Byb2plY3QtZGV0YWlsLmNvbXBvbmVudC5sZXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBO0VBQ0UsbUJBQUE7RUFDQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx3QkFBQTtVQUFBLHVCQUFBO0FDREY7QURJQTtFQUNFLHlCQUFBO0tBQUEsc0JBQUE7TUFBQSxxQkFBQTtVQUFBLGlCQUFBO0VBQ0EsYUFBQTtFQUNBLFlBQUE7RUFDQSxrQkFBQTtFQUNBLGNBQUE7RUFDQSwyQkFBQTtFQUFBLG9CQUFBO0VBQ0EseUJBQUE7VUFBQSxtQkFBQTtFQUNBLHdCQUFBO1VBQUEsdUJBQUE7QUNGRjtBREtBO0VBQ0UsWUFBQTtFQUNBLFdBQUE7RUFDQSxlQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQkFBQTtFQUNBLG1CQUFBO0VBRUEsY0FBQTtFQUNBLHlCQUFBO0VBQ0EsMEJBQUE7RUFDQSxjQUFBO0FDSkY7QURPQTtFQUNFLFlBQUE7RUFDQSxrQkFBQTtFQUNBLFNBQUE7RUFDQSxRQUFBO0VBQ0Esd0NBQUE7VUFBQSxnQ0FBQTtFQUNBLHdCQUFBO0VBQUEsZ0JBQUE7RUFDQSw0QkFBQTtVQUFBLG9CQUFBO0FDTEY7QURRQTtFQUNFLGtDQUFBO0FDTkY7QURTQTtFQUNFLGtDQUFBO0FDUEY7QURjQTtFQUNFLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLFFBQUE7RUFDQSx3Q0FBQTtVQUFBLGdDQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSx3QkFBQTtFQUFBLGdCQUFBO0VBQ0EsU0FBQTtFQUNBLFVBQUE7QUNaRjtBRGVBO0VBQ0Usd0NBQUE7VUFBQSxnQ0FBQTtBQ2JGO0FEZ0JBO0VBQ0UsdUNBQUE7VUFBQSwrQkFBQTtFQUNBLHlCQUFBO0VBQ0EsNkNBQUE7VUFBQSxxQ0FBQTtBQ2RGO0FEaUJBO0VBQ0UsV0FBQTtBQ2ZGO0FEa0JBO0VBQ0UsNEJBQUE7VUFBQSxvQkFBQTtBQ2hCRiIsImZpbGUiOiJzcmMvYXBwL3BhZ2UtY29tcG9uZW50cy9wcm9qZWN0LWRldGFpbC9wcm9qZWN0LWRldGFpbC5jb21wb25lbnQubGVzcyIsInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgJy4uLy4uLy4uL2Fzc2V0cy9zdHlsZXMvdmFyaWFibGVzLmxlc3MnO1xuXG4ucHJvamVjdE5hdiB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uYnV0dG9uIHtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGhlaWdodDogMTAwcHg7XG4gIHdpZHRoOiAxMDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgMTBweDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uYnV0dG9uIGEge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgXG4gIGZvbnQtc2l6ZTogNGVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAZGFya2dyZXk7XG4gIGJvcmRlcjogMXB4IGRvdHRlZCBAZ3JleTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi5idXR0b24gaW1nIHtcbiAgaGVpZ2h0OiAxMjUlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB0cmFuc2l0aW9uOiAuNHM7XG4gIGZpbHRlcjogb3BhY2l0eSgyNSUpO1xufVxuXG4ubmV4dCBhIHtcbiAgYm9yZGVyLXJhZGl1czogMTBweCA1MXB4IDUxcHggMTBweDtcbn1cblxuLnByZXZpb3VzIGEge1xuICBib3JkZXItcmFkaXVzOiA1MXB4IDEwcHggMTBweCA1MXB4O1xufVxuXG4ucHJvamVjdCBhIHtcbiAgXG59XG5cbi5idXR0b24gLnRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01NCUpO1xuICB6LWluZGV4OiAxO1xuICBjb2xvcjogQGxpZ2h0Z3JleTtcbiAgdHJhbnNpdGlvbjogLjRzO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5wcm9qZWN0IC50ZXh0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi5idXR0b24gYTpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0wcHgsIC0zcHgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAZ3JleTtcbiAgZmlsdGVyOiBkcm9wLXNoYWRvdygwcHggM3B4IDNweCAjMDAwKTtcbn1cblxuLmJ1dHRvbiBhOmhvdmVyIC50ZXh0IHtcbiAgY29sb3I6IEB3aGl0ZTtcbn1cblxuLmJ1dHRvbiBhOmhvdmVyIGltZyB7XG4gIGZpbHRlcjogb3BhY2l0eSg3NSUpO1xufVxuXG4iLCIucHJvamVjdE5hdiB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLmJ1dHRvbiB7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBoZWlnaHQ6IDEwMHB4O1xuICB3aWR0aDogMTAwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIDEwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5idXR0b24gYSB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBmb250LXNpemU6IDRlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE4MTgxODtcbiAgYm9yZGVyOiAxcHggZG90dGVkICMyODI4Mjg7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuLmJ1dHRvbiBpbWcge1xuICBoZWlnaHQ6IDEyNSU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHRyYW5zaXRpb246IDAuNHM7XG4gIGZpbHRlcjogb3BhY2l0eSgyNSUpO1xufVxuLm5leHQgYSB7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHggNTFweCA1MXB4IDEwcHg7XG59XG4ucHJldmlvdXMgYSB7XG4gIGJvcmRlci1yYWRpdXM6IDUxcHggMTBweCAxMHB4IDUxcHg7XG59XG4uYnV0dG9uIC50ZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTQlKTtcbiAgei1pbmRleDogMTtcbiAgY29sb3I6ICM4ODg7XG4gIHRyYW5zaXRpb246IDAuNHM7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi5wcm9qZWN0IC50ZXh0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG4uYnV0dG9uIGE6aG92ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIC0zcHgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjgyODI4O1xuICBmaWx0ZXI6IGRyb3Atc2hhZG93KDBweCAzcHggM3B4ICMwMDApO1xufVxuLmJ1dHRvbiBhOmhvdmVyIC50ZXh0IHtcbiAgY29sb3I6ICNFRUU7XG59XG4uYnV0dG9uIGE6aG92ZXIgaW1nIHtcbiAgZmlsdGVyOiBvcGFjaXR5KDc1JSk7XG59XG4iXX0= */\"","import { Component, OnInit, Input } from '@angular/core';\r\nimport { ProjectService } from 'src/app/_services/project.service';\r\nimport { ViewportService } from 'src/app/_services/viewport.service';\r\nimport { ActivatedRoute, Params, Router } from '@angular/router';\r\nimport { Project } from 'src/app/_models/project';\r\nimport { exitLeftAnimation, exitRightAnimation } from 'src/app/_animation/detail-transition-animations';\r\nimport { fadeInAnimation } from 'src/app/_animation/content-enter-animations';\r\n\r\n@Component({\r\n selector: 'app-project-detail',\r\n templateUrl: './project-detail.component.html',\r\n styleUrls: ['./project-detail.component.less'],\r\n animations: [exitLeftAnimation, exitRightAnimation, fadeInAnimation]\r\n})\r\nexport class ProjectDetailComponent implements OnInit {\r\n\r\n @Input() project: Project;\r\n private _nextProject: Project;\r\n private _previousProject: Project;\r\n private _pageReady: boolean = false;\r\n private _exitRight: boolean = false;\r\n private _exitLeft: boolean = false;\r\n\r\n constructor(private route: ActivatedRoute, private router: Router, private projectService: ProjectService, private viewportService: ViewportService) { }\r\n\r\n ngOnInit() {\r\n this.viewportService.onPageReady.subscribe(() => {\r\n this._pageReady = true;\r\n this._exitLeft = false;\r\n this._exitRight = false;\r\n console.log('enter transition start');\r\n });\r\n\r\n this.route.params.subscribe((params: Params) => {\r\n let id: number = +params['id'];\r\n this.getProject(id);\r\n this.getNextProject(id);\r\n this.getPreviousProject(id);\r\n });\r\n }\r\n\r\n getProject(id: number): void {\r\n this.projectService.get(id).subscribe((project: Project) => {\r\n this.project = project;\r\n })\r\n }\r\n\r\n getNextProject(id: number): void {\r\n this.projectService.getNext(id).subscribe((project: Project) => {\r\n this._nextProject = project;\r\n })\r\n }\r\n\r\n getPreviousProject(id: number): void {\r\n this.projectService.getPrevious(id).subscribe((project: Project) => {\r\n this._previousProject = project;\r\n })\r\n }\r\n\r\n previous(): void {\r\n this._exitLeft = true;\r\n console.log('exit transition start');\r\n const OUTLET_EXIT_DELAY: number = 250;\r\n setTimeout(() => { //wait until old outlet has faded away\r\n this.router.navigate([`../${this._previousProject.id}`], { relativeTo: this.route });\r\n }, OUTLET_EXIT_DELAY);\r\n }\r\n\r\n next(): void {\r\n this._exitRight = true;\r\n console.log('exit transition start');\r\n const OUTLET_EXIT_DELAY: number = 250;\r\n setTimeout(() => { //wait until old outlet has faded away\r\n this.router.navigate([`../${this._nextProject.id}`], { relativeTo: this.route });\r\n }, OUTLET_EXIT_DELAY);\r\n \r\n }\r\n \r\n}\r\n","export default \"a {\\n position: relative;\\n margin: 0;\\n padding: 0;\\n overflow: hidden;\\n display: -webkit-box;\\n display: flex;\\n -webkit-box-align: center;\\n align-items: center;\\n -webkit-box-pack: center;\\n justify-content: center;\\n background-color: #000;\\n cursor: pointer;\\n border-radius: 10px;\\n}\\n/*\\na.featured {\\n border: 2px solid @featuredColor;\\n}\\n*/\\na.featured .title {\\n border: 2px solid #970;\\n}\\na.featured h3 {\\n color: #970;\\n}\\n.description,\\n.date {\\n display: none;\\n}\\nh3 {\\n color: #258;\\n -webkit-transition: 0.4s;\\n transition: 0.4s;\\n}\\na:hover h3 {\\n color: #EEE;\\n}\\nimg {\\n max-width: 100%;\\n -webkit-transform: scale(1.01);\\n transform: scale(1.01);\\n -webkit-transition: 0.8s;\\n transition: 0.8s;\\n}\\na:hover img {\\n -webkit-transform: scale(1.1);\\n transform: scale(1.1);\\n}\\n.title {\\n position: absolute;\\n bottom: 50px;\\n right: 50px;\\n min-height: 3em;\\n -webkit-transform: translateY(50%) translateX(50%) rotate(-45deg);\\n transform: translateY(50%) translateX(50%) rotate(-45deg);\\n width: 100px;\\n text-align: center;\\n display: -webkit-box;\\n display: flex;\\n -webkit-box-orient: vertical;\\n -webkit-box-direction: normal;\\n flex-direction: column;\\n -webkit-box-align: center;\\n align-items: center;\\n -webkit-box-pack: center;\\n justify-content: center;\\n z-index: 3;\\n padding: 2px 50%;\\n -webkit-user-select: none;\\n -moz-user-select: none;\\n -ms-user-select: none;\\n user-select: none;\\n overflow: hidden;\\n background-color: #181818;\\n border: solid 2px #258;\\n -webkit-filter: drop-shadow(5px 5px 5px #000);\\n filter: drop-shadow(5px 5px 5px #000);\\n}\\n@media only screen and (max-width: 600px) {\\n .title {\\n font-size: 0.8em;\\n }\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcGFnZS1jb21wb25lbnRzL3Byb2plY3RzL3Byb2plY3QvQzovVXNlcnMvTmF0aGFuL3NvdXJjZS9yZXBvcy9Qb3J0Zm9saW9XZWJzaXRlL1BvcnRmb2xpb1dlYnNpdGUvQ2xpZW50QXBwL3NyYy9hcHAvcGFnZS1jb21wb25lbnRzL3Byb2plY3RzL3Byb2plY3QvcHJvamVjdC5jb21wb25lbnQubGVzcyIsInNyYy9hcHAvcGFnZS1jb21wb25lbnRzL3Byb2plY3RzL3Byb2plY3QvcHJvamVjdC5jb21wb25lbnQubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTtFQUNFLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHlCQUFBO1VBQUEsbUJBQUE7RUFDQSx3QkFBQTtVQUFBLHVCQUFBO0VBQ0Esc0JBQUE7RUFDQSxlQUFBO0VBQ0EsbUJBQUE7QUNERjtBQUNBOzs7O0NBSUM7QURLRDtFQUNFLHNCQUFBO0FDSEY7QURNQTtFQUNFLFdBQUE7QUNKRjtBRE9BOztFQUNFLGFBQUE7QUNKRjtBRE9BO0VBQ0UsV0FBQTtFQUNBLHdCQUFBO0VBQUEsZ0JBQUE7QUNMRjtBRFFBO0VBQ0UsV0FBQTtBQ05GO0FEU0E7RUFDRSxlQUFBO0VBQ0EsOEJBQUE7VUFBQSxzQkFBQTtFQUNBLHdCQUFBO0VBQUEsZ0JBQUE7QUNQRjtBRFVBO0VBQ0UsNkJBQUE7VUFBQSxxQkFBQTtBQ1JGO0FEV0E7RUFDRSxrQkFBQTtFQUNBLFlBQUE7RUFDQSxXQUFBO0VBQ0EsZUFBQTtFQUNBLGlFQUFBO1VBQUEseURBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7RUFDQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSw0QkFBQTtFQUFBLDZCQUFBO1VBQUEsc0JBQUE7RUFDQSx5QkFBQTtVQUFBLG1CQUFBO0VBQ0Esd0JBQUE7VUFBQSx1QkFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLHlCQUFBO0tBQUEsc0JBQUE7TUFBQSxxQkFBQTtVQUFBLGlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSx5QkFBQTtFQUNBLHNCQUFBO0VBQ0EsNkNBQUE7VUFBQSxxQ0FBQTtBQ1RGO0FEWUE7RUFDRTtJQUNFLGdCQUFBO0VDVkY7QUFDRiIsImZpbGUiOiJzcmMvYXBwL3BhZ2UtY29tcG9uZW50cy9wcm9qZWN0cy9wcm9qZWN0L3Byb2plY3QuY29tcG9uZW50Lmxlc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0ICcuLi8uLi8uLi8uLi9hc3NldHMvc3R5bGVzL3ZhcmlhYmxlcy5sZXNzJztcblxuYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xufVxuXG4vKlxuYS5mZWF0dXJlZCB7XG4gIGJvcmRlcjogMnB4IHNvbGlkIEBmZWF0dXJlZENvbG9yO1xufVxuKi9cblxuYS5mZWF0dXJlZCAudGl0bGUge1xuICBib3JkZXI6IDJweCBzb2xpZCBAZmVhdHVyZWRDb2xvcjtcbn1cblxuYS5mZWF0dXJlZCBoMyB7XG4gIGNvbG9yOiAjOTcwO1xufVxuXG4uZGVzY3JpcHRpb24sIC5kYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuaDMge1xuICBjb2xvcjogQGFjY2VudENvbG9yO1xuICB0cmFuc2l0aW9uOiAuNHM7XG59XG5cbmE6aG92ZXIgaDMge1xuICBjb2xvcjogQHdoaXRlO1xufVxuXG5pbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMSk7XG4gIHRyYW5zaXRpb246IC44cztcbn1cblxuYTpob3ZlciBpbWcge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG59XG5cbi50aXRsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiA1MHB4O1xuICByaWdodDogNTBweDtcbiAgbWluLWhlaWdodDogM2VtO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTAlKSB0cmFuc2xhdGVYKDUwJSkgcm90YXRlKC00NWRlZyk7XG4gIHdpZHRoOiAxMDBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgei1pbmRleDogMztcbiAgcGFkZGluZzogMnB4IDUwJTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6IEBkYXJrZ3JleTtcbiAgYm9yZGVyOiBzb2xpZCAycHggQGFjY2VudENvbG9yO1xuICBmaWx0ZXI6IGRyb3Atc2hhZG93KDVweCA1cHggNXB4ICMwMDApOyAvL2Fsc28gcHJldmVudHMgdGV4dCBmcm9tIGRlZm9ybWluZyBkdXJpbmcgaW1hZ2UgdHJhbnNmb3JtIHRyYW5zaXRpb25cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuICAudGl0bGUge1xuICAgIGZvbnQtc2l6ZTogLjhlbTtcbiAgfVxufVxuIiwiYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xufVxuLypcbmEuZmVhdHVyZWQge1xuICBib3JkZXI6IDJweCBzb2xpZCBAZmVhdHVyZWRDb2xvcjtcbn1cbiovXG5hLmZlYXR1cmVkIC50aXRsZSB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICM5NzA7XG59XG5hLmZlYXR1cmVkIGgzIHtcbiAgY29sb3I6ICM5NzA7XG59XG4uZGVzY3JpcHRpb24sXG4uZGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5oMyB7XG4gIGNvbG9yOiAjMjU4O1xuICB0cmFuc2l0aW9uOiAwLjRzO1xufVxuYTpob3ZlciBoMyB7XG4gIGNvbG9yOiAjRUVFO1xufVxuaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDEpO1xuICB0cmFuc2l0aW9uOiAwLjhzO1xufVxuYTpob3ZlciBpbWcge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG59XG4udGl0bGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogNTBweDtcbiAgcmlnaHQ6IDUwcHg7XG4gIG1pbi1oZWlnaHQ6IDNlbTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwJSkgdHJhbnNsYXRlWCg1MCUpIHJvdGF0ZSgtNDVkZWcpO1xuICB3aWR0aDogMTAwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHotaW5kZXg6IDM7XG4gIHBhZGRpbmc6IDJweCA1MCU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTgxODE4O1xuICBib3JkZXI6IHNvbGlkIDJweCAjMjU4O1xuICBmaWx0ZXI6IGRyb3Atc2hhZG93KDVweCA1cHggNXB4ICMwMDApO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuICAudGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gIH1cbn1cbiJdfQ== */\"","import { Component, OnInit, Input } from '@angular/core';\r\nimport { Project } from 'src/app/_models/project';\r\n\r\n@Component({\r\n selector: 'projects-project',\r\n templateUrl: './project.component.html',\r\n styleUrls: ['./project.component.less']\r\n})\r\nexport class ProjectComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n @Input() project: Project; \r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","export default \".projects {\\n display: -webkit-box;\\n display: flex;\\n -webkit-box-orient: vertical;\\n -webkit-box-direction: normal;\\n flex-direction: column;\\n -webkit-box-align: stretch;\\n align-items: stretch;\\n}\\n.project-subdivision {\\n display: grid;\\n grid-auto-rows: auto;\\n grid-template-columns: 1fr 1fr 1fr;\\n grid-gap: 10px;\\n margin: 5px 0;\\n}\\n.right-feat {\\n grid-template-areas: \\\"a featured featured\\\" \\\"b featured featured\\\";\\n}\\n.left-feat {\\n grid-template-areas: \\\"featured featured a\\\" \\\"featured featured b\\\";\\n}\\n.featured {\\n grid-area: featured;\\n}\\n@media only screen and (max-width: 600px) {\\n .project-subdivision {\\n grid-template-columns: 1fr 1fr;\\n }\\n .right-feat,\\n .left-feat {\\n grid-template-areas: \\\"featured featured\\\" \\\"featured featured\\\";\\n }\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcGFnZS1jb21wb25lbnRzL3Byb2plY3RzL0M6L1VzZXJzL05hdGhhbi9zb3VyY2UvcmVwb3MvUG9ydGZvbGlvV2Vic2l0ZS9Qb3J0Zm9saW9XZWJzaXRlL0NsaWVudEFwcC9zcmMvYXBwL3BhZ2UtY29tcG9uZW50cy9wcm9qZWN0cy9wcm9qZWN0cy5jb21wb25lbnQubGVzcyIsInNyYy9hcHAvcGFnZS1jb21wb25lbnRzL3Byb2plY3RzL3Byb2plY3RzLmNvbXBvbmVudC5sZXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBO0VBQ0Usb0JBQUE7RUFBQSxhQUFBO0VBQ0EsNEJBQUE7RUFBQSw2QkFBQTtVQUFBLHNCQUFBO0VBQ0EsMEJBQUE7VUFBQSxvQkFBQTtBQ0RGO0FESUE7RUFDRSxhQUFBO0VBQ0Esb0JBQUE7RUFDQSxrQ0FBQTtFQUNBLGNBQUE7RUFDQSxhQUFBO0FDRkY7QURTQTtFQUNFLGdFQUFBO0FDUEY7QURZQTtFQUNFLGdFQUFBO0FDVkY7QURlQTtFQUNFLG1CQUFBO0FDYkY7QURnQkE7RUFDRTtJQUNFLDhCQUFBO0VDZEY7RURpQkE7O0lBQ0UsNERBQUE7RUNkRjtBQUNGIiwiZmlsZSI6InNyYy9hcHAvcGFnZS1jb21wb25lbnRzL3Byb2plY3RzL3Byb2plY3RzLmNvbXBvbmVudC5sZXNzIiwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCAnLi4vLi4vLi4vYXNzZXRzL3N0eWxlcy92YXJpYWJsZXMubGVzcyc7XG5cbi5wcm9qZWN0cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xufVxuXG4ucHJvamVjdC1zdWJkaXZpc2lvbiB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtYXV0by1yb3dzOiBhdXRvO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICBncmlkLWdhcDogMTBweDtcbiAgbWFyZ2luOiA1cHggMDtcbn1cblxuLm5vLWZlYXQge1xuICBcbn1cblxuLnJpZ2h0LWZlYXQge1xuICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgIFwiYSBmZWF0dXJlZCBmZWF0dXJlZFwiXG4gICAgXCJiIGZlYXR1cmVkIGZlYXR1cmVkXCJcbn1cblxuLmxlZnQtZmVhdCB7XG4gIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgXCJmZWF0dXJlZCBmZWF0dXJlZCBhXCJcbiAgICBcImZlYXR1cmVkIGZlYXR1cmVkIGJcIlxufVxuXG4uZmVhdHVyZWQge1xuICBncmlkLWFyZWE6IGZlYXR1cmVkO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gIC5wcm9qZWN0LXN1YmRpdmlzaW9uIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gIH1cblxuICAucmlnaHQtZmVhdCwgLmxlZnQtZmVhdCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJmZWF0dXJlZCBmZWF0dXJlZFwiIFwiZmVhdHVyZWQgZmVhdHVyZWRcIlxuICB9XG59XG4iLCIucHJvamVjdHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbn1cbi5wcm9qZWN0LXN1YmRpdmlzaW9uIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC1hdXRvLXJvd3M6IGF1dG87XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gIGdyaWQtZ2FwOiAxMHB4O1xuICBtYXJnaW46IDVweCAwO1xufVxuLnJpZ2h0LWZlYXQge1xuICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImEgZmVhdHVyZWQgZmVhdHVyZWRcIiBcImIgZmVhdHVyZWQgZmVhdHVyZWRcIjtcbn1cbi5sZWZ0LWZlYXQge1xuICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImZlYXR1cmVkIGZlYXR1cmVkIGFcIiBcImZlYXR1cmVkIGZlYXR1cmVkIGJcIjtcbn1cbi5mZWF0dXJlZCB7XG4gIGdyaWQtYXJlYTogZmVhdHVyZWQ7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gIC5wcm9qZWN0LXN1YmRpdmlzaW9uIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gIH1cbiAgLnJpZ2h0LWZlYXQsXG4gIC5sZWZ0LWZlYXQge1xuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwiZmVhdHVyZWQgZmVhdHVyZWRcIiBcImZlYXR1cmVkIGZlYXR1cmVkXCI7XG4gIH1cbn1cbiJdfQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { ProjectService } from '../../_services/project.service';\r\nimport { Project } from '../../_models/project';\r\nimport { scaleInAnimation, fadeInAnimation } from '../../_animation/content-enter-animations';\r\nimport { ViewportService } from 'src/app/_services/viewport.service';\r\n\r\n@Component({\r\n selector: 'app-projects',\r\n templateUrl: './projects.component.html',\r\n styleUrls: ['./projects.component.less'],\r\n animations: [ scaleInAnimation, fadeInAnimation ]\r\n})\r\nexport class ProjectsComponent implements OnInit{\r\n\r\n projects: Project[][];\r\n\r\n constructor(private projectService: ProjectService, private viewportService: ViewportService) { }\r\n\r\n ngOnInit() {\r\n this.projectService.index()\r\n .subscribe(projects => this.projects = this.subdivideProjectArray(projects));\r\n }\r\n\r\n //split an array of projects into a two dimensional array where the first row begins with the first project\r\n //and subsequent rows are created when a featured project is encountered\r\n subdivideProjectArray(projects: Project[]): Project[][] {\r\n let subdividedProjects: Project[][] = projects.reduce((ouputArray: Project[][], currentProject: Project, currentIndex: Number, sourceArray: Project[]): Project[][] => {\r\n if (currentProject.featured || ouputArray.length === 0) { //if the project is a featured project or the output array is empty\r\n ouputArray.push([]); //add a new row to the ouput array\r\n }\r\n ouputArray[ouputArray.length - 1].push(currentProject) //add the current project to the last row of the output array\r\n return ouputArray;\r\n }, [])\r\n return subdividedProjects;\r\n }\r\n}\r\n","export default \":host {\\n background-color: #000;\\n width: 100%;\\n height: 100%;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvdXRpbGl0eS1jb21wb25lbnRzL292ZXJsYXkvQzovVXNlcnMvTmF0aGFuL3NvdXJjZS9yZXBvcy9Qb3J0Zm9saW9XZWJzaXRlL1BvcnRmb2xpb1dlYnNpdGUvQ2xpZW50QXBwL3NyYy9hcHAvdXRpbGl0eS1jb21wb25lbnRzL292ZXJsYXkvb3ZlcmxheS5jb21wb25lbnQubGVzcyIsInNyYy9hcHAvdXRpbGl0eS1jb21wb25lbnRzL292ZXJsYXkvb3ZlcmxheS5jb21wb25lbnQubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLHNCQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7QUNDRiIsImZpbGUiOiJzcmMvYXBwL3V0aWxpdHktY29tcG9uZW50cy9vdmVybGF5L292ZXJsYXkuY29tcG9uZW50Lmxlc3MiLCJzb3VyY2VzQ29udGVudCI6WyI6aG9zdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4iLCI6aG9zdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4iXX0= */\"","import { Component, OnInit, HostBinding, Input } from '@angular/core';\r\nimport {\r\n trigger,\r\n state,\r\n style,\r\n animate,\r\n transition,\r\n sequence,\r\n} from '@angular/animations';\r\n@Component({\r\n selector: 'app-overlay',\r\n templateUrl: './overlay.component.html',\r\n styleUrls: ['./overlay.component.less'],\r\n animations: [\r\n trigger('fadeInOut', [\r\n state('true', style({ opacity: '.75', display: 'initial' })),\r\n state('false', style({ opacity: '0', display: 'none' })),\r\n transition('true <=> false', [\r\n sequence([\r\n style({ display: 'initial' }),\r\n animate('.4s')\r\n ])\r\n ]),\r\n ])\r\n ]\r\n})\r\nexport class OverlayComponent implements OnInit {\r\n\r\n @HostBinding('@fadeInOut') get fadeInOut(): boolean {\r\n return this.show;\r\n }\r\n\r\n @Input() show: boolean = false;\r\n\r\n constructor() {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n \r\n }\r\n\r\n}\r\n","// This file can be replaced during build by using the `fileReplacements` array.\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\n// The list of file replacements can be found in `angular.json`.\n\nexport const environment = {\n production: false\n};\n\n/*\n * For easier debugging in development mode, you can import the following file\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\n *\n * This import should be commented out in production mode because it will have a negative impact\n * on performance if an error is thrown.\n */\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule)\n .catch(err => console.error(err));\n"],"sourceRoot":"webpack:///"}