@datagrok/peptides 1.13.2 → 1.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/521.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";(self.webpackChunkpeptides=self.webpackChunkpeptides||[]).push([[521],{1040:(n,e,t)=>{var o,r,i,c,u;t.d(e,{CF:()=>r,Qe:()=>c,W:()=>o,Yc:()=>u,gk:()=>i}),function(n){n.Levenshtein="Levenshtein",n.JaroWinkler="Jaro-Winkler",n.Manhattan="Manhattan"}(o||(o={})),function(n){n.Euclidean="Euclidean"}(r||(r={})),function(n){n.Tanimoto="Tanimoto",n.Dice="Dice",n.Asymmetric="Asymmetric",n.BraunBlanquet="Braun-Blanquet",n.Cosine="Cosine",n.Kulczynski="Kulczynski",n.McConnaughey="Mc-Connaughey",n.RogotGoldberg="Rogot-Goldberg",n.Russel="Russel",n.Sokal="Sokal",n.Hamming="Hamming",n.Euclidean="Euclidean"}(i||(i={})),function(n){n.Vector="Vector",n.String="String",n.BitArray="BitArray",n.MacroMolecule="MacroMolecule",n.Number="Number"}(c||(c={})),function(n){n.NumericDistance="NumericDistance"}(u||(u={}))},850:(n,e,t)=>{t.d(e,{dP:()=>r});var o=t(3659);function r(n,e){const t=function(n){let e=0;for(let t=0;t<n.length;++t)e+=n[t];return e}(function(n){const e=n.length,t=new o.OW(e);for(let e=0;e<n.length;++e)t[e]=n[e]*n[e];return t}(function(n,e,t=1){const r=n.length;!function(n=!1,e="Assertion error."){if(!n)throw new Error(e)}(r==e.length,"Vector lengths do not match.");const i=new o.OW(r);for(let o=0;o<n.length;++o)i[o]=n[o]+t*e[o];return i}(n,e,-1)));return Math.sqrt(t)}}}]);
2
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNTIxLmpzIiwibWFwcGluZ3MiOiJtR0FBTyxJQUFJQSxFQU1BQyxFQUlBQyxFQWVBQyxFQVFBQyxFLHFEQWhDWCxTQUFXSixHQUNQQSxFQUFnQyxZQUFJLGNBQ3BDQSxFQUFnQyxZQUFJLGVBQ3BDQSxFQUE4QixVQUFJLFdBQ3JDLENBSkQsQ0FJR0EsSUFBdUJBLEVBQXFCLENBQUMsSUFFaEQsU0FBV0MsR0FDUEEsRUFBOEIsVUFBSSxXQUNyQyxDQUZELENBRUdBLElBQXVCQSxFQUFxQixDQUFDLElBRWhELFNBQVdDLEdBQ1BBLEVBQStCLFNBQUksV0FDbkNBLEVBQTJCLEtBQUksT0FDL0JBLEVBQWlDLFdBQUksYUFDckNBLEVBQW9DLGNBQUksaUJBQ3hDQSxFQUE2QixPQUFJLFNBQ2pDQSxFQUFpQyxXQUFJLGFBQ3JDQSxFQUFtQyxhQUFJLGdCQUN2Q0EsRUFBb0MsY0FBSSxpQkFDeENBLEVBQTZCLE9BQUksU0FDakNBLEVBQTRCLE1BQUksUUFDaENBLEVBQThCLFFBQUksVUFDbENBLEVBQWdDLFVBQUksV0FDdkMsQ0FiRCxDQWFHQSxJQUF5QkEsRUFBdUIsQ0FBQyxJQUVwRCxTQUFXQyxHQUNQQSxFQUFnQyxPQUFJLFNBQ3BDQSxFQUFnQyxPQUFJLFNBQ3BDQSxFQUFrQyxTQUFJLFdBQ3RDQSxFQUF1QyxjQUFJLGdCQUMzQ0EsRUFBZ0MsT0FBSSxRQUN2QyxDQU5ELENBTUdBLElBQTRCQSxFQUEwQixDQUFDLElBRTFELFNBQVdDLEdBQ1BBLEVBQW9DLGdCQUFJLGlCQUMzQyxDQUZELENBRUdBLElBQXVCQSxFQUFxQixDQUFDLEcsZ0RDbUZ6QyxTQUFTQyxFQUEyQkMsRUFBR0MsR0FDMUMsTUFFTUMsRUE3RFYsU0FBa0JDLEdBQ2QsSUFBSUMsRUFBUSxFQUNaLElBQUssSUFBSUMsRUFBSSxFQUFHQSxFQUFJRixFQUFFRyxTQUFVRCxFQUM1QkQsR0FBU0QsRUFBRUUsR0FDZixPQUFPRCxDQUNYLENBd0R1QkcsQ0FqRHZCLFNBQXNCSixHQUNsQixNQUFNSyxFQUFTTCxFQUFFRyxPQUNYRixFQUFRLElBQUksS0FBT0ksR0FDekIsSUFBSyxJQUFJSCxFQUFJLEVBQUdBLEVBQUlGLEVBQUVHLFNBQVVELEVBQzVCRCxFQUFNQyxHQUFLRixFQUFFRSxHQUFLRixFQUFFRSxHQUN4QixPQUFPRCxDQUNYLENBMENtQkssQ0ExRVosU0FBbUJULEVBQUdDLEVBQUdTLEVBQWEsR0FDekMsTUFBTUYsRUFBU1IsRUFBRU0sUUF0Q2QsU0FBZ0JLLEdBQVksRUFBT0MsRUFBVSxvQkFDaEQsSUFBS0QsRUFDRCxNQUFNLElBQUlFLE1BQU1ELEVBQ3hCLENBb0NJRSxDQUFPTixHQUFVUCxFQUFFSyxPQUFRLGdDQUMzQixNQUFNRixFQUFRLElBQUksS0FBT0ksR0FDekIsSUFBSyxJQUFJSCxFQUFJLEVBQUdBLEVBQUlMLEVBQUVNLFNBQVVELEVBQzVCRCxFQUFNQyxHQUFLTCxFQUFFSyxHQUFLSyxFQUFhVCxFQUFFSSxHQUNyQyxPQUFPRCxDQUNYLENBa0VpQlcsQ0FBVWYsRUFBR0MsR0FBSSxLQUc5QixPQUFPZSxLQUFLQyxLQUFLZixFQUNyQixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGVwdGlkZXMvLi9ub2RlX21vZHVsZXMvQGRhdGFncm9rLWxpYnJhcmllcy9tbC9zcmMvdHlwZWQtbWV0cmljcy9jb25zdHMuanMiLCJ3ZWJwYWNrOi8vcGVwdGlkZXMvLi9ub2RlX21vZHVsZXMvQGRhdGFncm9rLWxpYnJhcmllcy91dGlscy9zcmMvdmVjdG9yLW9wZXJhdGlvbnMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHZhciBTdHJpbmdNZXRyaWNzTmFtZXM7XG4oZnVuY3Rpb24gKFN0cmluZ01ldHJpY3NOYW1lcykge1xuICAgIFN0cmluZ01ldHJpY3NOYW1lc1tcIkxldmVuc2h0ZWluXCJdID0gXCJMZXZlbnNodGVpblwiO1xuICAgIFN0cmluZ01ldHJpY3NOYW1lc1tcIkphcm9XaW5rbGVyXCJdID0gXCJKYXJvLVdpbmtsZXJcIjtcbiAgICBTdHJpbmdNZXRyaWNzTmFtZXNbXCJNYW5oYXR0YW5cIl0gPSBcIk1hbmhhdHRhblwiO1xufSkoU3RyaW5nTWV0cmljc05hbWVzIHx8IChTdHJpbmdNZXRyaWNzTmFtZXMgPSB7fSkpO1xuZXhwb3J0IHZhciBWZWN0b3JNZXRyaWNzTmFtZXM7XG4oZnVuY3Rpb24gKFZlY3Rvck1ldHJpY3NOYW1lcykge1xuICAgIFZlY3Rvck1ldHJpY3NOYW1lc1tcIkV1Y2xpZGVhblwiXSA9IFwiRXVjbGlkZWFuXCI7XG59KShWZWN0b3JNZXRyaWNzTmFtZXMgfHwgKFZlY3Rvck1ldHJpY3NOYW1lcyA9IHt9KSk7XG5leHBvcnQgdmFyIEJpdEFycmF5TWV0cmljc05hbWVzO1xuKGZ1bmN0aW9uIChCaXRBcnJheU1ldHJpY3NOYW1lcykge1xuICAgIEJpdEFycmF5TWV0cmljc05hbWVzW1wiVGFuaW1vdG9cIl0gPSBcIlRhbmltb3RvXCI7XG4gICAgQml0QXJyYXlNZXRyaWNzTmFtZXNbXCJEaWNlXCJdID0gXCJEaWNlXCI7XG4gICAgQml0QXJyYXlNZXRyaWNzTmFtZXNbXCJBc3ltbWV0cmljXCJdID0gXCJBc3ltbWV0cmljXCI7XG4gICAgQml0QXJyYXlNZXRyaWNzTmFtZXNbXCJCcmF1bkJsYW5xdWV0XCJdID0gXCJCcmF1bi1CbGFucXVldFwiO1xuICAgIEJpdEFycmF5TWV0cmljc05hbWVzW1wiQ29zaW5lXCJdID0gXCJDb3NpbmVcIjtcbiAgICBCaXRBcnJheU1ldHJpY3NOYW1lc1tcIkt1bGN6eW5za2lcIl0gPSBcIkt1bGN6eW5za2lcIjtcbiAgICBCaXRBcnJheU1ldHJpY3NOYW1lc1tcIk1jQ29ubmF1Z2hleVwiXSA9IFwiTWMtQ29ubmF1Z2hleVwiO1xuICAgIEJpdEFycmF5TWV0cmljc05hbWVzW1wiUm9nb3RHb2xkYmVyZ1wiXSA9IFwiUm9nb3QtR29sZGJlcmdcIjtcbiAgICBCaXRBcnJheU1ldHJpY3NOYW1lc1tcIlJ1c3NlbFwiXSA9IFwiUnVzc2VsXCI7XG4gICAgQml0QXJyYXlNZXRyaWNzTmFtZXNbXCJTb2thbFwiXSA9IFwiU29rYWxcIjtcbiAgICBCaXRBcnJheU1ldHJpY3NOYW1lc1tcIkhhbW1pbmdcIl0gPSBcIkhhbW1pbmdcIjtcbiAgICBCaXRBcnJheU1ldHJpY3NOYW1lc1tcIkV1Y2xpZGVhblwiXSA9IFwiRXVjbGlkZWFuXCI7XG59KShCaXRBcnJheU1ldHJpY3NOYW1lcyB8fCAoQml0QXJyYXlNZXRyaWNzTmFtZXMgPSB7fSkpO1xuZXhwb3J0IHZhciBEaXN0YW5jZU1ldHJpY3NTdWJqZWN0cztcbihmdW5jdGlvbiAoRGlzdGFuY2VNZXRyaWNzU3ViamVjdHMpIHtcbiAgICBEaXN0YW5jZU1ldHJpY3NTdWJqZWN0c1tcIlZlY3RvclwiXSA9IFwiVmVjdG9yXCI7XG4gICAgRGlzdGFuY2VNZXRyaWNzU3ViamVjdHNbXCJTdHJpbmdcIl0gPSBcIlN0cmluZ1wiO1xuICAgIERpc3RhbmNlTWV0cmljc1N1YmplY3RzW1wiQml0QXJyYXlcIl0gPSBcIkJpdEFycmF5XCI7XG4gICAgRGlzdGFuY2VNZXRyaWNzU3ViamVjdHNbXCJNYWNyb01vbGVjdWxlXCJdID0gXCJNYWNyb01vbGVjdWxlXCI7XG4gICAgRGlzdGFuY2VNZXRyaWNzU3ViamVjdHNbXCJOdW1iZXJcIl0gPSBcIk51bWJlclwiO1xufSkoRGlzdGFuY2VNZXRyaWNzU3ViamVjdHMgfHwgKERpc3RhbmNlTWV0cmljc1N1YmplY3RzID0ge30pKTtcbmV4cG9ydCB2YXIgTnVtYmVyTWV0cmljc05hbWVzO1xuKGZ1bmN0aW9uIChOdW1iZXJNZXRyaWNzTmFtZXMpIHtcbiAgICBOdW1iZXJNZXRyaWNzTmFtZXNbXCJOdW1lcmljRGlzdGFuY2VcIl0gPSBcIk51bWVyaWNEaXN0YW5jZVwiO1xufSkoTnVtYmVyTWV0cmljc05hbWVzIHx8IChOdW1iZXJNZXRyaWNzTmFtZXMgPSB7fSkpO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pWTI5dWMzUnpMbXB6SWl3aWMyOTFjbU5sVW05dmRDSTZJaUlzSW5OdmRYSmpaWE1pT2xzaVkyOXVjM1J6TG5SeklsMHNJbTVoYldWeklqcGJYU3dpYldGd2NHbHVaM01pT2lKQlFVRkJMRTFCUVUwc1EwRkJUaXhKUVVGWkxHdENRVWxVTzBGQlNrZ3NWMEZCV1N4clFrRkJhMEk3U1VGRE1VSXNhVVJCUVRKQ0xFTkJRVUU3U1VGRE0wSXNhMFJCUVRSQ0xFTkJRVUU3U1VGRE5VSXNOa05CUVhWQ0xFTkJRVUU3UVVGRGVrSXNRMEZCUXl4RlFVcFRMR3RDUVVGclFpeExRVUZzUWl4clFrRkJhMElzVVVGSk0wSTdRVUZGU0N4TlFVRk5MRU5CUVU0c1NVRkJXU3hyUWtGRlZEdEJRVVpJTEZkQlFWa3NhMEpCUVd0Q08wbEJRekZDTERaRFFVRjFRaXhEUVVGQk8wRkJRM3BDTEVOQlFVTXNSVUZHVXl4clFrRkJhMElzUzBGQmJFSXNhMEpCUVd0Q0xGRkJSVE5DTzBGQlJVZ3NUVUZCVFN4RFFVRk9MRWxCUVZrc2IwSkJZVlE3UVVGaVNDeFhRVUZaTEc5Q1FVRnZRanRKUVVNMVFpdzJRMEZCY1VJc1EwRkJRVHRKUVVOeVFpeHhRMEZCWVN4RFFVRkJPMGxCUTJJc2FVUkJRWGxDTEVOQlFVRTdTVUZEZWtJc2QwUkJRV2RETEVOQlFVRTdTVUZEYUVNc2VVTkJRV2xDTEVOQlFVRTdTVUZEYWtJc2FVUkJRWGxDTEVOQlFVRTdTVUZEZWtJc2MwUkJRVGhDTEVOQlFVRTdTVUZET1VJc2QwUkJRV2RETEVOQlFVRTdTVUZEYUVNc2VVTkJRV2xDTEVOQlFVRTdTVUZEYWtJc2RVTkJRV1VzUTBGQlFUdEpRVU5tTERKRFFVRnRRaXhEUVVGQk8wbEJRMjVDTEN0RFFVRjFRaXhEUVVGQk8wRkJRM3BDTEVOQlFVTXNSVUZpVXl4dlFrRkJiMElzUzBGQmNFSXNiMEpCUVc5Q0xGRkJZVGRDTzBGQlJVZ3NUVUZCVFN4RFFVRk9MRWxCUVZrc2RVSkJUVlE3UVVGT1NDeFhRVUZaTEhWQ1FVRjFRanRKUVVNdlFpdzBRMEZCYVVJc1EwRkJRVHRKUVVOcVFpdzBRMEZCYVVJc1EwRkJRVHRKUVVOcVFpeG5SRUZCY1VJc1EwRkJRVHRKUVVOeVFpd3dSRUZCSzBJc1EwRkJRVHRKUVVNdlFpdzBRMEZCYVVJc1EwRkJRVHRCUVVOdVFpeERRVUZETEVWQlRsTXNkVUpCUVhWQ0xFdEJRWFpDTEhWQ1FVRjFRaXhSUVUxb1F6dEJRVVZJTEUxQlFVMHNRMEZCVGl4SlFVRlpMR3RDUVVWWU8wRkJSa1FzVjBGQldTeHJRa0ZCYTBJN1NVRkROVUlzZVVSQlFXMURMRU5CUVVFN1FVRkRja01zUTBGQlF5eEZRVVpYTEd0Q1FVRnJRaXhMUVVGc1FpeHJRa0ZCYTBJc1VVRkZOMElpTENKemIzVnlZMlZ6UTI5dWRHVnVkQ0k2V3lKbGVIQnZjblFnWlc1MWJTQlRkSEpwYm1kTlpYUnlhV056VG1GdFpYTWdlMXh1SUNBZ0lFeGxkbVZ1YzJoMFpXbHVJRDBnSjB4bGRtVnVjMmgwWldsdUp5eGNiaUFnSUNCS1lYSnZWMmx1YTJ4bGNpQTlJQ2RLWVhKdkxWZHBibXRzWlhJbkxGeHVJQ0FnSUUxaGJtaGhkSFJoYmlBOUlDZE5ZVzVvWVhSMFlXNG5MRnh1SUNCOVhHNWNibVY0Y0c5eWRDQmxiblZ0SUZabFkzUnZjazFsZEhKcFkzTk9ZVzFsY3lCN1hHNGdJQ0FnUlhWamJHbGtaV0Z1SUQwZ0owVjFZMnhwWkdWaGJpY3NYRzRnSUgxY2JseHVaWGh3YjNKMElHVnVkVzBnUW1sMFFYSnlZWGxOWlhSeWFXTnpUbUZ0WlhNZ2UxeHVJQ0FnSUZSaGJtbHRiM1J2SUQwZ0oxUmhibWx0YjNSdkp5eGNiaUFnSUNCRWFXTmxJRDBnSjBScFkyVW5MRnh1SUNBZ0lFRnplVzF0WlhSeWFXTWdQU0FuUVhONWJXMWxkSEpwWXljc1hHNGdJQ0FnUW5KaGRXNUNiR0Z1Y1hWbGRDQTlJQ2RDY21GMWJpMUNiR0Z1Y1hWbGRDY3NYRzRnSUNBZ1EyOXphVzVsSUQwZ0owTnZjMmx1WlNjc1hHNGdJQ0FnUzNWc1kzcDVibk5yYVNBOUlDZExkV3hqZW5sdWMydHBKeXhjYmlBZ0lDQk5ZME52Ym01aGRXZG9aWGtnUFNBblRXTXRRMjl1Ym1GMVoyaGxlU2NzWEc0Z0lDQWdVbTluYjNSSGIyeGtZbVZ5WnlBOUlDZFNiMmR2ZEMxSGIyeGtZbVZ5Wnljc1hHNGdJQ0FnVW5WemMyVnNJRDBnSjFKMWMzTmxiQ2NzWEc0Z0lDQWdVMjlyWVd3Z1BTQW5VMjlyWVd3bkxGeHVJQ0FnSUVoaGJXMXBibWNnUFNBblNHRnRiV2x1Wnljc1hHNGdJQ0FnUlhWamJHbGtaV0Z1SUQwZ0owVjFZMnhwWkdWaGJpY3NYRzRnSUgxY2JseHVaWGh3YjNKMElHVnVkVzBnUkdsemRHRnVZMlZOWlhSeWFXTnpVM1ZpYW1WamRITWdlMXh1SUNBZ0lGWmxZM1J2Y2lBOUlDZFdaV04wYjNJbkxGeHVJQ0FnSUZOMGNtbHVaeUE5SUNkVGRISnBibWNuTEZ4dUlDQWdJRUpwZEVGeWNtRjVJRDBnSjBKcGRFRnljbUY1Snl4Y2JpQWdJQ0JOWVdOeWIwMXZiR1ZqZFd4bElEMGdKMDFoWTNKdlRXOXNaV04xYkdVbkxGeHVJQ0FnSUU1MWJXSmxjaUE5SUNkT2RXMWlaWEluTEZ4dUlDQjlYRzVjYm1WNGNHOXlkQ0JsYm5WdElFNTFiV0psY2sxbGRISnBZM05PWVcxbGN5QjdYRzRnSUU1MWJXVnlhV05FYVhOMFlXNWpaU0E5SUNkT2RXMWxjbWxqUkdsemRHRnVZMlVuTEZ4dWZWeHVYRzRpWFgwPSIsImltcG9ydCB7IFZlY3RvciB9IGZyb20gJy4vdHlwZS1kZWNsYXJhdGlvbnMnO1xuaW1wb3J0IHsgcmFuZG9tRmxvYXQsIHJhbmRvbUludCB9IGZyb20gJy4vcmFuZG9tJztcbi8qKlxuICogQXNzZXJ0cyBhIGNvbmRpdGlvbiBieSB0aHJvd2luZyBhbiBFcnJvci5cbiAqXG4gKiBAZXhwb3J0XG4gKiBAcGFyYW0ge2Jvb2xlYW59IFtjb25kaXRpb249ZmFsc2VdIENvbmRpdGlvbiB0byBhc3NlcnQuXG4gKiBAcGFyYW0ge3N0cmluZ30gW21lc3NhZ2U9J0Fzc2VydGlvbiBlcnJvci4nXSBNZXNzYWdlIHRvIG91dHB1dC5cbiAqIEB0aHJvd3Mge0Vycm9yfVxuICovXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0KGNvbmRpdGlvbiA9IGZhbHNlLCBtZXNzYWdlID0gJ0Fzc2VydGlvbiBlcnJvci4nKSB7XG4gICAgaWYgKCFjb25kaXRpb24pXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihtZXNzYWdlKTtcbn1cbi8qKlxuICogQ3JlYXRlcyBuZXcgdHdvLWRpbWVuc2lvbmFsIGFycmF5IGFuZCBmaWxscyBpdCB3aXRoIHRoZSB2YWx1ZSBnaXZlbi5cbiAqXG4gKiBAcGFyYW0ge251bWJlcn0gZGltZW5zaW9uMSBUaGUgZmlyc3QgZGltZW5zaW9uIG9mIHRoZSBjb29yZGluYXRlcyAobnVtYmVyIG9mIHJvd3MpLlxuICogQHBhcmFtIHtudW1iZXJ9IGRpbWVuc2lvbjIgVGhlIHNlY29uZCBkaW1lbnNpb24gb2YgdGhlIGNvb3JkaW5hdGVzIChudW1iZXIgb2YgY29sdW1ucykuXG4gKiBAcGFyYW0ge251bWJlcn0gW2ZpbGw9MF0gQSB2YWx1ZSB0byBmaWxsIHRoZSBjb29yZGluYXRlcyB3aXRoLlxuICogQHJldHVybiB7Q29vcmRpbmF0ZXN9IEEgdHdvLWRpbWVuc2lvbmFsIGZpbGxlZCB3aXRoIHRoZSB2YWx1ZSBnaXZlbi5cbiAqIEB0b2RvIE1pZ2h0IGJlIHNsb3cgc2luY2UgdXNlZCBBcnJheS5tYXAuIFByb2JhYmx5IG5lZWRzIHBlcmZvcm1hbmNlIHJldmlzaW9uLlxuICovXG5mdW5jdGlvbiBpbml0Q29vcmRpbmF0ZXMoZGltZW5zaW9uMSwgZGltZW5zaW9uMiwgZmlsbCA9IDApIHtcbiAgICByZXR1cm4gbmV3IEFycmF5KGRpbWVuc2lvbjEpLmZpbGwoZmlsbCkubWFwKCgpID0+IChuZXcgVmVjdG9yKGRpbWVuc2lvbjIpLmZpbGwoZmlsbCkpKTtcbn1cbi8qKlxuICogVHJhbnNwb3NlIG1hdHJpeC5cbiAqXG4gKiBAZXhwb3J0XG4gKiBAcGFyYW0ge01hdHJpeH0gbWF0cml4IFRoZSBtYXRyaXggdG8gYmUgdHJhbnNwb3NlZC5cbiAqIEByZXR1cm4ge01hdHJpeH0gVHJhbnNwb3NlZCBtYXRyaXguXG4gKiBAdG9kbyBNaWdodCBiZSBzbG93IHNpbmNlIHVzZWQgQXJyYXkubWFwLiBQcm9iYWJseSBuZWVkcyBwZXJmb3JtYW5jZSByZXZpc2lvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zcG9zZU1hdHJpeChtYXRyaXgpIHtcbiAgICByZXR1cm4gbmV3IEFycmF5KG1hdHJpeFswXS5sZW5ndGgpLmZpbGwoMClcbiAgICAgICAgLm1hcCgoXywgaSkgPT4gKG5ldyBWZWN0b3IobWF0cml4Lmxlbmd0aCkuZmlsbCgwKS5tYXAoKF8sIGopID0+IChtYXRyaXhbal1baV0pKSkpO1xufVxuLyoqXG4gKiBBZGRzIHR3byB2ZWN0b3JzIHdpdGggdGhlIHNlY29uZCBvbmUgdG8gYmUgbXVsdGlwbGllZCBieSB0aGUgZ2l2ZW4gcmF0aW8uXG4gKlxuICogQGV4cG9ydFxuICogQHBhcmFtIHtWZWN0b3J9IHAgVGhlIGZpcnN0IHZlY3RvciB0byBhZGQuXG4gKiBAcGFyYW0ge1ZlY3Rvcn0gcSBUaGUgc2Vjb25kIHZlY3RvciB0byBhZGQuXG4gKiBAcGFyYW0ge251bWJlcn0gW211bHRpcGxpZXI9MV0gQSBtdWx0aXBsaWVyIHRvIGJlIHVzZWQgYmVmb3JlIHRoZSBzZWNvbmQgdmVjdG9yIGlzIGFkZGVkLlxuICogQHJldHVybiB7VmVjdG9yfSBOZXcgdmVjdG9yIGNvbnRhaW5lZCB0aGUgcmVzdWx0IG9mIG9wZXJhdGlvbiBwK211bHRpcGxpZXIqcS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZlY3RvckFkZChwLCBxLCBtdWx0aXBsaWVyID0gMSkge1xuICAgIGNvbnN0IG5JdGVtcyA9IHAubGVuZ3RoO1xuICAgIGFzc2VydChuSXRlbXMgPT0gcS5sZW5ndGgsICdWZWN0b3IgbGVuZ3RocyBkbyBub3QgbWF0Y2guJyk7XG4gICAgY29uc3QgdG90YWwgPSBuZXcgVmVjdG9yKG5JdGVtcyk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwLmxlbmd0aDsgKytpKVxuICAgICAgICB0b3RhbFtpXSA9IHBbaV0gKyBtdWx0aXBsaWVyICogcVtpXTtcbiAgICByZXR1cm4gdG90YWw7XG59XG4vKipcbiAqIFN1bXMgdGhlIHZlY3RvcidzIGl0ZW1zLlxuICpcbiAqIEBwYXJhbSB7VmVjdG9yfSB2IFRoZSB2ZWN0b3IgdG8gYmUgc3VtbWVkLlxuICogQHJldHVybiB7bnVtYmVyfSBUaGUgdmVjdG9yJ3MgaXRlbXMgc3VtLlxuICovXG5mdW5jdGlvbiBpdGVtc1N1bSh2KSB7XG4gICAgbGV0IHRvdGFsID0gMDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHYubGVuZ3RoOyArK2kpXG4gICAgICAgIHRvdGFsICs9IHZbaV07XG4gICAgcmV0dXJuIHRvdGFsO1xufVxuLyoqXG4gKiBTdXFhcmVzIHRoZSB2ZWN0b3IncyBpdGVtcy5cbiAqXG4gKiBAcGFyYW0ge1ZlY3Rvcn0gdiBUaGUgdmVjdG9yIHRvIHNxdWFyZS5cbiAqIEByZXR1cm4ge1ZlY3Rvcn0gQSBuZXcgdmVjdG9yIGNvbnRhaW5pbmcgdGhlIG9yaWdpbmFsJ3MgaXRlbXMgc3F1YXJlZC5cbiAqL1xuZnVuY3Rpb24gdmVjdG9yU3F1YXJlKHYpIHtcbiAgICBjb25zdCBuSXRlbXMgPSB2Lmxlbmd0aDtcbiAgICBjb25zdCB0b3RhbCA9IG5ldyBWZWN0b3Iobkl0ZW1zKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHYubGVuZ3RoOyArK2kpXG4gICAgICAgIHRvdGFsW2ldID0gdltpXSAqIHZbaV07XG4gICAgcmV0dXJuIHRvdGFsO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHZlY3Rvckxlbmd0aCh2KSB7XG4gICAgbGV0IHNxclN1bSA9IDA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB2Lmxlbmd0aDsgaSsrKVxuICAgICAgICBzcXJTdW0gKz0gdltpXSAqIHZbaV07XG4gICAgcmV0dXJuIE1hdGguc3FydChzcXJTdW0pO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHZlY3RvckRvdFByb2R1Y3QodjEsIHYyKSB7XG4gICAgaWYgKHYxLmxlbmd0aCAhPSB2Mi5sZW5ndGgpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignVGhlIGRpbWVuc2lvbmFsaXR5IG9mIHRoZSB2ZWN0b3JzIG11c3QgbWF0Y2gnKTtcbiAgICBsZXQgcHJvZCA9IDA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB2MS5sZW5ndGg7IGkrKylcbiAgICAgICAgcHJvZCArPSB2MVtpXSAqIHYyW2ldO1xuICAgIHJldHVybiBwcm9kO1xufVxuLyoqXG4gKiBDcmVhdGVzIGEgbWF0cml4IGZpbGxlZCB3aXRoIHJhbmRvbSBmbG9hdGluZyBwb2ludCB2YWx1ZXMuXG4gKlxuICogQGV4cG9ydFxuICogQHBhcmFtIHtudW1iZXJ9IGRpbWVuc2lvbjEgVGhlIGZpcnN0IGRpbWVuc2lvbiBvZiB0aGUgbWF0cml4LlxuICogQHBhcmFtIHtudW1iZXJ9IGRpbWVuc2lvbjIgVGhlIHNlY29uZCBkaW1lbnNpb24gb2YgdGhlIG1hdHJpeC5cbiAqIEBwYXJhbSB7bnVtYmVyfSBbc2NhbGU9MS5dIE1heCB2YWx1ZSBnaXZlbiBieSByYW5kb20gZ2VuZXJhdG9yLlxuICogQHJldHVybiB7TWF0cml4fSBBIG5ldyBtYXRyaXggZmlsbGVkIHdpdGggcmFuZG9tIGZsb2F0aW5nIHBvaW50ICB2YWx1ZXMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmaWxsUmFuZG9tTWF0cml4KGRpbWVuc2lvbjEsIGRpbWVuc2lvbjIsIHNjYWxlID0gMS4pIHtcbiAgICBjb25zdCBtYXRyaXggPSBpbml0Q29vcmRpbmF0ZXMoZGltZW5zaW9uMSwgZGltZW5zaW9uMik7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkaW1lbnNpb24xOyArK2kpIHtcbiAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBkaW1lbnNpb24yOyArK2opXG4gICAgICAgICAgICBtYXRyaXhbaV1bal0gPSByYW5kb21GbG9hdChzY2FsZSk7XG4gICAgfVxuICAgIHJldHVybiBtYXRyaXg7XG59XG4vKipcbiAqIENhbGN1bGF0ZXMgRXVjbGlkZWFuIGRpc3RhbmNlIGJldHdlZW4gdHdvIHZlY3RvcnMuXG4gKlxuICogQGV4cG9ydFxuICogQHBhcmFtIHtWZWN0b3J9IHAgVGhlIGZpcnN0IHZlY3Rvci5cbiAqIEBwYXJhbSB7VmVjdG9yfSBxIFRoZSBzZWNvbmQgdmVjdG9yLlxuICogQHJldHVybiB7bnVtYmVyfSBFdWNsaWRlYW4gZGlzdGFuY2UgYmV0d2VlbiB0aGUgZ2l2ZW4gdmVjdG9ycy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNhbGN1bGF0ZUV1Y2xpZGVhbkRpc3RhbmNlKHAsIHEpIHtcbiAgICBjb25zdCBkaWZmID0gdmVjdG9yQWRkKHAsIHEsIC0xKTtcbiAgICBjb25zdCBzcWRpZmYgPSB2ZWN0b3JTcXVhcmUoZGlmZik7XG4gICAgY29uc3Qgc3FkaWZmU3VtbSA9IGl0ZW1zU3VtKHNxZGlmZik7XG4gICAgcmV0dXJuIE1hdGguc3FydChzcWRpZmZTdW1tKTtcbn1cbi8qKlxuICogQ3JlYXRlcyBhIGRpc3RhbmNlIG1hdHJpeCB1c2luZyBhIGN1c3RvbSBkaXN0YW5jZSBmdW5jdGlvbi5cbiAqXG4gKiBAZXhwb3J0XG4gKiBAcGFyYW0ge1ZlY3RvcnN9IGRhdGEgSW5wdXQgdmVjdG9ycyB0byBjYWxjdWxhdGUgZGlzdGFuY2VzLlxuICogQHBhcmFtIHtEaXN0YW5jZU1ldHJpY30gZGlzdGFuY2UgQ3VzdG9tIGRpc3RhbmNlIGZ1bmN0aW9uLlxuICogQHJldHVybiB7TWF0cml4fSBDYWxjdWxhdGVkIGN1c3RvbSBkaXN0YW5jZSBtYXRyaXguXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjYWxjRGlzdGFuY2VNYXRyaXgoZGF0YSwgZGlzdGFuY2UpIHtcbiAgICBjb25zdCBuSXRlbXMgPSBkYXRhLmxlbmd0aDtcbiAgICBjb25zdCBtYXRyaXggPSBpbml0Q29vcmRpbmF0ZXMobkl0ZW1zLCBuSXRlbXMsIDApO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbkl0ZW1zOyArK2kpIHtcbiAgICAgICAgZm9yIChsZXQgaiA9IGkgKyAxOyBqIDwgbkl0ZW1zOyArK2opIHtcbiAgICAgICAgICAgIGNvbnN0IGQgPSAoZGF0YVtpXSA9PSBudWxsKSB8fCAoZGF0YVtqXSA9PSBudWxsKSA/IDAgOiBkaXN0YW5jZShkYXRhW2ldLCBkYXRhW2pdKTtcbiAgICAgICAgICAgIG1hdHJpeFtpXVtqXSA9IG1hdHJpeFtqXVtpXSA9IGQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG1hdHJpeDtcbn1cbi8qKlxuICogQ3JlYXRlcyBhIGRpc3RhbmNlIG1hdHJpeCB1c2luZyBhIGN1c3RvbSBkaXN0YW5jZSBmdW5jdGlvbi5cbiAqXG4gKiBAZXhwb3J0XG4gKiBAcGFyYW0ge1ZlY3RvcnN9IGRhdGEgSW5wdXQgdmVjdG9ycyB0byBjYWxjdWxhdGUgZGlzdGFuY2VzLlxuICogQHBhcmFtIHtEaXN0YW5jZU1ldHJpY30gZGlzdGFuY2UgQ3VzdG9tIGRpc3RhbmNlIGZ1bmN0aW9uLlxuICogQHJldHVybiB7TWF0cml4fSBDYWxjdWxhdGVkIGN1c3RvbSBkaXN0YW5jZSBtYXRyaXguXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjYWxjTm9ybWFsaXplZERpc3RhbmNlTWF0cml4KGRhdGEsIGRpc3RhbmNlKSB7XG4gICAgY29uc3Qgbkl0ZW1zID0gZGF0YS5sZW5ndGg7XG4gICAgY29uc3QgbWF0cml4ID0gaW5pdENvb3JkaW5hdGVzKG5JdGVtcywgbkl0ZW1zLCAwKTtcbiAgICBsZXQgbWF4ID0gTnVtYmVyLk1JTl9WQUxVRTtcbiAgICBsZXQgbWluID0gTnVtYmVyLk1BWF9WQUxVRTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5JdGVtczsgKytpKSB7XG4gICAgICAgIGZvciAobGV0IGogPSBpOyBqIDwgbkl0ZW1zOyArK2opIHtcbiAgICAgICAgICAgIGNvbnN0IGQgPSAoZGF0YVtpXSA9PSBudWxsKSB8fCAoZGF0YVtqXSA9PSBudWxsIHx8IGkgPT09IGopID8gMCA6IGRpc3RhbmNlKGRhdGFbaV0sIGRhdGFbal0pO1xuICAgICAgICAgICAgbWF0cml4W2ldW2pdID0gbWF0cml4W2pdW2ldID0gZDtcbiAgICAgICAgICAgIGlmIChkID4gbWF4KVxuICAgICAgICAgICAgICAgIG1heCA9IGQ7XG4gICAgICAgICAgICBpZiAoZCA8IG1pbilcbiAgICAgICAgICAgICAgICBtaW4gPSBkO1xuICAgICAgICB9XG4gICAgfVxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbkl0ZW1zOyArK2kpIHtcbiAgICAgICAgZm9yIChsZXQgaiA9IGkgKyAxOyBqIDwgbkl0ZW1zOyArK2opXG4gICAgICAgICAgICBtYXRyaXhbaV1bal0gPSBtYXRyaXhbal1baV0gPSAobWF0cml4W2ldW2pdIC0gbWluKSAvIChtYXggLSBtaW4pO1xuICAgIH1cbiAgICByZXR1cm4gbWF0cml4O1xufVxuLyoqIEdlbmVyYXRlcyBhcnJheSBmcm9tIGEgcmFuZ2UgW2JlZ2luOyBlbmRdIG9yIFtiZWdpbjsgZW5kKSBpZiBlbmRFeGNsdXNpdmUuICoqL1xuZXhwb3J0IGZ1bmN0aW9uIGdlblJhbmdlKGJlZ2luLCBlbmQsIGVuZEV4Y2x1c2l2ZSA9IGZhbHNlKSB7XG4gICAgY29uc3Qgbkl0ZW1zID0gZW5kIC0gYmVnaW4gKyAoZW5kRXhjbHVzaXZlID8gMCA6IDEpO1xuICAgIGNvbnN0IHNlcmllcyA9IG5ldyBJbnQzMkFycmF5KG5JdGVtcyk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuSXRlbXM7ICsraSlcbiAgICAgICAgc2VyaWVzW2ldID0gYmVnaW4gKyBpO1xuICAgIHJldHVybiBzZXJpZXM7XG59XG4vKipcbiAqIFJldHVybnMgb3JkZXIgb2YgdmFsdWVzIGFzIGlmIHRoZXkgYXJlIHNvcnRlZC5cbiAqXG4gKiBAZXhwb3J0XG4gKiBAcGFyYW0ge2FueVtdfSB2YWx1ZXMgSW5wdXQgYXJyYXkuXG4gKiBAcGFyYW0ge2Jvb2xlYW59IFtyZXZlcnNlPWZhbHNlXSBXaGV0aGVyIHRvIHJldHVybiByZXZlcnNlZCBvcmRlci5cbiAqIEByZXR1cm4ge251bWJlcltdfSBUaGUgb3JkZXIgY29tcHV0ZWQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhcmdTb3J0KHZhbHVlcywgcmV2ZXJzZSA9IGZhbHNlKSB7XG4gICAgY29uc3Qgc29ydGZuID0gcmV2ZXJzZSA/IChhLCBiKSA9PiAoYlswXSAtIGFbMF0pIDogKGEsIGIpID0+IChhWzBdIC0gYlswXSk7XG4gICAgY29uc3QgZGVjb3IgPSAodiwgaSkgPT4gW3YsIGldOyAvLyBzZXQgaW5kZXggdG8gdmFsdWVcbiAgICBjb25zdCB1bmRlY29yID0gKGEpID0+IGFbMV07IC8vIGxlYXZlIG9ubHkgaW5kZXhcbiAgICBjb25zdCBfYXJnc29ydCA9IChhcnIpID0+IGFyci5tYXAoZGVjb3IpLnNvcnQoc29ydGZuKS5tYXAodW5kZWNvcik7XG4gICAgcmV0dXJuIF9hcmdzb3J0KHZhbHVlcyk7XG59XG4vKipcbiAqIFJldHVybnMgdGhlIGluZGV4ZXMgb2YgdGhlIG1vc3QgZGl2ZXJzZSBvYmplY3RzIGFjY29yZGluZyB0byB0aGUgZGlzdCBmdW5jdGlvblxuICogQHBhcmFtIHtudW1iZXJ9IGxlbmd0aCB0b3RhbCBudW1iZXIgb2Ygb2JqZWN0c1xuICogQHBhcmFtIHtudW1iZXJ9IG4gbnVtYmVyIG9mIGRpdmVyc2UgZWxlbWVudHMgdG8gZmluZFxuICogQHBhcmFtIHsoaTE6IG51bWJlciwgaTI6IG51bWJlcikgPT4gbnVtYmVyfSBkaXN0IGEgZnVuY3Rpb24gd2hpY2ggY2FsY3VsYXRlcyBkaXN0YW5jZSBiZXR3ZWVuXG4gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHdvIG9iamVjdHMgdXNpbmcgdGhlaXIgaW5kZXhlc1xuICogQHJldHVybnMge251bWJlcltdfSBUaGUgaW5kZXhlcyBvZiB0aGUgbW9zdCBkaXZlcnNlIG9iamVjdHNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldERpdmVyc2VTdWJzZXQobGVuZ3RoLCBuLCBkaXN0KSB7XG4gICAgZnVuY3Rpb24gbWF4QnkodmFsdWVzLCBvcmRlckJ5KSB7XG4gICAgICAgIGxldCBtYXhWYWx1ZSA9IG51bGw7XG4gICAgICAgIGxldCBtYXhPcmRlckJ5ID0gbnVsbDtcbiAgICAgICAgZm9yIChjb25zdCBlbGVtZW50IG9mIHZhbHVlcykge1xuICAgICAgICAgICAgY29uc3QgZWxlbWVudE9yZGVyQnkgPSBvcmRlckJ5KGVsZW1lbnQpO1xuICAgICAgICAgICAgaWYgKG1heE9yZGVyQnkgPT0gbnVsbCB8fCBlbGVtZW50T3JkZXJCeSA+IG1heE9yZGVyQnkpIHtcbiAgICAgICAgICAgICAgICBtYXhWYWx1ZSA9IGVsZW1lbnQ7XG4gICAgICAgICAgICAgICAgbWF4T3JkZXJCeSA9IGVsZW1lbnRPcmRlckJ5O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBtYXhWYWx1ZTtcbiAgICB9XG4gICAgY29uc3Qgc3Vic2V0ID0gW3JhbmRvbUludChsZW5ndGggLSAxKV07XG4gICAgY29uc3QgY29tcGxlbWVudCA9IG5ldyBTZXQoKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxlbmd0aDsgKytpKSB7XG4gICAgICAgIGlmICghc3Vic2V0LmluY2x1ZGVzKGkpKVxuICAgICAgICAgICAgY29tcGxlbWVudC5hZGQoaSk7XG4gICAgfVxuICAgIHdoaWxlIChzdWJzZXQubGVuZ3RoIDwgbikge1xuICAgICAgICBjb25zdCBpZHggPSBtYXhCeShjb21wbGVtZW50LnZhbHVlcygpLCAoaSkgPT4gTWF0aC5taW4uYXBwbHkoTWF0aCwgc3Vic2V0Lm1hcChmdW5jdGlvbiAodmFsLCBpbmRleCkge1xuICAgICAgICAgICAgcmV0dXJuIGRpc3QoaSwgdmFsKTtcbiAgICAgICAgfSkpKTtcbiAgICAgICAgaWYgKGlkeCkge1xuICAgICAgICAgICAgc3Vic2V0LnB1c2goaWR4KTtcbiAgICAgICAgICAgIGNvbXBsZW1lbnQuZGVsZXRlKGlkeCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHN1YnNldDtcbn1cbi8qKlxuICogUmV0dXJucyBub3JtYWxpemVkIHZlY3RvclxuICogQHBhcmFtIHtWZWN0b3J9IGRhdGEgbnVtZXJpY2FsIGFycmF5XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBub3JtYWxpemUoZGF0YSkge1xuICAgIGxldCBtZWFuID0gMDtcbiAgICBsZXQgc3RkID0gMDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRhdGEubGVuZ3RoOyArK2kpXG4gICAgICAgIG1lYW4gKz0gZGF0YVtpXTtcbiAgICBtZWFuIC89IGRhdGEubGVuZ3RoO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGF0YS5sZW5ndGg7ICsraSlcbiAgICAgICAgc3RkICs9IChkYXRhW2ldIC0gbWVhbikgKiAoZGF0YVtpXSAtIG1lYW4pO1xuICAgIHN0ZCA9IE1hdGguc3FydChzdGQgLyBkYXRhLmxlbmd0aCk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkYXRhLmxlbmd0aDsgKytpKVxuICAgICAgICBkYXRhW2ldID0gKGRhdGFbaV0gLSBtZWFuKSAvIHN0ZDtcbiAgICByZXR1cm4gZGF0YTtcbn1cbi8qKlxuICogRmluZHMgc2V0IGRpZmZlcmVuY2UgYmV0d2VlbiB0d28gbGlzdHMuXG4gKiBAcGFyYW0ge2FueVtdfSBhIFRoZSBmaXJzdCBsaXN0LlxuICogQHBhcmFtIHthbnlbXX0gYiBUaGUgc2Vjb25kIGxpc3QuXG4gKiBAcmV0dXJuIHthbnlbXX1cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNldERpZmZlcmVuY2UoYSwgYikge1xuICAgIGNvbnN0IGJTZXQgPSBuZXcgU2V0KGIpO1xuICAgIHJldHVybiBBcnJheS5mcm9tKG5ldyBTZXQoYS5maWx0ZXIoKHgpID0+ICFiU2V0Lmhhcyh4KSkpLnZhbHVlcygpKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaWRtVmpkRzl5TFc5d1pYSmhkR2x2Ym5NdWFuTWlMQ0p6YjNWeVkyVlNiMjkwSWpvaUlpd2ljMjkxY21ObGN5STZXeUoyWldOMGIzSXRiM0JsY21GMGFXOXVjeTUwY3lKZExDSnVZVzFsY3lJNlcxMHNJbTFoY0hCcGJtZHpJam9pUVVGQlFTeFBRVUZQTEVWQlFWTXNUVUZCVFN4RlFVRjFReXhOUVVGTkxIRkNRVUZ4UWl4RFFVRkRPMEZCUTNwR0xFOUJRVThzUlVGQlF5eFhRVUZYTEVWQlFVVXNVMEZCVXl4RlFVRkRMRTFCUVUwc1ZVRkJWU3hEUVVGRE8wRkJSV2hFT3pzN096czdPMGRCVDBjN1FVRkRTQ3hOUVVGTkxGVkJRVlVzVFVGQlRTeERRVUZETEZsQlFYRkNMRXRCUVVzc1JVRkJSU3hWUVVGclFpeHJRa0ZCYTBJN1NVRkRja1lzU1VGQlNTeERRVUZETEZOQlFWTTdVVUZEV2l4TlFVRk5MRWxCUVVrc1MwRkJTeXhEUVVGRExFOUJRVThzUTBGQlF5eERRVUZETzBGQlF6ZENMRU5CUVVNN1FVRkZSRHM3T3pzN096czdSMEZSUnp0QlFVTklMRk5CUVZNc1pVRkJaU3hEUVVGRExGVkJRV3RDTEVWQlFVVXNWVUZCYTBJc1JVRkJSU3hQUVVGbExFTkJRVU03U1VGREwwVXNUMEZCVHl4SlFVRkpMRXRCUVVzc1EwRkJReXhWUVVGVkxFTkJRVU1zUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1IwRkJSeXhEUVVGRExFZEJRVWNzUlVGQlJTeERRVUZETEVOQlFVTXNTVUZCU1N4TlFVRk5MRU5CUVVNc1ZVRkJWU3hEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRCUVVONlJpeERRVUZETzBGQlJVUTdPenM3T3pzN1IwRlBSenRCUVVOSUxFMUJRVTBzVlVGQlZTeGxRVUZsTEVOQlFVTXNUVUZCWXp0SlFVTTFReXhQUVVGUExFbEJRVWtzUzBGQlN5eERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRPMU5CUTNaRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSU3hEUVVGRExFTkJRVU1zU1VGQlNTeE5RVUZOTEVOQlFVTXNUVUZCVFN4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8wRkJRM1JHTEVOQlFVTTdRVUZGUkRzN096czdPenM3UjBGUlJ6dEJRVU5JTEUxQlFVMHNWVUZCVlN4VFFVRlRMRU5CUVVNc1EwRkJVeXhGUVVGRkxFTkJRVk1zUlVGQlJTeGhRVUZ4UWl4RFFVRkRPMGxCUTNCRkxFMUJRVTBzVFVGQlRTeEhRVUZITEVOQlFVTXNRMEZCUXl4TlFVRk5MRU5CUVVNN1NVRkZlRUlzVFVGQlRTeERRVUZETEUxQlFVMHNTVUZCU1N4RFFVRkRMRU5CUVVNc1RVRkJUU3hGUVVGRkxEaENRVUU0UWl4RFFVRkRMRU5CUVVNN1NVRkZNMFFzVFVGQlRTeExRVUZMTEVkQlFVY3NTVUZCU1N4TlFVRk5MRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU03U1VGRmFrTXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4TlFVRk5MRVZCUVVVc1JVRkJSU3hEUVVGRE8xRkJReTlDTEV0QlFVc3NRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NWVUZCVlN4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dEpRVVYwUXl4UFFVRlBMRXRCUVVzc1EwRkJRenRCUVVObUxFTkJRVU03UVVGRlJEczdPenM3UjBGTFJ6dEJRVU5JTEZOQlFWTXNVVUZCVVN4RFFVRkRMRU5CUVZNN1NVRkRla0lzU1VGQlNTeExRVUZMTEVkQlFVY3NRMEZCUXl4RFFVRkRPMGxCUldRc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhOUVVGTkxFVkJRVVVzUlVGQlJTeERRVUZETzFGQlF5OUNMRXRCUVVzc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdTVUZGYUVJc1QwRkJUeXhMUVVGTExFTkJRVU03UVVGRFppeERRVUZETzBGQlJVUTdPenM3TzBkQlMwYzdRVUZEU0N4VFFVRlRMRmxCUVZrc1EwRkJReXhEUVVGVE8wbEJRemRDTEUxQlFVMHNUVUZCVFN4SFFVRkhMRU5CUVVNc1EwRkJReXhOUVVGTkxFTkJRVU03U1VGRGVFSXNUVUZCVFN4TFFVRkxMRWRCUVVjc1NVRkJTU3hOUVVGTkxFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTTdTVUZGYWtNc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhOUVVGTkxFVkJRVVVzUlVGQlJTeERRVUZETzFGQlF5OUNMRXRCUVVzc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzBsQlJYcENMRTlCUVU4c1MwRkJTeXhEUVVGRE8wRkJRMllzUTBGQlF6dEJRVVZFTEUxQlFVMHNWVUZCVlN4WlFVRlpMRU5CUVVNc1EwRkJVenRKUVVOd1F5eEpRVUZKTEUxQlFVMHNSMEZCVnl4RFFVRkRMRU5CUVVNN1NVRkRka0lzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCVnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eE5RVUZOTEVWQlFVVXNRMEZCUXl4RlFVRkZPMUZCUTNaRExFMUJRVTBzU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzBsQlEzaENMRTlCUVU4c1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXp0QlFVTXpRaXhEUVVGRE8wRkJSVVFzVFVGQlRTeFZRVUZWTEdkQ1FVRm5RaXhEUVVGRExFVkJRVlVzUlVGQlJTeEZRVUZWTzBsQlEzSkVMRWxCUVVrc1JVRkJSU3hEUVVGRExFMUJRVTBzU1VGQlNTeEZRVUZGTEVOQlFVTXNUVUZCVFR0UlFVTjRRaXhOUVVGTkxFbEJRVWtzUzBGQlN5eERRVUZETERoRFFVRTRReXhEUVVGRExFTkJRVU03U1VGRGJFVXNTVUZCU1N4SlFVRkpMRWRCUVZjc1EwRkJReXhEUVVGRE8wbEJRM0pDTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVZjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eEZRVUZGTEVOQlFVTXNUVUZCVFN4RlFVRkZMRU5CUVVNc1JVRkJSVHRSUVVONFF5eEpRVUZKTEVsQlFVa3NSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0SlFVTjRRaXhQUVVGUExFbEJRVWtzUTBGQlF6dEJRVU5rTEVOQlFVTTdRVUZGUkRzN096czdPenM3UjBGUlJ6dEJRVU5JTEUxQlFVMHNWVUZCVlN4blFrRkJaMElzUTBGQlF5eFZRVUZyUWl4RlFVRkZMRlZCUVd0Q0xFVkJRVVVzVVVGQlowSXNSVUZCUlR0SlFVTjZSaXhOUVVGTkxFMUJRVTBzUjBGQlJ5eGxRVUZsTEVOQlFVTXNWVUZCVlN4RlFVRkZMRlZCUVZVc1EwRkJReXhEUVVGRE8wbEJSWFpFTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eFZRVUZWTEVWQlFVVXNSVUZCUlN4RFFVRkRMRVZCUVVVN1VVRkRia01zUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExGVkJRVlVzUlVGQlJTeEZRVUZGTEVOQlFVTTdXVUZEYWtNc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRmRCUVZjc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF6dExRVU55UXp0SlFVTkVMRTlCUVU4c1RVRkJUU3hEUVVGRE8wRkJRMmhDTEVOQlFVTTdRVUZGUkRzN096czdPenRIUVU5SE8wRkJRMGdzVFVGQlRTeFZRVUZWTERCQ1FVRXdRaXhEUVVGRExFTkJRVk1zUlVGQlJTeERRVUZUTzBsQlF6ZEVMRTFCUVUwc1NVRkJTU3hIUVVGSExGTkJRVk1zUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRGFrTXNUVUZCVFN4TlFVRk5MRWRCUVVjc1dVRkJXU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzBsQlEyeERMRTFCUVUwc1ZVRkJWU3hIUVVGSExGRkJRVkVzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXp0SlFVTndReXhQUVVGUExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNWVUZCVlN4RFFVRkRMRU5CUVVNN1FVRkRMMElzUTBGQlF6dEJRVVZFT3pzN096czdPMGRCVDBjN1FVRkRTQ3hOUVVGTkxGVkJRVlVzYTBKQlFXdENMRU5CUVVNc1NVRkJZU3hGUVVGRkxGRkJRWGRDTzBsQlEzaEZMRTFCUVUwc1RVRkJUU3hIUVVGSExFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTTdTVUZETTBJc1RVRkJUU3hOUVVGTkxFZEJRVWNzWlVGQlpTeERRVUZETEUxQlFVMHNSVUZCUlN4TlFVRk5MRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRmJFUXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEUxQlFVMHNSVUZCUlN4RlFVRkZMRU5CUVVNc1JVRkJSVHRSUVVNdlFpeExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEUxQlFVMHNSVUZCUlN4RlFVRkZMRU5CUVVNc1JVRkJSVHRaUVVOdVF5eE5RVUZOTEVOQlFVTXNSMEZCVnl4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zU1VGQlNTeEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zU1VGQlNTeEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eFJRVUZSTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhGUVVGRkxFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMWxCUXpGR0xFMUJRVTBzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRE8xTkJRMnBETzB0QlEwWTdTVUZEUkN4UFFVRlBMRTFCUVUwc1EwRkJRenRCUVVOb1FpeERRVUZETzBGQlJVUTdPenM3T3pzN1IwRlBSenRCUVVOSUxFMUJRVTBzVlVGQlZTdzBRa0ZCTkVJc1EwRkJReXhKUVVGaExFVkJRVVVzVVVGQmQwSTdTVUZEYkVZc1RVRkJUU3hOUVVGTkxFZEJRVWNzU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXp0SlFVTXpRaXhOUVVGTkxFMUJRVTBzUjBGQlJ5eGxRVUZsTEVOQlFVTXNUVUZCVFN4RlFVRkZMRTFCUVUwc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF6dEpRVU5zUkN4SlFVRkpMRWRCUVVjc1IwRkJSeXhOUVVGTkxFTkJRVU1zVTBGQlV5eERRVUZETzBsQlF6TkNMRWxCUVVrc1IwRkJSeXhIUVVGSExFMUJRVTBzUTBGQlF5eFRRVUZUTEVOQlFVTTdTVUZETTBJc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRTFCUVUwc1JVRkJSU3hGUVVGRkxFTkJRVU1zUlVGQlJUdFJRVU12UWl4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NUVUZCVFN4RlFVRkZMRVZCUVVVc1EwRkJReXhGUVVGRk8xbEJReTlDTEUxQlFVMHNRMEZCUXl4SFFVRlhMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eEpRVUZKTEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eEpRVUZKTEVsQlFVa3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1VVRkJVU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dFpRVU55Unl4TlFVRk5MRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NUVUZCVFN4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXp0WlFVTm9ReXhKUVVGSkxFTkJRVU1zUjBGQlJ5eEhRVUZITzJkQ1FVRkZMRWRCUVVjc1IwRkJSeXhEUVVGRExFTkJRVU03V1VGRGNrSXNTVUZCU1N4RFFVRkRMRWRCUVVjc1IwRkJSenRuUWtGQlJTeEhRVUZITEVkQlFVY3NRMEZCUXl4RFFVRkRPMU5CUTNSQ08wdEJRMFk3U1VGRFJDeExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzVFVGQlRTeEZRVUZGTEVWQlFVVXNRMEZCUXl4RlFVRkZPMUZCUXk5Q0xFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzVFVGQlRTeEZRVUZGTEVWQlFVVXNRMEZCUXp0WlFVTnFReXhOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRWRCUVVjc1EwRkJReXhIUVVGSExFTkJRVU1zUjBGQlJ5eEhRVUZITEVkQlFVY3NRMEZCUXl4RFFVRkRPMHRCUTNCRk8wbEJRMFFzVDBGQlR5eE5RVUZOTEVOQlFVTTdRVUZEYUVJc1EwRkJRenRCUVVWRUxHdEdRVUZyUmp0QlFVTnNSaXhOUVVGTkxGVkJRVlVzVVVGQlVTeERRVUZETEV0QlFXRXNSVUZCUlN4SFFVRlhMRVZCUVVVc1dVRkJXU3hIUVVGSExFdEJRVXM3U1VGRGRrVXNUVUZCVFN4TlFVRk5MRWRCUVVjc1IwRkJSeXhIUVVGSExFdEJRVXNzUjBGQlJ5eERRVUZETEZsQlFWa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0SlFVTndSQ3hOUVVGTkxFMUJRVTBzUjBGQlJ5eEpRVUZKTEZWQlFWVXNRMEZCUXl4TlFVRk5MRU5CUVVNc1EwRkJRenRKUVVWMFF5eExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzVFVGQlRTeEZRVUZGTEVWQlFVVXNRMEZCUXp0UlFVTTNRaXhOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NTMEZCU3l4SFFVRkhMRU5CUVVNc1EwRkJRenRKUVVWNFFpeFBRVUZQTEUxQlFVMHNRMEZCUXp0QlFVTm9RaXhEUVVGRE8wRkJSVVE3T3pzN096czdSMEZQUnp0QlFVTklMRTFCUVUwc1ZVRkJWU3hQUVVGUExFTkJRVU1zVFVGQllTeEZRVUZGTEU5QlFVOHNSMEZCUnl4TFFVRkxPMGxCUTNCRUxFMUJRVTBzVFVGQlRTeEhRVUZITEU5QlFVOHNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGUkxFVkJRVVVzUTBGQlVTeEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZSTEVWQlFVVXNRMEZCVVN4RlFVRkZMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dEpRVU4yUnl4TlFVRk5MRXRCUVVzc1IwRkJSeXhEUVVGRExFTkJRVTBzUlVGQlJTeERRVUZUTEVWQlFVVXNSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNjVUpCUVhGQ08wbEJRMnhGTEUxQlFVMHNUMEZCVHl4SFFVRkhMRU5CUVVNc1EwRkJVU3hGUVVGRkxFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXh0UWtGQmJVSTdTVUZEZGtRc1RVRkJUU3hSUVVGUkxFZEJRVWNzUTBGQlF5eEhRVUZWTEVWQlFVVXNSVUZCUlN4RFFVRkRMRWRCUVVjc1EwRkJReXhIUVVGSExFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXp0SlFVTXhSU3hQUVVGUExGRkJRVkVzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXp0QlFVTXhRaXhEUVVGRE8wRkJSVVE3T3pzN096czdSMEZQUnp0QlFVTklMRTFCUVUwc1ZVRkJWU3huUWtGQlowSXNRMEZCUXl4TlFVRmpMRVZCUVVVc1EwRkJVeXhGUVVGRkxFbEJRWGRETzBsQlEyeEhMRk5CUVZNc1MwRkJTeXhEUVVGRExFMUJRV2RETEVWQlFVVXNUMEZCT0VJN1VVRkROMFVzU1VGQlNTeFJRVUZSTEVkQlFVY3NTVUZCU1N4RFFVRkRPMUZCUTNCQ0xFbEJRVWtzVlVGQlZTeEhRVUZITEVsQlFVa3NRMEZCUXp0UlFVVjBRaXhMUVVGTExFMUJRVTBzVDBGQlR5eEpRVUZKTEUxQlFVMHNSVUZCUlR0WlFVTTFRaXhOUVVGTkxHTkJRV01zUjBGQlJ5eFBRVUZQTEVOQlFVTXNUMEZCVHl4RFFVRkRMRU5CUVVNN1dVRkRlRU1zU1VGQlNTeFZRVUZWTEVsQlFVa3NTVUZCU1N4SlFVRkpMR05CUVdNc1IwRkJSeXhWUVVGVkxFVkJRVVU3WjBKQlEzSkVMRkZCUVZFc1IwRkJSeXhQUVVGUExFTkJRVU03WjBKQlEyNUNMRlZCUVZVc1IwRkJSeXhqUVVGakxFTkJRVU03WVVGRE4wSTdVMEZEUmp0UlFVTkVMRTlCUVU4c1VVRkJVU3hEUVVGRE8wbEJRMnhDTEVOQlFVTTdTVUZGUkN4TlFVRk5MRTFCUVUwc1IwRkJSeXhEUVVGRExGTkJRVk1zUTBGQlF5eE5RVUZOTEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRKUVVOMlF5eE5RVUZOTEZWQlFWVXNSMEZCUnl4SlFVRkpMRWRCUVVjc1JVRkJSU3hEUVVGRE8wbEJSVGRDTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eE5RVUZOTEVWQlFVVXNSVUZCUlN4RFFVRkRMRVZCUVVVN1VVRkRMMElzU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXl4UlFVRlJMRU5CUVVNc1EwRkJReXhEUVVGRE8xbEJRM0pDTEZWQlFWVXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03UzBGRGNrSTdTVUZGUkN4UFFVRlBMRTFCUVUwc1EwRkJReXhOUVVGTkxFZEJRVWNzUTBGQlF5eEZRVUZGTzFGQlEzaENMRTFCUVUwc1IwRkJSeXhIUVVGSExFdEJRVXNzUTBGRFppeFZRVUZWTEVOQlFVTXNUVUZCVFN4RlFVRTRRaXhGUVVNdlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RlFVRkZMRU5CUVVNc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eExRVUZMTEVOQlFVTXNTVUZCU1N4RlFVRkZMRTFCUVUwc1EwRkJReXhIUVVGSExFTkJRVU1zVlVGQlV5eEhRVUZITEVWQlFVVXNTMEZCU3p0WlFVTjRSQ3hQUVVGUExFbEJRVWtzUTBGQlF5eERRVUZETEVWQlFVVXNSMEZCUnl4RFFVRkRMRU5CUVVNN1VVRkRkRUlzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMUZCUTFBc1NVRkJTU3hIUVVGSExFVkJRVVU3V1VGRFVDeE5RVUZOTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRE8xbEJRMnBDTEZWQlFWVXNRMEZCUXl4TlFVRk5MRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU03VTBGRGVFSTdTMEZEUmp0SlFVTkVMRTlCUVU4c1RVRkJUU3hEUVVGRE8wRkJRMmhDTEVOQlFVTTdRVUZGUkRzN08wZEJSMGM3UVVGRFNDeE5RVUZOTEZWQlFWVXNVMEZCVXl4RFFVRkRMRWxCUVZrN1NVRkRjRU1zU1VGQlNTeEpRVUZKTEVkQlFVY3NRMEZCUXl4RFFVRkRPMGxCUTJJc1NVRkJTU3hIUVVGSExFZEJRVWNzUTBGQlF5eERRVUZETzBsQlJWb3NTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXl4TlFVRk5MRVZCUVVVc1JVRkJSU3hEUVVGRE8xRkJRMnhETEVsQlFVa3NTVUZCU1N4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRmJFSXNTVUZCU1N4SlFVRkpMRWxCUVVrc1EwRkJReXhOUVVGTkxFTkJRVU03U1VGRmNFSXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXl4TlFVRk5MRVZCUVVVc1JVRkJSU3hEUVVGRE8xRkJRMnhETEVkQlFVY3NTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eEpRVUZKTEVOQlFVTXNRMEZCUXp0SlFVVTNReXhIUVVGSExFZEJRVWNzU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4SFFVRkhMRWRCUVVjc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF5eERRVUZETzBsQlJXNURMRXRCUVVzc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNc1RVRkJUU3hGUVVGRkxFVkJRVVVzUTBGQlF6dFJRVU5zUXl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1NVRkJTU3hEUVVGRExFZEJRVWNzUjBGQlJ5eERRVUZETzBsQlJXNURMRTlCUVU4c1NVRkJTU3hEUVVGRE8wRkJRMlFzUTBGQlF6dEJRVVZFT3pzN096dEhRVXRITzBGQlEwZ3NUVUZCVFN4VlFVRlZMR0ZCUVdFc1EwRkJReXhEUVVGUkxFVkJRVVVzUTBGQlVUdEpRVU01UXl4TlFVRk5MRWxCUVVrc1IwRkJSeXhKUVVGSkxFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0SlFVTjRRaXhQUVVGUExFdEJRVXNzUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFMUJRVTBzUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RlFVRkZMRU5CUVVNc1EwRkJReXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhOUVVGTkxFVkJRVVVzUTBGQlF5eERRVUZETzBGQlEzSkZMRU5CUVVNaUxDSnpiM1Z5WTJWelEyOXVkR1Z1ZENJNld5SnBiWEJ2Y25RZ2UwMWhkSEpwZUN3Z1ZtVmpkRzl5TENCRGIyOXlaR2x1WVhSbGN5d2dWbVZqZEc5eWN5d2dSR2x6ZEdGdVkyVk5aWFJ5YVdOOUlHWnliMjBnSnk0dmRIbHdaUzFrWldOc1lYSmhkR2x2Ym5Nbk8xeHVhVzF3YjNKMElIdHlZVzVrYjIxR2JHOWhkQ3dnY21GdVpHOXRTVzUwZlNCbWNtOXRJQ2N1TDNKaGJtUnZiU2M3WEc1Y2JpOHFLbHh1SUNvZ1FYTnpaWEowY3lCaElHTnZibVJwZEdsdmJpQmllU0IwYUhKdmQybHVaeUJoYmlCRmNuSnZjaTVjYmlBcVhHNGdLaUJBWlhod2IzSjBYRzRnS2lCQWNHRnlZVzBnZTJKdmIyeGxZVzU5SUZ0amIyNWthWFJwYjI0OVptRnNjMlZkSUVOdmJtUnBkR2x2YmlCMGJ5QmhjM05sY25RdVhHNGdLaUJBY0dGeVlXMGdlM04wY21sdVozMGdXMjFsYzNOaFoyVTlKMEZ6YzJWeWRHbHZiaUJsY25KdmNpNG5YU0JOWlhOellXZGxJSFJ2SUc5MWRIQjFkQzVjYmlBcUlFQjBhSEp2ZDNNZ2UwVnljbTl5ZlZ4dUlDb3ZYRzVsZUhCdmNuUWdablZ1WTNScGIyNGdZWE56WlhKMEtHTnZibVJwZEdsdmJqb2dZbTl2YkdWaGJpQTlJR1poYkhObExDQnRaWE56WVdkbE9pQnpkSEpwYm1jZ1BTQW5RWE56WlhKMGFXOXVJR1Z5Y205eUxpY3BJSHRjYmlBZ2FXWWdLQ0ZqYjI1a2FYUnBiMjRwWEc0Z0lDQWdkR2h5YjNjZ2JtVjNJRVZ5Y205eUtHMWxjM05oWjJVcE8xeHVmVnh1WEc0dktpcGNiaUFxSUVOeVpXRjBaWE1nYm1WM0lIUjNieTFrYVcxbGJuTnBiMjVoYkNCaGNuSmhlU0JoYm1RZ1ptbHNiSE1nYVhRZ2QybDBhQ0IwYUdVZ2RtRnNkV1VnWjJsMlpXNHVYRzRnS2x4dUlDb2dRSEJoY21GdElIdHVkVzFpWlhKOUlHUnBiV1Z1YzJsdmJqRWdWR2hsSUdacGNuTjBJR1JwYldWdWMybHZiaUJ2WmlCMGFHVWdZMjl2Y21ScGJtRjBaWE1nS0c1MWJXSmxjaUJ2WmlCeWIzZHpLUzVjYmlBcUlFQndZWEpoYlNCN2JuVnRZbVZ5ZlNCa2FXMWxibk5wYjI0eUlGUm9aU0J6WldOdmJtUWdaR2x0Wlc1emFXOXVJRzltSUhSb1pTQmpiMjl5WkdsdVlYUmxjeUFvYm5WdFltVnlJRzltSUdOdmJIVnRibk1wTGx4dUlDb2dRSEJoY21GdElIdHVkVzFpWlhKOUlGdG1hV3hzUFRCZElFRWdkbUZzZFdVZ2RHOGdabWxzYkNCMGFHVWdZMjl2Y21ScGJtRjBaWE1nZDJsMGFDNWNiaUFxSUVCeVpYUjFjbTRnZTBOdmIzSmthVzVoZEdWemZTQkJJSFIzYnkxa2FXMWxibk5wYjI1aGJDQm1hV3hzWldRZ2QybDBhQ0IwYUdVZ2RtRnNkV1VnWjJsMlpXNHVYRzRnS2lCQWRHOWtieUJOYVdkb2RDQmlaU0J6Ykc5M0lITnBibU5sSUhWelpXUWdRWEp5WVhrdWJXRndMaUJRY205aVlXSnNlU0J1WldWa2N5QndaWEptYjNKdFlXNWpaU0J5WlhacGMybHZiaTVjYmlBcUwxeHVablZ1WTNScGIyNGdhVzVwZEVOdmIzSmthVzVoZEdWektHUnBiV1Z1YzJsdmJqRTZJRzUxYldKbGNpd2daR2x0Wlc1emFXOXVNam9nYm5WdFltVnlMQ0JtYVd4c09pQnVkVzFpWlhJZ1BTQXdLVG9nUTI5dmNtUnBibUYwWlhNZ2UxeHVJQ0J5WlhSMWNtNGdibVYzSUVGeWNtRjVLR1JwYldWdWMybHZiakVwTG1acGJHd29abWxzYkNrdWJXRndLQ2dwSUQwK0lDaHVaWGNnVm1WamRHOXlLR1JwYldWdWMybHZiaklwTG1acGJHd29abWxzYkNrcEtUdGNibjFjYmx4dUx5b3FYRzRnS2lCVWNtRnVjM0J2YzJVZ2JXRjBjbWw0TGx4dUlDcGNiaUFxSUVCbGVIQnZjblJjYmlBcUlFQndZWEpoYlNCN1RXRjBjbWw0ZlNCdFlYUnlhWGdnVkdobElHMWhkSEpwZUNCMGJ5QmlaU0IwY21GdWMzQnZjMlZrTGx4dUlDb2dRSEpsZEhWeWJpQjdUV0YwY21sNGZTQlVjbUZ1YzNCdmMyVmtJRzFoZEhKcGVDNWNiaUFxSUVCMGIyUnZJRTFwWjJoMElHSmxJSE5zYjNjZ2MybHVZMlVnZFhObFpDQkJjbkpoZVM1dFlYQXVJRkJ5YjJKaFlteDVJRzVsWldSeklIQmxjbVp2Y20xaGJtTmxJSEpsZG1semFXOXVMbHh1SUNvdlhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z2RISmhibk53YjNObFRXRjBjbWw0S0cxaGRISnBlRG9nVFdGMGNtbDRLVG9nVFdGMGNtbDRJSHRjYmlBZ2NtVjBkWEp1SUc1bGR5QkJjbkpoZVNodFlYUnlhWGhiTUYwdWJHVnVaM1JvS1M1bWFXeHNLREFwWEc0Z0lDQWdMbTFoY0Nnb1h5d2dhU2tnUFQ0Z0tHNWxkeUJXWldOMGIzSW9iV0YwY21sNExteGxibWQwYUNrdVptbHNiQ2d3S1M1dFlYQW9LRjhzSUdvcElEMCtJQ2h0WVhSeWFYaGJhbDFiYVYwcEtTa3BPMXh1ZlZ4dVhHNHZLaXBjYmlBcUlFRmtaSE1nZEhkdklIWmxZM1J2Y25NZ2QybDBhQ0IwYUdVZ2MyVmpiMjVrSUc5dVpTQjBieUJpWlNCdGRXeDBhWEJzYVdWa0lHSjVJSFJvWlNCbmFYWmxiaUJ5WVhScGJ5NWNiaUFxWEc0Z0tpQkFaWGh3YjNKMFhHNGdLaUJBY0dGeVlXMGdlMVpsWTNSdmNuMGdjQ0JVYUdVZ1ptbHljM1FnZG1WamRHOXlJSFJ2SUdGa1pDNWNiaUFxSUVCd1lYSmhiU0I3Vm1WamRHOXlmU0J4SUZSb1pTQnpaV052Ym1RZ2RtVmpkRzl5SUhSdklHRmtaQzVjYmlBcUlFQndZWEpoYlNCN2JuVnRZbVZ5ZlNCYmJYVnNkR2x3YkdsbGNqMHhYU0JCSUcxMWJIUnBjR3hwWlhJZ2RHOGdZbVVnZFhObFpDQmlaV1p2Y21VZ2RHaGxJSE5sWTI5dVpDQjJaV04wYjNJZ2FYTWdZV1JrWldRdVhHNGdLaUJBY21WMGRYSnVJSHRXWldOMGIzSjlJRTVsZHlCMlpXTjBiM0lnWTI5dWRHRnBibVZrSUhSb1pTQnlaWE4xYkhRZ2IyWWdiM0JsY21GMGFXOXVJSEFyYlhWc2RHbHdiR2xsY2lweExseHVJQ292WEc1bGVIQnZjblFnWm5WdVkzUnBiMjRnZG1WamRHOXlRV1JrS0hBNklGWmxZM1J2Y2l3Z2NUb2dWbVZqZEc5eUxDQnRkV3gwYVhCc2FXVnlPaUJ1ZFcxaVpYSWdQU0F4S1RvZ1ZtVmpkRzl5SUh0Y2JpQWdZMjl1YzNRZ2JrbDBaVzF6SUQwZ2NDNXNaVzVuZEdnN1hHNWNiaUFnWVhOelpYSjBLRzVKZEdWdGN5QTlQU0J4TG14bGJtZDBhQ3dnSjFabFkzUnZjaUJzWlc1bmRHaHpJR1J2SUc1dmRDQnRZWFJqYUM0bktUdGNibHh1SUNCamIyNXpkQ0IwYjNSaGJDQTlJRzVsZHlCV1pXTjBiM0lvYmtsMFpXMXpLVHRjYmx4dUlDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJSEF1YkdWdVozUm9PeUFySzJrcFhHNGdJQ0FnZEc5MFlXeGJhVjBnUFNCd1cybGRJQ3NnYlhWc2RHbHdiR2xsY2lBcUlIRmJhVjA3WEc1Y2JpQWdjbVYwZFhKdUlIUnZkR0ZzTzF4dWZWeHVYRzR2S2lwY2JpQXFJRk4xYlhNZ2RHaGxJSFpsWTNSdmNpZHpJR2wwWlcxekxseHVJQ3BjYmlBcUlFQndZWEpoYlNCN1ZtVmpkRzl5ZlNCMklGUm9aU0IyWldOMGIzSWdkRzhnWW1VZ2MzVnRiV1ZrTGx4dUlDb2dRSEpsZEhWeWJpQjdiblZ0WW1WeWZTQlVhR1VnZG1WamRHOXlKM01nYVhSbGJYTWdjM1Z0TGx4dUlDb3ZYRzVtZFc1amRHbHZiaUJwZEdWdGMxTjFiU2gyT2lCV1pXTjBiM0lwT2lCdWRXMWlaWElnZTF4dUlDQnNaWFFnZEc5MFlXd2dQU0F3TzF4dVhHNGdJR1p2Y2lBb2JHVjBJR2tnUFNBd095QnBJRHdnZGk1c1pXNW5kR2c3SUNzcmFTbGNiaUFnSUNCMGIzUmhiQ0FyUFNCMlcybGRPMXh1WEc0Z0lISmxkSFZ5YmlCMGIzUmhiRHRjYm4xY2JseHVMeW9xWEc0Z0tpQlRkWEZoY21WeklIUm9aU0IyWldOMGIzSW5jeUJwZEdWdGN5NWNiaUFxWEc0Z0tpQkFjR0Z5WVcwZ2UxWmxZM1J2Y24wZ2RpQlVhR1VnZG1WamRHOXlJSFJ2SUhOeGRXRnlaUzVjYmlBcUlFQnlaWFIxY200Z2UxWmxZM1J2Y24wZ1FTQnVaWGNnZG1WamRHOXlJR052Ym5SaGFXNXBibWNnZEdobElHOXlhV2RwYm1Gc0ozTWdhWFJsYlhNZ2MzRjFZWEpsWkM1Y2JpQXFMMXh1Wm5WdVkzUnBiMjRnZG1WamRHOXlVM0YxWVhKbEtIWTZJRlpsWTNSdmNpazZJRlpsWTNSdmNpQjdYRzRnSUdOdmJuTjBJRzVKZEdWdGN5QTlJSFl1YkdWdVozUm9PMXh1SUNCamIyNXpkQ0IwYjNSaGJDQTlJRzVsZHlCV1pXTjBiM0lvYmtsMFpXMXpLVHRjYmx4dUlDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJSFl1YkdWdVozUm9PeUFySzJrcFhHNGdJQ0FnZEc5MFlXeGJhVjBnUFNCMlcybGRJQ29nZGx0cFhUdGNibHh1SUNCeVpYUjFjbTRnZEc5MFlXdzdYRzU5WEc1Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCMlpXTjBiM0pNWlc1bmRHZ29kam9nVm1WamRHOXlLVG9nYm5WdFltVnlJSHRjYmlBZ2JHVjBJSE54Y2xOMWJUb2diblZ0WW1WeUlEMGdNRHRjYmlBZ1ptOXlJQ2hzWlhRZ2FUb2diblZ0WW1WeUlEMGdNRHNnYVNBOElIWXViR1Z1WjNSb095QnBLeXNwWEc0Z0lDQWdjM0Z5VTNWdElDczlJSFpiYVYwZ0tpQjJXMmxkTzF4dUlDQnlaWFIxY200Z1RXRjBhQzV6Y1hKMEtITnhjbE4xYlNrN1hHNTlYRzVjYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUIyWldOMGIzSkViM1JRY205a2RXTjBLSFl4T2lCV1pXTjBiM0lzSUhZeU9pQldaV04wYjNJcE9pQnVkVzFpWlhJZ2UxeHVJQ0JwWmlBb2RqRXViR1Z1WjNSb0lDRTlJSFl5TG14bGJtZDBhQ2xjYmlBZ0lDQjBhSEp2ZHlCdVpYY2dSWEp5YjNJb0oxUm9aU0JrYVcxbGJuTnBiMjVoYkdsMGVTQnZaaUIwYUdVZ2RtVmpkRzl5Y3lCdGRYTjBJRzFoZEdOb0p5azdYRzRnSUd4bGRDQndjbTlrT2lCdWRXMWlaWElnUFNBd08xeHVJQ0JtYjNJZ0tHeGxkQ0JwT2lCdWRXMWlaWElnUFNBd095QnBJRHdnZGpFdWJHVnVaM1JvT3lCcEt5c3BYRzRnSUNBZ2NISnZaQ0FyUFNCMk1WdHBYU0FxSUhZeVcybGRPMXh1SUNCeVpYUjFjbTRnY0hKdlpEdGNibjFjYmx4dUx5b3FYRzRnS2lCRGNtVmhkR1Z6SUdFZ2JXRjBjbWw0SUdacGJHeGxaQ0IzYVhSb0lISmhibVJ2YlNCbWJHOWhkR2x1WnlCd2IybHVkQ0IyWVd4MVpYTXVYRzRnS2x4dUlDb2dRR1Y0Y0c5eWRGeHVJQ29nUUhCaGNtRnRJSHR1ZFcxaVpYSjlJR1JwYldWdWMybHZiakVnVkdobElHWnBjbk4wSUdScGJXVnVjMmx2YmlCdlppQjBhR1VnYldGMGNtbDRMbHh1SUNvZ1FIQmhjbUZ0SUh0dWRXMWlaWEo5SUdScGJXVnVjMmx2YmpJZ1ZHaGxJSE5sWTI5dVpDQmthVzFsYm5OcGIyNGdiMllnZEdobElHMWhkSEpwZUM1Y2JpQXFJRUJ3WVhKaGJTQjdiblZ0WW1WeWZTQmJjMk5oYkdVOU1TNWRJRTFoZUNCMllXeDFaU0JuYVhabGJpQmllU0J5WVc1a2IyMGdaMlZ1WlhKaGRHOXlMbHh1SUNvZ1FISmxkSFZ5YmlCN1RXRjBjbWw0ZlNCQklHNWxkeUJ0WVhSeWFYZ2dabWxzYkdWa0lIZHBkR2dnY21GdVpHOXRJR1pzYjJGMGFXNW5JSEJ2YVc1MElDQjJZV3gxWlhNdVhHNGdLaTljYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUJtYVd4c1VtRnVaRzl0VFdGMGNtbDRLR1JwYldWdWMybHZiakU2SUc1MWJXSmxjaXdnWkdsdFpXNXphVzl1TWpvZ2JuVnRZbVZ5TENCelkyRnNaVG9nYm5WdFltVnlJRDBnTVM0cE9pQk5ZWFJ5YVhnZ2UxeHVJQ0JqYjI1emRDQnRZWFJ5YVhnZ1BTQnBibWwwUTI5dmNtUnBibUYwWlhNb1pHbHRaVzV6YVc5dU1Td2daR2x0Wlc1emFXOXVNaWs3WEc1Y2JpQWdabTl5SUNoc1pYUWdhU0E5SURBN0lHa2dQQ0JrYVcxbGJuTnBiMjR4T3lBcksya3BJSHRjYmlBZ0lDQm1iM0lnS0d4bGRDQnFJRDBnTURzZ2FpQThJR1JwYldWdWMybHZiakk3SUNzcmFpbGNiaUFnSUNBZ0lHMWhkSEpwZUZ0cFhWdHFYU0E5SUhKaGJtUnZiVVpzYjJGMEtITmpZV3hsS1R0Y2JpQWdmVnh1SUNCeVpYUjFjbTRnYldGMGNtbDRPMXh1ZlZ4dVhHNHZLaXBjYmlBcUlFTmhiR04xYkdGMFpYTWdSWFZqYkdsa1pXRnVJR1JwYzNSaGJtTmxJR0psZEhkbFpXNGdkSGR2SUhabFkzUnZjbk11WEc0Z0tseHVJQ29nUUdWNGNHOXlkRnh1SUNvZ1FIQmhjbUZ0SUh0V1pXTjBiM0o5SUhBZ1ZHaGxJR1pwY25OMElIWmxZM1J2Y2k1Y2JpQXFJRUJ3WVhKaGJTQjdWbVZqZEc5eWZTQnhJRlJvWlNCelpXTnZibVFnZG1WamRHOXlMbHh1SUNvZ1FISmxkSFZ5YmlCN2JuVnRZbVZ5ZlNCRmRXTnNhV1JsWVc0Z1pHbHpkR0Z1WTJVZ1ltVjBkMlZsYmlCMGFHVWdaMmwyWlc0Z2RtVmpkRzl5Y3k1Y2JpQXFMMXh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJR05oYkdOMWJHRjBaVVYxWTJ4cFpHVmhia1JwYzNSaGJtTmxLSEE2SUZabFkzUnZjaXdnY1RvZ1ZtVmpkRzl5S1RvZ2JuVnRZbVZ5SUh0Y2JpQWdZMjl1YzNRZ1pHbG1aaUE5SUhabFkzUnZja0ZrWkNod0xDQnhMQ0F0TVNrN1hHNGdJR052Ym5OMElITnhaR2xtWmlBOUlIWmxZM1J2Y2xOeGRXRnlaU2hrYVdabUtUdGNiaUFnWTI5dWMzUWdjM0ZrYVdabVUzVnRiU0E5SUdsMFpXMXpVM1Z0S0hOeFpHbG1aaWs3WEc0Z0lISmxkSFZ5YmlCTllYUm9Mbk54Y25Rb2MzRmthV1ptVTNWdGJTazdYRzU5WEc1Y2JpOHFLbHh1SUNvZ1EzSmxZWFJsY3lCaElHUnBjM1JoYm1ObElHMWhkSEpwZUNCMWMybHVaeUJoSUdOMWMzUnZiU0JrYVhOMFlXNWpaU0JtZFc1amRHbHZiaTVjYmlBcVhHNGdLaUJBWlhod2IzSjBYRzRnS2lCQWNHRnlZVzBnZTFabFkzUnZjbk45SUdSaGRHRWdTVzV3ZFhRZ2RtVmpkRzl5Y3lCMGJ5QmpZV3hqZFd4aGRHVWdaR2x6ZEdGdVkyVnpMbHh1SUNvZ1FIQmhjbUZ0SUh0RWFYTjBZVzVqWlUxbGRISnBZMzBnWkdsemRHRnVZMlVnUTNWemRHOXRJR1JwYzNSaGJtTmxJR1oxYm1OMGFXOXVMbHh1SUNvZ1FISmxkSFZ5YmlCN1RXRjBjbWw0ZlNCRFlXeGpkV3hoZEdWa0lHTjFjM1J2YlNCa2FYTjBZVzVqWlNCdFlYUnlhWGd1WEc0Z0tpOWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQmpZV3hqUkdsemRHRnVZMlZOWVhSeWFYZ29aR0YwWVRvZ1ZtVmpkRzl5Y3l3Z1pHbHpkR0Z1WTJVNklFUnBjM1JoYm1ObFRXVjBjbWxqS1RvZ1RXRjBjbWw0SUh0Y2JpQWdZMjl1YzNRZ2JrbDBaVzF6SUQwZ1pHRjBZUzVzWlc1bmRHZzdYRzRnSUdOdmJuTjBJRzFoZEhKcGVDQTlJR2x1YVhSRGIyOXlaR2x1WVhSbGN5aHVTWFJsYlhNc0lHNUpkR1Z0Y3l3Z01DazdYRzVjYmlBZ1ptOXlJQ2hzWlhRZ2FTQTlJREE3SUdrZ1BDQnVTWFJsYlhNN0lDc3JhU2tnZTF4dUlDQWdJR1p2Y2lBb2JHVjBJR29nUFNCcElDc2dNVHNnYWlBOElHNUpkR1Z0Y3pzZ0t5dHFLU0I3WEc0Z0lDQWdJQ0JqYjI1emRDQmtPaUJ1ZFcxaVpYSWdQU0FvWkdGMFlWdHBYU0E5UFNCdWRXeHNLU0I4ZkNBb1pHRjBZVnRxWFNBOVBTQnVkV3hzS1NBL0lEQWdPaUJrYVhOMFlXNWpaU2hrWVhSaFcybGRMQ0JrWVhSaFcycGRLVHRjYmlBZ0lDQWdJRzFoZEhKcGVGdHBYVnRxWFNBOUlHMWhkSEpwZUZ0cVhWdHBYU0E5SUdRN1hHNGdJQ0FnZlZ4dUlDQjlYRzRnSUhKbGRIVnliaUJ0WVhSeWFYZzdYRzU5WEc1Y2JpOHFLbHh1SUNvZ1EzSmxZWFJsY3lCaElHUnBjM1JoYm1ObElHMWhkSEpwZUNCMWMybHVaeUJoSUdOMWMzUnZiU0JrYVhOMFlXNWpaU0JtZFc1amRHbHZiaTVjYmlBcVhHNGdLaUJBWlhod2IzSjBYRzRnS2lCQWNHRnlZVzBnZTFabFkzUnZjbk45SUdSaGRHRWdTVzV3ZFhRZ2RtVmpkRzl5Y3lCMGJ5QmpZV3hqZFd4aGRHVWdaR2x6ZEdGdVkyVnpMbHh1SUNvZ1FIQmhjbUZ0SUh0RWFYTjBZVzVqWlUxbGRISnBZMzBnWkdsemRHRnVZMlVnUTNWemRHOXRJR1JwYzNSaGJtTmxJR1oxYm1OMGFXOXVMbHh1SUNvZ1FISmxkSFZ5YmlCN1RXRjBjbWw0ZlNCRFlXeGpkV3hoZEdWa0lHTjFjM1J2YlNCa2FYTjBZVzVqWlNCdFlYUnlhWGd1WEc0Z0tpOWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQmpZV3hqVG05eWJXRnNhWHBsWkVScGMzUmhibU5sVFdGMGNtbDRLR1JoZEdFNklGWmxZM1J2Y25Nc0lHUnBjM1JoYm1ObE9pQkVhWE4wWVc1alpVMWxkSEpwWXlrNklFMWhkSEpwZUNCN1hHNGdJR052Ym5OMElHNUpkR1Z0Y3lBOUlHUmhkR0V1YkdWdVozUm9PMXh1SUNCamIyNXpkQ0J0WVhSeWFYZ2dQU0JwYm1sMFEyOXZjbVJwYm1GMFpYTW9ia2wwWlcxekxDQnVTWFJsYlhNc0lEQXBPMXh1SUNCc1pYUWdiV0Y0SUQwZ1RuVnRZbVZ5TGsxSlRsOVdRVXhWUlR0Y2JpQWdiR1YwSUcxcGJpQTlJRTUxYldKbGNpNU5RVmhmVmtGTVZVVTdYRzRnSUdadmNpQW9iR1YwSUdrZ1BTQXdPeUJwSUR3Z2JrbDBaVzF6T3lBcksya3BJSHRjYmlBZ0lDQm1iM0lnS0d4bGRDQnFJRDBnYVRzZ2FpQThJRzVKZEdWdGN6c2dLeXRxS1NCN1hHNGdJQ0FnSUNCamIyNXpkQ0JrT2lCdWRXMWlaWElnUFNBb1pHRjBZVnRwWFNBOVBTQnVkV3hzS1NCOGZDQW9aR0YwWVZ0cVhTQTlQU0J1ZFd4c0lIeDhJR2tnUFQwOUlHb3BJRDhnTUNBNklHUnBjM1JoYm1ObEtHUmhkR0ZiYVYwc0lHUmhkR0ZiYWwwcE8xeHVJQ0FnSUNBZ2JXRjBjbWw0VzJsZFcycGRJRDBnYldGMGNtbDRXMnBkVzJsZElEMGdaRHRjYmlBZ0lDQWdJR2xtSUNoa0lENGdiV0Y0S1NCdFlYZ2dQU0JrTzF4dUlDQWdJQ0FnYVdZZ0tHUWdQQ0J0YVc0cElHMXBiaUE5SUdRN1hHNGdJQ0FnZlZ4dUlDQjlYRzRnSUdadmNpQW9iR1YwSUdrZ1BTQXdPeUJwSUR3Z2JrbDBaVzF6T3lBcksya3BJSHRjYmlBZ0lDQm1iM0lnS0d4bGRDQnFJRDBnYVNBcklERTdJR29nUENCdVNYUmxiWE03SUNzcmFpbGNiaUFnSUNBZ0lHMWhkSEpwZUZ0cFhWdHFYU0E5SUcxaGRISnBlRnRxWFZ0cFhTQTlJQ2h0WVhSeWFYaGJhVjFiYWwwZ0xTQnRhVzRwSUM4Z0tHMWhlQ0F0SUcxcGJpazdYRzRnSUgxY2JpQWdjbVYwZFhKdUlHMWhkSEpwZUR0Y2JuMWNibHh1THlvcUlFZGxibVZ5WVhSbGN5QmhjbkpoZVNCbWNtOXRJR0VnY21GdVoyVWdXMkpsWjJsdU95QmxibVJkSUc5eUlGdGlaV2RwYmpzZ1pXNWtLU0JwWmlCbGJtUkZlR05zZFhOcGRtVXVJQ29xTDF4dVpYaHdiM0owSUdaMWJtTjBhVzl1SUdkbGJsSmhibWRsS0dKbFoybHVPaUJ1ZFcxaVpYSXNJR1Z1WkRvZ2JuVnRZbVZ5TENCbGJtUkZlR05zZFhOcGRtVWdQU0JtWVd4elpTazZJRWx1ZERNeVFYSnlZWGtnZTF4dUlDQmpiMjV6ZENCdVNYUmxiWE1nUFNCbGJtUWdMU0JpWldkcGJpQXJJQ2hsYm1SRmVHTnNkWE5wZG1VZ1B5QXdJRG9nTVNrN1hHNGdJR052Ym5OMElITmxjbWxsY3lBOUlHNWxkeUJKYm5Rek1rRnljbUY1S0c1SmRHVnRjeWs3WEc1Y2JpQWdabTl5SUNoc1pYUWdhU0E5SURBN0lHa2dQQ0J1U1hSbGJYTTdJQ3NyYVNsY2JpQWdJQ0J6WlhKcFpYTmJhVjBnUFNCaVpXZHBiaUFySUdrN1hHNWNiaUFnY21WMGRYSnVJSE5sY21sbGN6dGNibjFjYmx4dUx5b3FYRzRnS2lCU1pYUjFjbTV6SUc5eVpHVnlJRzltSUhaaGJIVmxjeUJoY3lCcFppQjBhR1Y1SUdGeVpTQnpiM0owWldRdVhHNGdLbHh1SUNvZ1FHVjRjRzl5ZEZ4dUlDb2dRSEJoY21GdElIdGhibmxiWFgwZ2RtRnNkV1Z6SUVsdWNIVjBJR0Z5Y21GNUxseHVJQ29nUUhCaGNtRnRJSHRpYjI5c1pXRnVmU0JiY21WMlpYSnpaVDFtWVd4elpWMGdWMmhsZEdobGNpQjBieUJ5WlhSMWNtNGdjbVYyWlhKelpXUWdiM0prWlhJdVhHNGdLaUJBY21WMGRYSnVJSHR1ZFcxaVpYSmJYWDBnVkdobElHOXlaR1Z5SUdOdmJYQjFkR1ZrTGx4dUlDb3ZYRzVsZUhCdmNuUWdablZ1WTNScGIyNGdZWEpuVTI5eWRDaDJZV3gxWlhNNklHRnVlVnRkTENCeVpYWmxjbk5sSUQwZ1ptRnNjMlVwT2lCdWRXMWlaWEpiWFNCN1hHNGdJR052Ym5OMElITnZjblJtYmlBOUlISmxkbVZ5YzJVZ1B5QW9ZVG9nWVc1NVcxMHNJR0k2SUdGdWVWdGRLU0E5UGlBb1lsc3dYU0F0SUdGYk1GMHBJRG9nS0dFNklHRnVlVnRkTENCaU9pQmhibmxiWFNrZ1BUNGdLR0ZiTUYwZ0xTQmlXekJkS1R0Y2JpQWdZMjl1YzNRZ1pHVmpiM0lnUFNBb2Rqb2dZVzU1TENCcE9pQnVkVzFpWlhJcElEMCtJRnQyTENCcFhUc2dMeThnYzJWMElHbHVaR1Y0SUhSdklIWmhiSFZsWEc0Z0lHTnZibk4wSUhWdVpHVmpiM0lnUFNBb1lUb2dZVzU1VzEwcElEMCtJR0ZiTVYwN0lDOHZJR3hsWVhabElHOXViSGtnYVc1a1pYaGNiaUFnWTI5dWMzUWdYMkZ5WjNOdmNuUWdQU0FvWVhKeU9pQmhibmxiWFNrZ1BUNGdZWEp5TG0xaGNDaGtaV052Y2lrdWMyOXlkQ2h6YjNKMFptNHBMbTFoY0NoMWJtUmxZMjl5S1R0Y2JpQWdjbVYwZFhKdUlGOWhjbWR6YjNKMEtIWmhiSFZsY3lrN1hHNTlYRzVjYmk4cUtseHVJQ29nVW1WMGRYSnVjeUIwYUdVZ2FXNWtaWGhsY3lCdlppQjBhR1VnYlc5emRDQmthWFpsY25ObElHOWlhbVZqZEhNZ1lXTmpiM0prYVc1bklIUnZJSFJvWlNCa2FYTjBJR1oxYm1OMGFXOXVYRzRnS2lCQWNHRnlZVzBnZTI1MWJXSmxjbjBnYkdWdVozUm9JSFJ2ZEdGc0lHNTFiV0psY2lCdlppQnZZbXBsWTNSelhHNGdLaUJBY0dGeVlXMGdlMjUxYldKbGNuMGdiaUJ1ZFcxaVpYSWdiMllnWkdsMlpYSnpaU0JsYkdWdFpXNTBjeUIwYnlCbWFXNWtYRzRnS2lCQWNHRnlZVzBnZXlocE1Ub2diblZ0WW1WeUxDQnBNam9nYm5WdFltVnlLU0E5UGlCdWRXMWlaWEo5SUdScGMzUWdZU0JtZFc1amRHbHZiaUIzYUdsamFDQmpZV3hqZFd4aGRHVnpJR1JwYzNSaGJtTmxJR0psZEhkbFpXNWNiaUFxSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjBkMjhnYjJKcVpXTjBjeUIxYzJsdVp5QjBhR1ZwY2lCcGJtUmxlR1Z6WEc0Z0tpQkFjbVYwZFhKdWN5QjdiblZ0WW1WeVcxMTlJRlJvWlNCcGJtUmxlR1Z6SUc5bUlIUm9aU0J0YjNOMElHUnBkbVZ5YzJVZ2IySnFaV04wYzF4dUlDb3ZYRzVsZUhCdmNuUWdablZ1WTNScGIyNGdaMlYwUkdsMlpYSnpaVk4xWW5ObGRDaHNaVzVuZEdnNklHNTFiV0psY2l3Z2Jqb2diblZ0WW1WeUxDQmthWE4wT2lBb2FURTZJRzUxYldKbGNpd2dhVEk2SUc1MWJXSmxjaWtnUFQ0Z2JuVnRZbVZ5S1RvZ2JuVnRZbVZ5VzEwZ2UxeHVJQ0JtZFc1amRHbHZiaUJ0WVhoQ2VTaDJZV3gxWlhNNklFbDBaWEpoWW14bFNYUmxjbUYwYjNJOGJuVnRZbVZ5UGl3Z2IzSmtaWEpDZVRvZ0tHazZJRzUxYldKbGNpa2dQVDRnYm5WdFltVnlLU0I3WEc0Z0lDQWdiR1YwSUcxaGVGWmhiSFZsSUQwZ2JuVnNiRHRjYmlBZ0lDQnNaWFFnYldGNFQzSmtaWEpDZVNBOUlHNTFiR3c3WEc1Y2JpQWdJQ0JtYjNJZ0tHTnZibk4wSUdWc1pXMWxiblFnYjJZZ2RtRnNkV1Z6S1NCN1hHNGdJQ0FnSUNCamIyNXpkQ0JsYkdWdFpXNTBUM0prWlhKQ2VTQTlJRzl5WkdWeVFua29aV3hsYldWdWRDazdYRzRnSUNBZ0lDQnBaaUFvYldGNFQzSmtaWEpDZVNBOVBTQnVkV3hzSUh4OElHVnNaVzFsYm5SUGNtUmxja0o1SUQ0Z2JXRjRUM0prWlhKQ2VTa2dlMXh1SUNBZ0lDQWdJQ0J0WVhoV1lXeDFaU0E5SUdWc1pXMWxiblE3WEc0Z0lDQWdJQ0FnSUcxaGVFOXlaR1Z5UW5rZ1BTQmxiR1Z0Wlc1MFQzSmtaWEpDZVR0Y2JpQWdJQ0FnSUgxY2JpQWdJQ0I5WEc0Z0lDQWdjbVYwZFhKdUlHMWhlRlpoYkhWbE8xeHVJQ0I5WEc1Y2JpQWdZMjl1YzNRZ2MzVmljMlYwSUQwZ1czSmhibVJ2YlVsdWRDaHNaVzVuZEdnZ0xTQXhLVjA3WEc0Z0lHTnZibk4wSUdOdmJYQnNaVzFsYm5RZ1BTQnVaWGNnVTJWMEtDazdYRzVjYmlBZ1ptOXlJQ2hzWlhRZ2FTQTlJREE3SUdrZ1BDQnNaVzVuZEdnN0lDc3JhU2tnZTF4dUlDQWdJR2xtSUNnaGMzVmljMlYwTG1sdVkyeDFaR1Z6S0drcEtWeHVJQ0FnSUNBZ1kyOXRjR3hsYldWdWRDNWhaR1FvYVNrN1hHNGdJSDFjYmx4dUlDQjNhR2xzWlNBb2MzVmljMlYwTG14bGJtZDBhQ0E4SUc0cElIdGNiaUFnSUNCamIyNXpkQ0JwWkhnZ1BTQnRZWGhDZVNoY2JpQWdJQ0FnSUdOdmJYQnNaVzFsYm5RdWRtRnNkV1Z6S0NrZ1lYTWdTWFJsY21GaWJHVkpkR1Z5WVhSdmNqeHVkVzFpWlhJK0xGeHVJQ0FnSUNBZ0tHa3BJRDArSUUxaGRHZ3ViV2x1TG1Gd2NHeDVLRTFoZEdnc0lITjFZbk5sZEM1dFlYQW9ablZ1WTNScGIyNG9kbUZzTENCcGJtUmxlQ2tnZTF4dUlDQWdJQ0FnSUNCeVpYUjFjbTRnWkdsemRDaHBMQ0IyWVd3cE8xeHVJQ0FnSUNBZ2ZTa3BLVHRjYmlBZ0lDQnBaaUFvYVdSNEtTQjdYRzRnSUNBZ0lDQnpkV0p6WlhRdWNIVnphQ2hwWkhncE8xeHVJQ0FnSUNBZ1kyOXRjR3hsYldWdWRDNWtaV3hsZEdVb2FXUjRLVHRjYmlBZ0lDQjlYRzRnSUgxY2JpQWdjbVYwZFhKdUlITjFZbk5sZER0Y2JuMWNibHh1THlvcVhHNGdLaUJTWlhSMWNtNXpJRzV2Y20xaGJHbDZaV1FnZG1WamRHOXlYRzRnS2lCQWNHRnlZVzBnZTFabFkzUnZjbjBnWkdGMFlTQnVkVzFsY21sallXd2dZWEp5WVhsY2JpQXFMMXh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJRzV2Y20xaGJHbDZaU2hrWVhSaE9pQldaV04wYjNJcE9pQldaV04wYjNJZ2UxeHVJQ0JzWlhRZ2JXVmhiaUE5SURBN1hHNGdJR3hsZENCemRHUWdQU0F3TzF4dVhHNGdJR1p2Y2lBb2JHVjBJR2tnUFNBd095QnBJRHdnWkdGMFlTNXNaVzVuZEdnN0lDc3JhU2xjYmlBZ0lDQnRaV0Z1SUNzOUlHUmhkR0ZiYVYwN1hHNWNiaUFnYldWaGJpQXZQU0JrWVhSaExteGxibWQwYUR0Y2JseHVJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Ec2dhU0E4SUdSaGRHRXViR1Z1WjNSb095QXJLMmtwWEc0Z0lDQWdjM1JrSUNzOUlDaGtZWFJoVzJsZElDMGdiV1ZoYmlrZ0tpQW9aR0YwWVZ0cFhTQXRJRzFsWVc0cE8xeHVYRzRnSUhOMFpDQTlJRTFoZEdndWMzRnlkQ2h6ZEdRZ0x5QmtZWFJoTG14bGJtZDBhQ2s3WEc1Y2JpQWdabTl5SUNoc1pYUWdhU0E5SURBN0lHa2dQQ0JrWVhSaExteGxibWQwYURzZ0t5dHBLVnh1SUNBZ0lHUmhkR0ZiYVYwZ1BTQW9aR0YwWVZ0cFhTQXRJRzFsWVc0cElDOGdjM1JrTzF4dVhHNGdJSEpsZEhWeWJpQmtZWFJoTzF4dWZWeHVYRzR2S2lwY2JpQXFJRVpwYm1SeklITmxkQ0JrYVdabVpYSmxibU5sSUdKbGRIZGxaVzRnZEhkdklHeHBjM1J6TGx4dUlDb2dRSEJoY21GdElIdGhibmxiWFgwZ1lTQlVhR1VnWm1seWMzUWdiR2x6ZEM1Y2JpQXFJRUJ3WVhKaGJTQjdZVzU1VzExOUlHSWdWR2hsSUhObFkyOXVaQ0JzYVhOMExseHVJQ29nUUhKbGRIVnliaUI3WVc1NVcxMTlYRzRnS2k5Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCelpYUkVhV1ptWlhKbGJtTmxLR0U2SUdGdWVWdGRMQ0JpT2lCaGJubGJYU2s2SUdGdWVWdGRJSHRjYmlBZ1kyOXVjM1FnWWxObGRDQTlJRzVsZHlCVFpYUW9ZaWs3WEc0Z0lISmxkSFZ5YmlCQmNuSmhlUzVtY205dEtHNWxkeUJUWlhRb1lTNW1hV3gwWlhJb0tIZ3BJRDArSUNGaVUyVjBMbWhoY3loNEtTa3BMblpoYkhWbGN5Z3BLVHRjYm4xY2JpSmRmUT09Il0sIm5hbWVzIjpbIlN0cmluZ01ldHJpY3NOYW1lcyIsIlZlY3Rvck1ldHJpY3NOYW1lcyIsIkJpdEFycmF5TWV0cmljc05hbWVzIiwiRGlzdGFuY2VNZXRyaWNzU3ViamVjdHMiLCJOdW1iZXJNZXRyaWNzTmFtZXMiLCJjYWxjdWxhdGVFdWNsaWRlYW5EaXN0YW5jZSIsInAiLCJxIiwic3FkaWZmU3VtbSIsInYiLCJ0b3RhbCIsImkiLCJsZW5ndGgiLCJpdGVtc1N1bSIsIm5JdGVtcyIsInZlY3RvclNxdWFyZSIsIm11bHRpcGxpZXIiLCJjb25kaXRpb24iLCJtZXNzYWdlIiwiRXJyb3IiLCJhc3NlcnQiLCJ2ZWN0b3JBZGQiLCJNYXRoIiwic3FydCJdLCJzb3VyY2VSb290IjoiIn0=
1
+ "use strict";(self.webpackChunkpeptides=self.webpackChunkpeptides||[]).push([[521],{40:(n,e,t)=>{var o,r,i,c,u;t.d(e,{CF:()=>r,Qe:()=>c,W:()=>o,Yc:()=>u,gk:()=>i}),function(n){n.Levenshtein="Levenshtein",n.JaroWinkler="Jaro-Winkler",n.Manhattan="Manhattan"}(o||(o={})),function(n){n.Euclidean="Euclidean"}(r||(r={})),function(n){n.Tanimoto="Tanimoto",n.Dice="Dice",n.Asymmetric="Asymmetric",n.BraunBlanquet="Braun-Blanquet",n.Cosine="Cosine",n.Kulczynski="Kulczynski",n.McConnaughey="Mc-Connaughey",n.RogotGoldberg="Rogot-Goldberg",n.Russel="Russel",n.Sokal="Sokal",n.Hamming="Hamming",n.Euclidean="Euclidean"}(i||(i={})),function(n){n.Vector="Vector",n.String="String",n.BitArray="BitArray",n.MacroMolecule="MacroMolecule",n.Number="Number"}(c||(c={})),function(n){n.NumericDistance="NumericDistance"}(u||(u={}))},850:(n,e,t)=>{t.d(e,{dP:()=>r});var o=t(659);function r(n,e){const t=function(n){let e=0;for(let t=0;t<n.length;++t)e+=n[t];return e}(function(n){const e=n.length,t=new o.OW(e);for(let e=0;e<n.length;++e)t[e]=n[e]*n[e];return t}(function(n,e,t=1){const r=n.length;!function(n=!1,e="Assertion error."){if(!n)throw new Error(e)}(r==e.length,"Vector lengths do not match.");const i=new o.OW(r);for(let o=0;o<n.length;++o)i[o]=n[o]+t*e[o];return i}(n,e,-1)));return Math.sqrt(t)}}}]);
2
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNTIxLmpzIiwibWFwcGluZ3MiOiJpR0FBTyxJQUFJQSxFQU1BQyxFQUlBQyxFQWVBQyxFQVFBQyxFLHFEQWhDWCxTQUFXSixHQUNQQSxFQUFnQyxZQUFJLGNBQ3BDQSxFQUFnQyxZQUFJLGVBQ3BDQSxFQUE4QixVQUFJLFdBQ3JDLENBSkQsQ0FJR0EsSUFBdUJBLEVBQXFCLENBQUMsSUFFaEQsU0FBV0MsR0FDUEEsRUFBOEIsVUFBSSxXQUNyQyxDQUZELENBRUdBLElBQXVCQSxFQUFxQixDQUFDLElBRWhELFNBQVdDLEdBQ1BBLEVBQStCLFNBQUksV0FDbkNBLEVBQTJCLEtBQUksT0FDL0JBLEVBQWlDLFdBQUksYUFDckNBLEVBQW9DLGNBQUksaUJBQ3hDQSxFQUE2QixPQUFJLFNBQ2pDQSxFQUFpQyxXQUFJLGFBQ3JDQSxFQUFtQyxhQUFJLGdCQUN2Q0EsRUFBb0MsY0FBSSxpQkFDeENBLEVBQTZCLE9BQUksU0FDakNBLEVBQTRCLE1BQUksUUFDaENBLEVBQThCLFFBQUksVUFDbENBLEVBQWdDLFVBQUksV0FDdkMsQ0FiRCxDQWFHQSxJQUF5QkEsRUFBdUIsQ0FBQyxJQUVwRCxTQUFXQyxHQUNQQSxFQUFnQyxPQUFJLFNBQ3BDQSxFQUFnQyxPQUFJLFNBQ3BDQSxFQUFrQyxTQUFJLFdBQ3RDQSxFQUF1QyxjQUFJLGdCQUMzQ0EsRUFBZ0MsT0FBSSxRQUN2QyxDQU5ELENBTUdBLElBQTRCQSxFQUEwQixDQUFDLElBRTFELFNBQVdDLEdBQ1BBLEVBQW9DLGdCQUFJLGlCQUMzQyxDQUZELENBRUdBLElBQXVCQSxFQUFxQixDQUFDLEcsK0NDbUZ6QyxTQUFTQyxFQUEyQkMsRUFBR0MsR0FDMUMsTUFFTUMsRUE3RFYsU0FBa0JDLEdBQ2QsSUFBSUMsRUFBUSxFQUNaLElBQUssSUFBSUMsRUFBSSxFQUFHQSxFQUFJRixFQUFFRyxTQUFVRCxFQUM1QkQsR0FBU0QsRUFBRUUsR0FDZixPQUFPRCxDQUNYLENBd0R1QkcsQ0FqRHZCLFNBQXNCSixHQUNsQixNQUFNSyxFQUFTTCxFQUFFRyxPQUNYRixFQUFRLElBQUksS0FBT0ksR0FDekIsSUFBSyxJQUFJSCxFQUFJLEVBQUdBLEVBQUlGLEVBQUVHLFNBQVVELEVBQzVCRCxFQUFNQyxHQUFLRixFQUFFRSxHQUFLRixFQUFFRSxHQUN4QixPQUFPRCxDQUNYLENBMENtQkssQ0ExRVosU0FBbUJULEVBQUdDLEVBQUdTLEVBQWEsR0FDekMsTUFBTUYsRUFBU1IsRUFBRU0sUUF0Q2QsU0FBZ0JLLEdBQVksRUFBT0MsRUFBVSxvQkFDaEQsSUFBS0QsRUFDRCxNQUFNLElBQUlFLE1BQU1ELEVBQ3hCLENBb0NJRSxDQUFPTixHQUFVUCxFQUFFSyxPQUFRLGdDQUMzQixNQUFNRixFQUFRLElBQUksS0FBT0ksR0FDekIsSUFBSyxJQUFJSCxFQUFJLEVBQUdBLEVBQUlMLEVBQUVNLFNBQVVELEVBQzVCRCxFQUFNQyxHQUFLTCxFQUFFSyxHQUFLSyxFQUFhVCxFQUFFSSxHQUNyQyxPQUFPRCxDQUNYLENBa0VpQlcsQ0FBVWYsRUFBR0MsR0FBSSxLQUc5QixPQUFPZSxLQUFLQyxLQUFLZixFQUNyQixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGVwdGlkZXMvLi9ub2RlX21vZHVsZXMvQGRhdGFncm9rLWxpYnJhcmllcy9tbC9zcmMvdHlwZWQtbWV0cmljcy9jb25zdHMuanMiLCJ3ZWJwYWNrOi8vcGVwdGlkZXMvLi9ub2RlX21vZHVsZXMvQGRhdGFncm9rLWxpYnJhcmllcy91dGlscy9zcmMvdmVjdG9yLW9wZXJhdGlvbnMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHZhciBTdHJpbmdNZXRyaWNzTmFtZXM7XG4oZnVuY3Rpb24gKFN0cmluZ01ldHJpY3NOYW1lcykge1xuICAgIFN0cmluZ01ldHJpY3NOYW1lc1tcIkxldmVuc2h0ZWluXCJdID0gXCJMZXZlbnNodGVpblwiO1xuICAgIFN0cmluZ01ldHJpY3NOYW1lc1tcIkphcm9XaW5rbGVyXCJdID0gXCJKYXJvLVdpbmtsZXJcIjtcbiAgICBTdHJpbmdNZXRyaWNzTmFtZXNbXCJNYW5oYXR0YW5cIl0gPSBcIk1hbmhhdHRhblwiO1xufSkoU3RyaW5nTWV0cmljc05hbWVzIHx8IChTdHJpbmdNZXRyaWNzTmFtZXMgPSB7fSkpO1xuZXhwb3J0IHZhciBWZWN0b3JNZXRyaWNzTmFtZXM7XG4oZnVuY3Rpb24gKFZlY3Rvck1ldHJpY3NOYW1lcykge1xuICAgIFZlY3Rvck1ldHJpY3NOYW1lc1tcIkV1Y2xpZGVhblwiXSA9IFwiRXVjbGlkZWFuXCI7XG59KShWZWN0b3JNZXRyaWNzTmFtZXMgfHwgKFZlY3Rvck1ldHJpY3NOYW1lcyA9IHt9KSk7XG5leHBvcnQgdmFyIEJpdEFycmF5TWV0cmljc05hbWVzO1xuKGZ1bmN0aW9uIChCaXRBcnJheU1ldHJpY3NOYW1lcykge1xuICAgIEJpdEFycmF5TWV0cmljc05hbWVzW1wiVGFuaW1vdG9cIl0gPSBcIlRhbmltb3RvXCI7XG4gICAgQml0QXJyYXlNZXRyaWNzTmFtZXNbXCJEaWNlXCJdID0gXCJEaWNlXCI7XG4gICAgQml0QXJyYXlNZXRyaWNzTmFtZXNbXCJBc3ltbWV0cmljXCJdID0gXCJBc3ltbWV0cmljXCI7XG4gICAgQml0QXJyYXlNZXRyaWNzTmFtZXNbXCJCcmF1bkJsYW5xdWV0XCJdID0gXCJCcmF1bi1CbGFucXVldFwiO1xuICAgIEJpdEFycmF5TWV0cmljc05hbWVzW1wiQ29zaW5lXCJdID0gXCJDb3NpbmVcIjtcbiAgICBCaXRBcnJheU1ldHJpY3NOYW1lc1tcIkt1bGN6eW5za2lcIl0gPSBcIkt1bGN6eW5za2lcIjtcbiAgICBCaXRBcnJheU1ldHJpY3NOYW1lc1tcIk1jQ29ubmF1Z2hleVwiXSA9IFwiTWMtQ29ubmF1Z2hleVwiO1xuICAgIEJpdEFycmF5TWV0cmljc05hbWVzW1wiUm9nb3RHb2xkYmVyZ1wiXSA9IFwiUm9nb3QtR29sZGJlcmdcIjtcbiAgICBCaXRBcnJheU1ldHJpY3NOYW1lc1tcIlJ1c3NlbFwiXSA9IFwiUnVzc2VsXCI7XG4gICAgQml0QXJyYXlNZXRyaWNzTmFtZXNbXCJTb2thbFwiXSA9IFwiU29rYWxcIjtcbiAgICBCaXRBcnJheU1ldHJpY3NOYW1lc1tcIkhhbW1pbmdcIl0gPSBcIkhhbW1pbmdcIjtcbiAgICBCaXRBcnJheU1ldHJpY3NOYW1lc1tcIkV1Y2xpZGVhblwiXSA9IFwiRXVjbGlkZWFuXCI7XG59KShCaXRBcnJheU1ldHJpY3NOYW1lcyB8fCAoQml0QXJyYXlNZXRyaWNzTmFtZXMgPSB7fSkpO1xuZXhwb3J0IHZhciBEaXN0YW5jZU1ldHJpY3NTdWJqZWN0cztcbihmdW5jdGlvbiAoRGlzdGFuY2VNZXRyaWNzU3ViamVjdHMpIHtcbiAgICBEaXN0YW5jZU1ldHJpY3NTdWJqZWN0c1tcIlZlY3RvclwiXSA9IFwiVmVjdG9yXCI7XG4gICAgRGlzdGFuY2VNZXRyaWNzU3ViamVjdHNbXCJTdHJpbmdcIl0gPSBcIlN0cmluZ1wiO1xuICAgIERpc3RhbmNlTWV0cmljc1N1YmplY3RzW1wiQml0QXJyYXlcIl0gPSBcIkJpdEFycmF5XCI7XG4gICAgRGlzdGFuY2VNZXRyaWNzU3ViamVjdHNbXCJNYWNyb01vbGVjdWxlXCJdID0gXCJNYWNyb01vbGVjdWxlXCI7XG4gICAgRGlzdGFuY2VNZXRyaWNzU3ViamVjdHNbXCJOdW1iZXJcIl0gPSBcIk51bWJlclwiO1xufSkoRGlzdGFuY2VNZXRyaWNzU3ViamVjdHMgfHwgKERpc3RhbmNlTWV0cmljc1N1YmplY3RzID0ge30pKTtcbmV4cG9ydCB2YXIgTnVtYmVyTWV0cmljc05hbWVzO1xuKGZ1bmN0aW9uIChOdW1iZXJNZXRyaWNzTmFtZXMpIHtcbiAgICBOdW1iZXJNZXRyaWNzTmFtZXNbXCJOdW1lcmljRGlzdGFuY2VcIl0gPSBcIk51bWVyaWNEaXN0YW5jZVwiO1xufSkoTnVtYmVyTWV0cmljc05hbWVzIHx8IChOdW1iZXJNZXRyaWNzTmFtZXMgPSB7fSkpO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pWTI5dWMzUnpMbXB6SWl3aWMyOTFjbU5sVW05dmRDSTZJaUlzSW5OdmRYSmpaWE1pT2xzaVkyOXVjM1J6TG5SeklsMHNJbTVoYldWeklqcGJYU3dpYldGd2NHbHVaM01pT2lKQlFVRkJMRTFCUVUwc1EwRkJUaXhKUVVGWkxHdENRVWxVTzBGQlNrZ3NWMEZCV1N4clFrRkJhMEk3U1VGRE1VSXNhVVJCUVRKQ0xFTkJRVUU3U1VGRE0wSXNhMFJCUVRSQ0xFTkJRVUU3U1VGRE5VSXNOa05CUVhWQ0xFTkJRVUU3UVVGRGVrSXNRMEZCUXl4RlFVcFRMR3RDUVVGclFpeExRVUZzUWl4clFrRkJhMElzVVVGSk0wSTdRVUZGU0N4TlFVRk5MRU5CUVU0c1NVRkJXU3hyUWtGRlZEdEJRVVpJTEZkQlFWa3NhMEpCUVd0Q08wbEJRekZDTERaRFFVRjFRaXhEUVVGQk8wRkJRM3BDTEVOQlFVTXNSVUZHVXl4clFrRkJhMElzUzBGQmJFSXNhMEpCUVd0Q0xGRkJSVE5DTzBGQlJVZ3NUVUZCVFN4RFFVRk9MRWxCUVZrc2IwSkJZVlE3UVVGaVNDeFhRVUZaTEc5Q1FVRnZRanRKUVVNMVFpdzJRMEZCY1VJc1EwRkJRVHRKUVVOeVFpeHhRMEZCWVN4RFFVRkJPMGxCUTJJc2FVUkJRWGxDTEVOQlFVRTdTVUZEZWtJc2QwUkJRV2RETEVOQlFVRTdTVUZEYUVNc2VVTkJRV2xDTEVOQlFVRTdTVUZEYWtJc2FVUkJRWGxDTEVOQlFVRTdTVUZEZWtJc2MwUkJRVGhDTEVOQlFVRTdTVUZET1VJc2QwUkJRV2RETEVOQlFVRTdTVUZEYUVNc2VVTkJRV2xDTEVOQlFVRTdTVUZEYWtJc2RVTkJRV1VzUTBGQlFUdEpRVU5tTERKRFFVRnRRaXhEUVVGQk8wbEJRMjVDTEN0RFFVRjFRaXhEUVVGQk8wRkJRM3BDTEVOQlFVTXNSVUZpVXl4dlFrRkJiMElzUzBGQmNFSXNiMEpCUVc5Q0xGRkJZVGRDTzBGQlJVZ3NUVUZCVFN4RFFVRk9MRWxCUVZrc2RVSkJUVlE3UVVGT1NDeFhRVUZaTEhWQ1FVRjFRanRKUVVNdlFpdzBRMEZCYVVJc1EwRkJRVHRKUVVOcVFpdzBRMEZCYVVJc1EwRkJRVHRKUVVOcVFpeG5SRUZCY1VJc1EwRkJRVHRKUVVOeVFpd3dSRUZCSzBJc1EwRkJRVHRKUVVNdlFpdzBRMEZCYVVJc1EwRkJRVHRCUVVOdVFpeERRVUZETEVWQlRsTXNkVUpCUVhWQ0xFdEJRWFpDTEhWQ1FVRjFRaXhSUVUxb1F6dEJRVVZJTEUxQlFVMHNRMEZCVGl4SlFVRlpMR3RDUVVWWU8wRkJSa1FzVjBGQldTeHJRa0ZCYTBJN1NVRkROVUlzZVVSQlFXMURMRU5CUVVFN1FVRkRja01zUTBGQlF5eEZRVVpYTEd0Q1FVRnJRaXhMUVVGc1FpeHJRa0ZCYTBJc1VVRkZOMElpTENKemIzVnlZMlZ6UTI5dWRHVnVkQ0k2V3lKbGVIQnZjblFnWlc1MWJTQlRkSEpwYm1kTlpYUnlhV056VG1GdFpYTWdlMXh1SUNBZ0lFeGxkbVZ1YzJoMFpXbHVJRDBnSjB4bGRtVnVjMmgwWldsdUp5eGNiaUFnSUNCS1lYSnZWMmx1YTJ4bGNpQTlJQ2RLWVhKdkxWZHBibXRzWlhJbkxGeHVJQ0FnSUUxaGJtaGhkSFJoYmlBOUlDZE5ZVzVvWVhSMFlXNG5MRnh1SUNCOVhHNWNibVY0Y0c5eWRDQmxiblZ0SUZabFkzUnZjazFsZEhKcFkzTk9ZVzFsY3lCN1hHNGdJQ0FnUlhWamJHbGtaV0Z1SUQwZ0owVjFZMnhwWkdWaGJpY3NYRzRnSUgxY2JseHVaWGh3YjNKMElHVnVkVzBnUW1sMFFYSnlZWGxOWlhSeWFXTnpUbUZ0WlhNZ2UxeHVJQ0FnSUZSaGJtbHRiM1J2SUQwZ0oxUmhibWx0YjNSdkp5eGNiaUFnSUNCRWFXTmxJRDBnSjBScFkyVW5MRnh1SUNBZ0lFRnplVzF0WlhSeWFXTWdQU0FuUVhONWJXMWxkSEpwWXljc1hHNGdJQ0FnUW5KaGRXNUNiR0Z1Y1hWbGRDQTlJQ2RDY21GMWJpMUNiR0Z1Y1hWbGRDY3NYRzRnSUNBZ1EyOXphVzVsSUQwZ0owTnZjMmx1WlNjc1hHNGdJQ0FnUzNWc1kzcDVibk5yYVNBOUlDZExkV3hqZW5sdWMydHBKeXhjYmlBZ0lDQk5ZME52Ym01aGRXZG9aWGtnUFNBblRXTXRRMjl1Ym1GMVoyaGxlU2NzWEc0Z0lDQWdVbTluYjNSSGIyeGtZbVZ5WnlBOUlDZFNiMmR2ZEMxSGIyeGtZbVZ5Wnljc1hHNGdJQ0FnVW5WemMyVnNJRDBnSjFKMWMzTmxiQ2NzWEc0Z0lDQWdVMjlyWVd3Z1BTQW5VMjlyWVd3bkxGeHVJQ0FnSUVoaGJXMXBibWNnUFNBblNHRnRiV2x1Wnljc1hHNGdJQ0FnUlhWamJHbGtaV0Z1SUQwZ0owVjFZMnhwWkdWaGJpY3NYRzRnSUgxY2JseHVaWGh3YjNKMElHVnVkVzBnUkdsemRHRnVZMlZOWlhSeWFXTnpVM1ZpYW1WamRITWdlMXh1SUNBZ0lGWmxZM1J2Y2lBOUlDZFdaV04wYjNJbkxGeHVJQ0FnSUZOMGNtbHVaeUE5SUNkVGRISnBibWNuTEZ4dUlDQWdJRUpwZEVGeWNtRjVJRDBnSjBKcGRFRnljbUY1Snl4Y2JpQWdJQ0JOWVdOeWIwMXZiR1ZqZFd4bElEMGdKMDFoWTNKdlRXOXNaV04xYkdVbkxGeHVJQ0FnSUU1MWJXSmxjaUE5SUNkT2RXMWlaWEluTEZ4dUlDQjlYRzVjYm1WNGNHOXlkQ0JsYm5WdElFNTFiV0psY2sxbGRISnBZM05PWVcxbGN5QjdYRzRnSUU1MWJXVnlhV05FYVhOMFlXNWpaU0E5SUNkT2RXMWxjbWxqUkdsemRHRnVZMlVuTEZ4dWZWeHVYRzRpWFgwPSIsImltcG9ydCB7IFZlY3RvciB9IGZyb20gJy4vdHlwZS1kZWNsYXJhdGlvbnMnO1xuaW1wb3J0IHsgcmFuZG9tRmxvYXQsIHJhbmRvbUludCB9IGZyb20gJy4vcmFuZG9tJztcbi8qKlxuICogQXNzZXJ0cyBhIGNvbmRpdGlvbiBieSB0aHJvd2luZyBhbiBFcnJvci5cbiAqXG4gKiBAZXhwb3J0XG4gKiBAcGFyYW0ge2Jvb2xlYW59IFtjb25kaXRpb249ZmFsc2VdIENvbmRpdGlvbiB0byBhc3NlcnQuXG4gKiBAcGFyYW0ge3N0cmluZ30gW21lc3NhZ2U9J0Fzc2VydGlvbiBlcnJvci4nXSBNZXNzYWdlIHRvIG91dHB1dC5cbiAqIEB0aHJvd3Mge0Vycm9yfVxuICovXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0KGNvbmRpdGlvbiA9IGZhbHNlLCBtZXNzYWdlID0gJ0Fzc2VydGlvbiBlcnJvci4nKSB7XG4gICAgaWYgKCFjb25kaXRpb24pXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihtZXNzYWdlKTtcbn1cbi8qKlxuICogQ3JlYXRlcyBuZXcgdHdvLWRpbWVuc2lvbmFsIGFycmF5IGFuZCBmaWxscyBpdCB3aXRoIHRoZSB2YWx1ZSBnaXZlbi5cbiAqXG4gKiBAcGFyYW0ge251bWJlcn0gZGltZW5zaW9uMSBUaGUgZmlyc3QgZGltZW5zaW9uIG9mIHRoZSBjb29yZGluYXRlcyAobnVtYmVyIG9mIHJvd3MpLlxuICogQHBhcmFtIHtudW1iZXJ9IGRpbWVuc2lvbjIgVGhlIHNlY29uZCBkaW1lbnNpb24gb2YgdGhlIGNvb3JkaW5hdGVzIChudW1iZXIgb2YgY29sdW1ucykuXG4gKiBAcGFyYW0ge251bWJlcn0gW2ZpbGw9MF0gQSB2YWx1ZSB0byBmaWxsIHRoZSBjb29yZGluYXRlcyB3aXRoLlxuICogQHJldHVybiB7Q29vcmRpbmF0ZXN9IEEgdHdvLWRpbWVuc2lvbmFsIGZpbGxlZCB3aXRoIHRoZSB2YWx1ZSBnaXZlbi5cbiAqIEB0b2RvIE1pZ2h0IGJlIHNsb3cgc2luY2UgdXNlZCBBcnJheS5tYXAuIFByb2JhYmx5IG5lZWRzIHBlcmZvcm1hbmNlIHJldmlzaW9uLlxuICovXG5mdW5jdGlvbiBpbml0Q29vcmRpbmF0ZXMoZGltZW5zaW9uMSwgZGltZW5zaW9uMiwgZmlsbCA9IDApIHtcbiAgICByZXR1cm4gbmV3IEFycmF5KGRpbWVuc2lvbjEpLmZpbGwoZmlsbCkubWFwKCgpID0+IChuZXcgVmVjdG9yKGRpbWVuc2lvbjIpLmZpbGwoZmlsbCkpKTtcbn1cbi8qKlxuICogVHJhbnNwb3NlIG1hdHJpeC5cbiAqXG4gKiBAZXhwb3J0XG4gKiBAcGFyYW0ge01hdHJpeH0gbWF0cml4IFRoZSBtYXRyaXggdG8gYmUgdHJhbnNwb3NlZC5cbiAqIEByZXR1cm4ge01hdHJpeH0gVHJhbnNwb3NlZCBtYXRyaXguXG4gKiBAdG9kbyBNaWdodCBiZSBzbG93IHNpbmNlIHVzZWQgQXJyYXkubWFwLiBQcm9iYWJseSBuZWVkcyBwZXJmb3JtYW5jZSByZXZpc2lvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zcG9zZU1hdHJpeChtYXRyaXgpIHtcbiAgICByZXR1cm4gbmV3IEFycmF5KG1hdHJpeFswXS5sZW5ndGgpLmZpbGwoMClcbiAgICAgICAgLm1hcCgoXywgaSkgPT4gKG5ldyBWZWN0b3IobWF0cml4Lmxlbmd0aCkuZmlsbCgwKS5tYXAoKF8sIGopID0+IChtYXRyaXhbal1baV0pKSkpO1xufVxuLyoqXG4gKiBBZGRzIHR3byB2ZWN0b3JzIHdpdGggdGhlIHNlY29uZCBvbmUgdG8gYmUgbXVsdGlwbGllZCBieSB0aGUgZ2l2ZW4gcmF0aW8uXG4gKlxuICogQGV4cG9ydFxuICogQHBhcmFtIHtWZWN0b3J9IHAgVGhlIGZpcnN0IHZlY3RvciB0byBhZGQuXG4gKiBAcGFyYW0ge1ZlY3Rvcn0gcSBUaGUgc2Vjb25kIHZlY3RvciB0byBhZGQuXG4gKiBAcGFyYW0ge251bWJlcn0gW211bHRpcGxpZXI9MV0gQSBtdWx0aXBsaWVyIHRvIGJlIHVzZWQgYmVmb3JlIHRoZSBzZWNvbmQgdmVjdG9yIGlzIGFkZGVkLlxuICogQHJldHVybiB7VmVjdG9yfSBOZXcgdmVjdG9yIGNvbnRhaW5lZCB0aGUgcmVzdWx0IG9mIG9wZXJhdGlvbiBwK211bHRpcGxpZXIqcS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZlY3RvckFkZChwLCBxLCBtdWx0aXBsaWVyID0gMSkge1xuICAgIGNvbnN0IG5JdGVtcyA9IHAubGVuZ3RoO1xuICAgIGFzc2VydChuSXRlbXMgPT0gcS5sZW5ndGgsICdWZWN0b3IgbGVuZ3RocyBkbyBub3QgbWF0Y2guJyk7XG4gICAgY29uc3QgdG90YWwgPSBuZXcgVmVjdG9yKG5JdGVtcyk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwLmxlbmd0aDsgKytpKVxuICAgICAgICB0b3RhbFtpXSA9IHBbaV0gKyBtdWx0aXBsaWVyICogcVtpXTtcbiAgICByZXR1cm4gdG90YWw7XG59XG4vKipcbiAqIFN1bXMgdGhlIHZlY3RvcidzIGl0ZW1zLlxuICpcbiAqIEBwYXJhbSB7VmVjdG9yfSB2IFRoZSB2ZWN0b3IgdG8gYmUgc3VtbWVkLlxuICogQHJldHVybiB7bnVtYmVyfSBUaGUgdmVjdG9yJ3MgaXRlbXMgc3VtLlxuICovXG5mdW5jdGlvbiBpdGVtc1N1bSh2KSB7XG4gICAgbGV0IHRvdGFsID0gMDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHYubGVuZ3RoOyArK2kpXG4gICAgICAgIHRvdGFsICs9IHZbaV07XG4gICAgcmV0dXJuIHRvdGFsO1xufVxuLyoqXG4gKiBTdXFhcmVzIHRoZSB2ZWN0b3IncyBpdGVtcy5cbiAqXG4gKiBAcGFyYW0ge1ZlY3Rvcn0gdiBUaGUgdmVjdG9yIHRvIHNxdWFyZS5cbiAqIEByZXR1cm4ge1ZlY3Rvcn0gQSBuZXcgdmVjdG9yIGNvbnRhaW5pbmcgdGhlIG9yaWdpbmFsJ3MgaXRlbXMgc3F1YXJlZC5cbiAqL1xuZnVuY3Rpb24gdmVjdG9yU3F1YXJlKHYpIHtcbiAgICBjb25zdCBuSXRlbXMgPSB2Lmxlbmd0aDtcbiAgICBjb25zdCB0b3RhbCA9IG5ldyBWZWN0b3Iobkl0ZW1zKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHYubGVuZ3RoOyArK2kpXG4gICAgICAgIHRvdGFsW2ldID0gdltpXSAqIHZbaV07XG4gICAgcmV0dXJuIHRvdGFsO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHZlY3Rvckxlbmd0aCh2KSB7XG4gICAgbGV0IHNxclN1bSA9IDA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB2Lmxlbmd0aDsgaSsrKVxuICAgICAgICBzcXJTdW0gKz0gdltpXSAqIHZbaV07XG4gICAgcmV0dXJuIE1hdGguc3FydChzcXJTdW0pO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHZlY3RvckRvdFByb2R1Y3QodjEsIHYyKSB7XG4gICAgaWYgKHYxLmxlbmd0aCAhPSB2Mi5sZW5ndGgpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignVGhlIGRpbWVuc2lvbmFsaXR5IG9mIHRoZSB2ZWN0b3JzIG11c3QgbWF0Y2gnKTtcbiAgICBsZXQgcHJvZCA9IDA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB2MS5sZW5ndGg7IGkrKylcbiAgICAgICAgcHJvZCArPSB2MVtpXSAqIHYyW2ldO1xuICAgIHJldHVybiBwcm9kO1xufVxuLyoqXG4gKiBDcmVhdGVzIGEgbWF0cml4IGZpbGxlZCB3aXRoIHJhbmRvbSBmbG9hdGluZyBwb2ludCB2YWx1ZXMuXG4gKlxuICogQGV4cG9ydFxuICogQHBhcmFtIHtudW1iZXJ9IGRpbWVuc2lvbjEgVGhlIGZpcnN0IGRpbWVuc2lvbiBvZiB0aGUgbWF0cml4LlxuICogQHBhcmFtIHtudW1iZXJ9IGRpbWVuc2lvbjIgVGhlIHNlY29uZCBkaW1lbnNpb24gb2YgdGhlIG1hdHJpeC5cbiAqIEBwYXJhbSB7bnVtYmVyfSBbc2NhbGU9MS5dIE1heCB2YWx1ZSBnaXZlbiBieSByYW5kb20gZ2VuZXJhdG9yLlxuICogQHJldHVybiB7TWF0cml4fSBBIG5ldyBtYXRyaXggZmlsbGVkIHdpdGggcmFuZG9tIGZsb2F0aW5nIHBvaW50ICB2YWx1ZXMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmaWxsUmFuZG9tTWF0cml4KGRpbWVuc2lvbjEsIGRpbWVuc2lvbjIsIHNjYWxlID0gMS4pIHtcbiAgICBjb25zdCBtYXRyaXggPSBpbml0Q29vcmRpbmF0ZXMoZGltZW5zaW9uMSwgZGltZW5zaW9uMik7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkaW1lbnNpb24xOyArK2kpIHtcbiAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBkaW1lbnNpb24yOyArK2opXG4gICAgICAgICAgICBtYXRyaXhbaV1bal0gPSByYW5kb21GbG9hdChzY2FsZSk7XG4gICAgfVxuICAgIHJldHVybiBtYXRyaXg7XG59XG4vKipcbiAqIENhbGN1bGF0ZXMgRXVjbGlkZWFuIGRpc3RhbmNlIGJldHdlZW4gdHdvIHZlY3RvcnMuXG4gKlxuICogQGV4cG9ydFxuICogQHBhcmFtIHtWZWN0b3J9IHAgVGhlIGZpcnN0IHZlY3Rvci5cbiAqIEBwYXJhbSB7VmVjdG9yfSBxIFRoZSBzZWNvbmQgdmVjdG9yLlxuICogQHJldHVybiB7bnVtYmVyfSBFdWNsaWRlYW4gZGlzdGFuY2UgYmV0d2VlbiB0aGUgZ2l2ZW4gdmVjdG9ycy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNhbGN1bGF0ZUV1Y2xpZGVhbkRpc3RhbmNlKHAsIHEpIHtcbiAgICBjb25zdCBkaWZmID0gdmVjdG9yQWRkKHAsIHEsIC0xKTtcbiAgICBjb25zdCBzcWRpZmYgPSB2ZWN0b3JTcXVhcmUoZGlmZik7XG4gICAgY29uc3Qgc3FkaWZmU3VtbSA9IGl0ZW1zU3VtKHNxZGlmZik7XG4gICAgcmV0dXJuIE1hdGguc3FydChzcWRpZmZTdW1tKTtcbn1cbi8qKlxuICogQ3JlYXRlcyBhIGRpc3RhbmNlIG1hdHJpeCB1c2luZyBhIGN1c3RvbSBkaXN0YW5jZSBmdW5jdGlvbi5cbiAqXG4gKiBAZXhwb3J0XG4gKiBAcGFyYW0ge1ZlY3RvcnN9IGRhdGEgSW5wdXQgdmVjdG9ycyB0byBjYWxjdWxhdGUgZGlzdGFuY2VzLlxuICogQHBhcmFtIHtEaXN0YW5jZU1ldHJpY30gZGlzdGFuY2UgQ3VzdG9tIGRpc3RhbmNlIGZ1bmN0aW9uLlxuICogQHJldHVybiB7TWF0cml4fSBDYWxjdWxhdGVkIGN1c3RvbSBkaXN0YW5jZSBtYXRyaXguXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjYWxjRGlzdGFuY2VNYXRyaXgoZGF0YSwgZGlzdGFuY2UpIHtcbiAgICBjb25zdCBuSXRlbXMgPSBkYXRhLmxlbmd0aDtcbiAgICBjb25zdCBtYXRyaXggPSBpbml0Q29vcmRpbmF0ZXMobkl0ZW1zLCBuSXRlbXMsIDApO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbkl0ZW1zOyArK2kpIHtcbiAgICAgICAgZm9yIChsZXQgaiA9IGkgKyAxOyBqIDwgbkl0ZW1zOyArK2opIHtcbiAgICAgICAgICAgIGNvbnN0IGQgPSAoZGF0YVtpXSA9PSBudWxsKSB8fCAoZGF0YVtqXSA9PSBudWxsKSA/IDAgOiBkaXN0YW5jZShkYXRhW2ldLCBkYXRhW2pdKTtcbiAgICAgICAgICAgIG1hdHJpeFtpXVtqXSA9IG1hdHJpeFtqXVtpXSA9IGQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG1hdHJpeDtcbn1cbi8qKlxuICogQ3JlYXRlcyBhIGRpc3RhbmNlIG1hdHJpeCB1c2luZyBhIGN1c3RvbSBkaXN0YW5jZSBmdW5jdGlvbi5cbiAqXG4gKiBAZXhwb3J0XG4gKiBAcGFyYW0ge1ZlY3RvcnN9IGRhdGEgSW5wdXQgdmVjdG9ycyB0byBjYWxjdWxhdGUgZGlzdGFuY2VzLlxuICogQHBhcmFtIHtEaXN0YW5jZU1ldHJpY30gZGlzdGFuY2UgQ3VzdG9tIGRpc3RhbmNlIGZ1bmN0aW9uLlxuICogQHJldHVybiB7TWF0cml4fSBDYWxjdWxhdGVkIGN1c3RvbSBkaXN0YW5jZSBtYXRyaXguXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjYWxjTm9ybWFsaXplZERpc3RhbmNlTWF0cml4KGRhdGEsIGRpc3RhbmNlKSB7XG4gICAgY29uc3Qgbkl0ZW1zID0gZGF0YS5sZW5ndGg7XG4gICAgY29uc3QgbWF0cml4ID0gaW5pdENvb3JkaW5hdGVzKG5JdGVtcywgbkl0ZW1zLCAwKTtcbiAgICBsZXQgbWF4ID0gTnVtYmVyLk1JTl9WQUxVRTtcbiAgICBsZXQgbWluID0gTnVtYmVyLk1BWF9WQUxVRTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5JdGVtczsgKytpKSB7XG4gICAgICAgIGZvciAobGV0IGogPSBpOyBqIDwgbkl0ZW1zOyArK2opIHtcbiAgICAgICAgICAgIGNvbnN0IGQgPSAoZGF0YVtpXSA9PSBudWxsKSB8fCAoZGF0YVtqXSA9PSBudWxsIHx8IGkgPT09IGopID8gMCA6IGRpc3RhbmNlKGRhdGFbaV0sIGRhdGFbal0pO1xuICAgICAgICAgICAgbWF0cml4W2ldW2pdID0gbWF0cml4W2pdW2ldID0gZDtcbiAgICAgICAgICAgIGlmIChkID4gbWF4KVxuICAgICAgICAgICAgICAgIG1heCA9IGQ7XG4gICAgICAgICAgICBpZiAoZCA8IG1pbilcbiAgICAgICAgICAgICAgICBtaW4gPSBkO1xuICAgICAgICB9XG4gICAgfVxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbkl0ZW1zOyArK2kpIHtcbiAgICAgICAgZm9yIChsZXQgaiA9IGkgKyAxOyBqIDwgbkl0ZW1zOyArK2opXG4gICAgICAgICAgICBtYXRyaXhbaV1bal0gPSBtYXRyaXhbal1baV0gPSAobWF0cml4W2ldW2pdIC0gbWluKSAvIChtYXggLSBtaW4pO1xuICAgIH1cbiAgICByZXR1cm4gbWF0cml4O1xufVxuLyoqIEdlbmVyYXRlcyBhcnJheSBmcm9tIGEgcmFuZ2UgW2JlZ2luOyBlbmRdIG9yIFtiZWdpbjsgZW5kKSBpZiBlbmRFeGNsdXNpdmUuICoqL1xuZXhwb3J0IGZ1bmN0aW9uIGdlblJhbmdlKGJlZ2luLCBlbmQsIGVuZEV4Y2x1c2l2ZSA9IGZhbHNlKSB7XG4gICAgY29uc3Qgbkl0ZW1zID0gZW5kIC0gYmVnaW4gKyAoZW5kRXhjbHVzaXZlID8gMCA6IDEpO1xuICAgIGNvbnN0IHNlcmllcyA9IG5ldyBJbnQzMkFycmF5KG5JdGVtcyk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuSXRlbXM7ICsraSlcbiAgICAgICAgc2VyaWVzW2ldID0gYmVnaW4gKyBpO1xuICAgIHJldHVybiBzZXJpZXM7XG59XG4vKipcbiAqIFJldHVybnMgb3JkZXIgb2YgdmFsdWVzIGFzIGlmIHRoZXkgYXJlIHNvcnRlZC5cbiAqXG4gKiBAZXhwb3J0XG4gKiBAcGFyYW0ge2FueVtdfSB2YWx1ZXMgSW5wdXQgYXJyYXkuXG4gKiBAcGFyYW0ge2Jvb2xlYW59IFtyZXZlcnNlPWZhbHNlXSBXaGV0aGVyIHRvIHJldHVybiByZXZlcnNlZCBvcmRlci5cbiAqIEByZXR1cm4ge251bWJlcltdfSBUaGUgb3JkZXIgY29tcHV0ZWQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhcmdTb3J0KHZhbHVlcywgcmV2ZXJzZSA9IGZhbHNlKSB7XG4gICAgY29uc3Qgc29ydGZuID0gcmV2ZXJzZSA/IChhLCBiKSA9PiAoYlswXSAtIGFbMF0pIDogKGEsIGIpID0+IChhWzBdIC0gYlswXSk7XG4gICAgY29uc3QgZGVjb3IgPSAodiwgaSkgPT4gW3YsIGldOyAvLyBzZXQgaW5kZXggdG8gdmFsdWVcbiAgICBjb25zdCB1bmRlY29yID0gKGEpID0+IGFbMV07IC8vIGxlYXZlIG9ubHkgaW5kZXhcbiAgICBjb25zdCBfYXJnc29ydCA9IChhcnIpID0+IGFyci5tYXAoZGVjb3IpLnNvcnQoc29ydGZuKS5tYXAodW5kZWNvcik7XG4gICAgcmV0dXJuIF9hcmdzb3J0KHZhbHVlcyk7XG59XG4vKipcbiAqIFJldHVybnMgdGhlIGluZGV4ZXMgb2YgdGhlIG1vc3QgZGl2ZXJzZSBvYmplY3RzIGFjY29yZGluZyB0byB0aGUgZGlzdCBmdW5jdGlvblxuICogQHBhcmFtIHtudW1iZXJ9IGxlbmd0aCB0b3RhbCBudW1iZXIgb2Ygb2JqZWN0c1xuICogQHBhcmFtIHtudW1iZXJ9IG4gbnVtYmVyIG9mIGRpdmVyc2UgZWxlbWVudHMgdG8gZmluZFxuICogQHBhcmFtIHsoaTE6IG51bWJlciwgaTI6IG51bWJlcikgPT4gbnVtYmVyfSBkaXN0IGEgZnVuY3Rpb24gd2hpY2ggY2FsY3VsYXRlcyBkaXN0YW5jZSBiZXR3ZWVuXG4gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHdvIG9iamVjdHMgdXNpbmcgdGhlaXIgaW5kZXhlc1xuICogQHJldHVybnMge251bWJlcltdfSBUaGUgaW5kZXhlcyBvZiB0aGUgbW9zdCBkaXZlcnNlIG9iamVjdHNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldERpdmVyc2VTdWJzZXQobGVuZ3RoLCBuLCBkaXN0KSB7XG4gICAgZnVuY3Rpb24gbWF4QnkodmFsdWVzLCBvcmRlckJ5KSB7XG4gICAgICAgIGxldCBtYXhWYWx1ZSA9IG51bGw7XG4gICAgICAgIGxldCBtYXhPcmRlckJ5ID0gbnVsbDtcbiAgICAgICAgZm9yIChjb25zdCBlbGVtZW50IG9mIHZhbHVlcykge1xuICAgICAgICAgICAgY29uc3QgZWxlbWVudE9yZGVyQnkgPSBvcmRlckJ5KGVsZW1lbnQpO1xuICAgICAgICAgICAgaWYgKG1heE9yZGVyQnkgPT0gbnVsbCB8fCBlbGVtZW50T3JkZXJCeSA+IG1heE9yZGVyQnkpIHtcbiAgICAgICAgICAgICAgICBtYXhWYWx1ZSA9IGVsZW1lbnQ7XG4gICAgICAgICAgICAgICAgbWF4T3JkZXJCeSA9IGVsZW1lbnRPcmRlckJ5O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBtYXhWYWx1ZTtcbiAgICB9XG4gICAgY29uc3Qgc3Vic2V0ID0gW3JhbmRvbUludChsZW5ndGggLSAxKV07XG4gICAgY29uc3QgY29tcGxlbWVudCA9IG5ldyBTZXQoKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxlbmd0aDsgKytpKSB7XG4gICAgICAgIGlmICghc3Vic2V0LmluY2x1ZGVzKGkpKVxuICAgICAgICAgICAgY29tcGxlbWVudC5hZGQoaSk7XG4gICAgfVxuICAgIHdoaWxlIChzdWJzZXQubGVuZ3RoIDwgbikge1xuICAgICAgICBjb25zdCBpZHggPSBtYXhCeShjb21wbGVtZW50LnZhbHVlcygpLCAoaSkgPT4gTWF0aC5taW4uYXBwbHkoTWF0aCwgc3Vic2V0Lm1hcChmdW5jdGlvbiAodmFsLCBpbmRleCkge1xuICAgICAgICAgICAgcmV0dXJuIGRpc3QoaSwgdmFsKTtcbiAgICAgICAgfSkpKTtcbiAgICAgICAgaWYgKGlkeCkge1xuICAgICAgICAgICAgc3Vic2V0LnB1c2goaWR4KTtcbiAgICAgICAgICAgIGNvbXBsZW1lbnQuZGVsZXRlKGlkeCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHN1YnNldDtcbn1cbi8qKlxuICogUmV0dXJucyBub3JtYWxpemVkIHZlY3RvclxuICogQHBhcmFtIHtWZWN0b3J9IGRhdGEgbnVtZXJpY2FsIGFycmF5XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBub3JtYWxpemUoZGF0YSkge1xuICAgIGxldCBtZWFuID0gMDtcbiAgICBsZXQgc3RkID0gMDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRhdGEubGVuZ3RoOyArK2kpXG4gICAgICAgIG1lYW4gKz0gZGF0YVtpXTtcbiAgICBtZWFuIC89IGRhdGEubGVuZ3RoO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGF0YS5sZW5ndGg7ICsraSlcbiAgICAgICAgc3RkICs9IChkYXRhW2ldIC0gbWVhbikgKiAoZGF0YVtpXSAtIG1lYW4pO1xuICAgIHN0ZCA9IE1hdGguc3FydChzdGQgLyBkYXRhLmxlbmd0aCk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkYXRhLmxlbmd0aDsgKytpKVxuICAgICAgICBkYXRhW2ldID0gKGRhdGFbaV0gLSBtZWFuKSAvIHN0ZDtcbiAgICByZXR1cm4gZGF0YTtcbn1cbi8qKlxuICogRmluZHMgc2V0IGRpZmZlcmVuY2UgYmV0d2VlbiB0d28gbGlzdHMuXG4gKiBAcGFyYW0ge2FueVtdfSBhIFRoZSBmaXJzdCBsaXN0LlxuICogQHBhcmFtIHthbnlbXX0gYiBUaGUgc2Vjb25kIGxpc3QuXG4gKiBAcmV0dXJuIHthbnlbXX1cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNldERpZmZlcmVuY2UoYSwgYikge1xuICAgIGNvbnN0IGJTZXQgPSBuZXcgU2V0KGIpO1xuICAgIHJldHVybiBBcnJheS5mcm9tKG5ldyBTZXQoYS5maWx0ZXIoKHgpID0+ICFiU2V0Lmhhcyh4KSkpLnZhbHVlcygpKTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaWRtVmpkRzl5TFc5d1pYSmhkR2x2Ym5NdWFuTWlMQ0p6YjNWeVkyVlNiMjkwSWpvaUlpd2ljMjkxY21ObGN5STZXeUoyWldOMGIzSXRiM0JsY21GMGFXOXVjeTUwY3lKZExDSnVZVzFsY3lJNlcxMHNJbTFoY0hCcGJtZHpJam9pUVVGQlFTeFBRVUZQTEVWQlFWTXNUVUZCVFN4RlFVRjFReXhOUVVGTkxIRkNRVUZ4UWl4RFFVRkRPMEZCUTNwR0xFOUJRVThzUlVGQlF5eFhRVUZYTEVWQlFVVXNVMEZCVXl4RlFVRkRMRTFCUVUwc1ZVRkJWU3hEUVVGRE8wRkJSV2hFT3pzN096czdPMGRCVDBjN1FVRkRTQ3hOUVVGTkxGVkJRVlVzVFVGQlRTeERRVUZETEZsQlFYRkNMRXRCUVVzc1JVRkJSU3hWUVVGclFpeHJRa0ZCYTBJN1NVRkRja1lzU1VGQlNTeERRVUZETEZOQlFWTTdVVUZEV2l4TlFVRk5MRWxCUVVrc1MwRkJTeXhEUVVGRExFOUJRVThzUTBGQlF5eERRVUZETzBGQlF6ZENMRU5CUVVNN1FVRkZSRHM3T3pzN096czdSMEZSUnp0QlFVTklMRk5CUVZNc1pVRkJaU3hEUVVGRExGVkJRV3RDTEVWQlFVVXNWVUZCYTBJc1JVRkJSU3hQUVVGbExFTkJRVU03U1VGREwwVXNUMEZCVHl4SlFVRkpMRXRCUVVzc1EwRkJReXhWUVVGVkxFTkJRVU1zUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1IwRkJSeXhEUVVGRExFZEJRVWNzUlVGQlJTeERRVUZETEVOQlFVTXNTVUZCU1N4TlFVRk5MRU5CUVVNc1ZVRkJWU3hEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRCUVVONlJpeERRVUZETzBGQlJVUTdPenM3T3pzN1IwRlBSenRCUVVOSUxFMUJRVTBzVlVGQlZTeGxRVUZsTEVOQlFVTXNUVUZCWXp0SlFVTTFReXhQUVVGUExFbEJRVWtzUzBGQlN5eERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRPMU5CUTNaRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSU3hEUVVGRExFTkJRVU1zU1VGQlNTeE5RVUZOTEVOQlFVTXNUVUZCVFN4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8wRkJRM1JHTEVOQlFVTTdRVUZGUkRzN096czdPenM3UjBGUlJ6dEJRVU5JTEUxQlFVMHNWVUZCVlN4VFFVRlRMRU5CUVVNc1EwRkJVeXhGUVVGRkxFTkJRVk1zUlVGQlJTeGhRVUZ4UWl4RFFVRkRPMGxCUTNCRkxFMUJRVTBzVFVGQlRTeEhRVUZITEVOQlFVTXNRMEZCUXl4TlFVRk5MRU5CUVVNN1NVRkZlRUlzVFVGQlRTeERRVUZETEUxQlFVMHNTVUZCU1N4RFFVRkRMRU5CUVVNc1RVRkJUU3hGUVVGRkxEaENRVUU0UWl4RFFVRkRMRU5CUVVNN1NVRkZNMFFzVFVGQlRTeExRVUZMTEVkQlFVY3NTVUZCU1N4TlFVRk5MRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU03U1VGRmFrTXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4TlFVRk5MRVZCUVVVc1JVRkJSU3hEUVVGRE8xRkJReTlDTEV0QlFVc3NRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NWVUZCVlN4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dEpRVVYwUXl4UFFVRlBMRXRCUVVzc1EwRkJRenRCUVVObUxFTkJRVU03UVVGRlJEczdPenM3UjBGTFJ6dEJRVU5JTEZOQlFWTXNVVUZCVVN4RFFVRkRMRU5CUVZNN1NVRkRla0lzU1VGQlNTeExRVUZMTEVkQlFVY3NRMEZCUXl4RFFVRkRPMGxCUldRc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhOUVVGTkxFVkJRVVVzUlVGQlJTeERRVUZETzFGQlF5OUNMRXRCUVVzc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdTVUZGYUVJc1QwRkJUeXhMUVVGTExFTkJRVU03UVVGRFppeERRVUZETzBGQlJVUTdPenM3TzBkQlMwYzdRVUZEU0N4VFFVRlRMRmxCUVZrc1EwRkJReXhEUVVGVE8wbEJRemRDTEUxQlFVMHNUVUZCVFN4SFFVRkhMRU5CUVVNc1EwRkJReXhOUVVGTkxFTkJRVU03U1VGRGVFSXNUVUZCVFN4TFFVRkxMRWRCUVVjc1NVRkJTU3hOUVVGTkxFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTTdTVUZGYWtNc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhOUVVGTkxFVkJRVVVzUlVGQlJTeERRVUZETzFGQlF5OUNMRXRCUVVzc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzBsQlJYcENMRTlCUVU4c1MwRkJTeXhEUVVGRE8wRkJRMllzUTBGQlF6dEJRVVZFTEUxQlFVMHNWVUZCVlN4WlFVRlpMRU5CUVVNc1EwRkJVenRKUVVOd1F5eEpRVUZKTEUxQlFVMHNSMEZCVnl4RFFVRkRMRU5CUVVNN1NVRkRka0lzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCVnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eE5RVUZOTEVWQlFVVXNRMEZCUXl4RlFVRkZPMUZCUTNaRExFMUJRVTBzU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzBsQlEzaENMRTlCUVU4c1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXp0QlFVTXpRaXhEUVVGRE8wRkJSVVFzVFVGQlRTeFZRVUZWTEdkQ1FVRm5RaXhEUVVGRExFVkJRVlVzUlVGQlJTeEZRVUZWTzBsQlEzSkVMRWxCUVVrc1JVRkJSU3hEUVVGRExFMUJRVTBzU1VGQlNTeEZRVUZGTEVOQlFVTXNUVUZCVFR0UlFVTjRRaXhOUVVGTkxFbEJRVWtzUzBGQlN5eERRVUZETERoRFFVRTRReXhEUVVGRExFTkJRVU03U1VGRGJFVXNTVUZCU1N4SlFVRkpMRWRCUVZjc1EwRkJReXhEUVVGRE8wbEJRM0pDTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVZjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eEZRVUZGTEVOQlFVTXNUVUZCVFN4RlFVRkZMRU5CUVVNc1JVRkJSVHRSUVVONFF5eEpRVUZKTEVsQlFVa3NSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0SlFVTjRRaXhQUVVGUExFbEJRVWtzUTBGQlF6dEJRVU5rTEVOQlFVTTdRVUZGUkRzN096czdPenM3UjBGUlJ6dEJRVU5JTEUxQlFVMHNWVUZCVlN4blFrRkJaMElzUTBGQlF5eFZRVUZyUWl4RlFVRkZMRlZCUVd0Q0xFVkJRVVVzVVVGQlowSXNSVUZCUlR0SlFVTjZSaXhOUVVGTkxFMUJRVTBzUjBGQlJ5eGxRVUZsTEVOQlFVTXNWVUZCVlN4RlFVRkZMRlZCUVZVc1EwRkJReXhEUVVGRE8wbEJSWFpFTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eFZRVUZWTEVWQlFVVXNSVUZCUlN4RFFVRkRMRVZCUVVVN1VVRkRia01zUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExGVkJRVlVzUlVGQlJTeEZRVUZGTEVOQlFVTTdXVUZEYWtNc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRmRCUVZjc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF6dExRVU55UXp0SlFVTkVMRTlCUVU4c1RVRkJUU3hEUVVGRE8wRkJRMmhDTEVOQlFVTTdRVUZGUkRzN096czdPenRIUVU5SE8wRkJRMGdzVFVGQlRTeFZRVUZWTERCQ1FVRXdRaXhEUVVGRExFTkJRVk1zUlVGQlJTeERRVUZUTzBsQlF6ZEVMRTFCUVUwc1NVRkJTU3hIUVVGSExGTkJRVk1zUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRGFrTXNUVUZCVFN4TlFVRk5MRWRCUVVjc1dVRkJXU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzBsQlEyeERMRTFCUVUwc1ZVRkJWU3hIUVVGSExGRkJRVkVzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXp0SlFVTndReXhQUVVGUExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNWVUZCVlN4RFFVRkRMRU5CUVVNN1FVRkRMMElzUTBGQlF6dEJRVVZFT3pzN096czdPMGRCVDBjN1FVRkRTQ3hOUVVGTkxGVkJRVlVzYTBKQlFXdENMRU5CUVVNc1NVRkJZU3hGUVVGRkxGRkJRWGRDTzBsQlEzaEZMRTFCUVUwc1RVRkJUU3hIUVVGSExFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTTdTVUZETTBJc1RVRkJUU3hOUVVGTkxFZEJRVWNzWlVGQlpTeERRVUZETEUxQlFVMHNSVUZCUlN4TlFVRk5MRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRmJFUXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEUxQlFVMHNSVUZCUlN4RlFVRkZMRU5CUVVNc1JVRkJSVHRSUVVNdlFpeExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEUxQlFVMHNSVUZCUlN4RlFVRkZMRU5CUVVNc1JVRkJSVHRaUVVOdVF5eE5RVUZOTEVOQlFVTXNSMEZCVnl4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zU1VGQlNTeEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zU1VGQlNTeEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eFJRVUZSTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhGUVVGRkxFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMWxCUXpGR0xFMUJRVTBzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRE8xTkJRMnBETzB0QlEwWTdTVUZEUkN4UFFVRlBMRTFCUVUwc1EwRkJRenRCUVVOb1FpeERRVUZETzBGQlJVUTdPenM3T3pzN1IwRlBSenRCUVVOSUxFMUJRVTBzVlVGQlZTdzBRa0ZCTkVJc1EwRkJReXhKUVVGaExFVkJRVVVzVVVGQmQwSTdTVUZEYkVZc1RVRkJUU3hOUVVGTkxFZEJRVWNzU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXp0SlFVTXpRaXhOUVVGTkxFMUJRVTBzUjBGQlJ5eGxRVUZsTEVOQlFVTXNUVUZCVFN4RlFVRkZMRTFCUVUwc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF6dEpRVU5zUkN4SlFVRkpMRWRCUVVjc1IwRkJSeXhOUVVGTkxFTkJRVU1zVTBGQlV5eERRVUZETzBsQlF6TkNMRWxCUVVrc1IwRkJSeXhIUVVGSExFMUJRVTBzUTBGQlF5eFRRVUZUTEVOQlFVTTdTVUZETTBJc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRTFCUVUwc1JVRkJSU3hGUVVGRkxFTkJRVU1zUlVGQlJUdFJRVU12UWl4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NUVUZCVFN4RlFVRkZMRVZCUVVVc1EwRkJReXhGUVVGRk8xbEJReTlDTEUxQlFVMHNRMEZCUXl4SFFVRlhMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eEpRVUZKTEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eEpRVUZKTEVsQlFVa3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1VVRkJVU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dFpRVU55Unl4TlFVRk5MRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NUVUZCVFN4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXp0WlFVTm9ReXhKUVVGSkxFTkJRVU1zUjBGQlJ5eEhRVUZITzJkQ1FVRkZMRWRCUVVjc1IwRkJSeXhEUVVGRExFTkJRVU03V1VGRGNrSXNTVUZCU1N4RFFVRkRMRWRCUVVjc1IwRkJSenRuUWtGQlJTeEhRVUZITEVkQlFVY3NRMEZCUXl4RFFVRkRPMU5CUTNSQ08wdEJRMFk3U1VGRFJDeExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzVFVGQlRTeEZRVUZGTEVWQlFVVXNRMEZCUXl4RlFVRkZPMUZCUXk5Q0xFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzVFVGQlRTeEZRVUZGTEVWQlFVVXNRMEZCUXp0WlFVTnFReXhOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRWRCUVVjc1EwRkJReXhIUVVGSExFTkJRVU1zUjBGQlJ5eEhRVUZITEVkQlFVY3NRMEZCUXl4RFFVRkRPMHRCUTNCRk8wbEJRMFFzVDBGQlR5eE5RVUZOTEVOQlFVTTdRVUZEYUVJc1EwRkJRenRCUVVWRUxHdEdRVUZyUmp0QlFVTnNSaXhOUVVGTkxGVkJRVlVzVVVGQlVTeERRVUZETEV0QlFXRXNSVUZCUlN4SFFVRlhMRVZCUVVVc1dVRkJXU3hIUVVGSExFdEJRVXM3U1VGRGRrVXNUVUZCVFN4TlFVRk5MRWRCUVVjc1IwRkJSeXhIUVVGSExFdEJRVXNzUjBGQlJ5eERRVUZETEZsQlFWa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0SlFVTndSQ3hOUVVGTkxFMUJRVTBzUjBGQlJ5eEpRVUZKTEZWQlFWVXNRMEZCUXl4TlFVRk5MRU5CUVVNc1EwRkJRenRKUVVWMFF5eExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzVFVGQlRTeEZRVUZGTEVWQlFVVXNRMEZCUXp0UlFVTTNRaXhOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NTMEZCU3l4SFFVRkhMRU5CUVVNc1EwRkJRenRKUVVWNFFpeFBRVUZQTEUxQlFVMHNRMEZCUXp0QlFVTm9RaXhEUVVGRE8wRkJSVVE3T3pzN096czdSMEZQUnp0QlFVTklMRTFCUVUwc1ZVRkJWU3hQUVVGUExFTkJRVU1zVFVGQllTeEZRVUZGTEU5QlFVOHNSMEZCUnl4TFFVRkxPMGxCUTNCRUxFMUJRVTBzVFVGQlRTeEhRVUZITEU5QlFVOHNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGUkxFVkJRVVVzUTBGQlVTeEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZSTEVWQlFVVXNRMEZCVVN4RlFVRkZMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dEpRVU4yUnl4TlFVRk5MRXRCUVVzc1IwRkJSeXhEUVVGRExFTkJRVTBzUlVGQlJTeERRVUZUTEVWQlFVVXNSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNjVUpCUVhGQ08wbEJRMnhGTEUxQlFVMHNUMEZCVHl4SFFVRkhMRU5CUVVNc1EwRkJVU3hGUVVGRkxFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXh0UWtGQmJVSTdTVUZEZGtRc1RVRkJUU3hSUVVGUkxFZEJRVWNzUTBGQlF5eEhRVUZWTEVWQlFVVXNSVUZCUlN4RFFVRkRMRWRCUVVjc1EwRkJReXhIUVVGSExFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXp0SlFVTXhSU3hQUVVGUExGRkJRVkVzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXp0QlFVTXhRaXhEUVVGRE8wRkJSVVE3T3pzN096czdSMEZQUnp0QlFVTklMRTFCUVUwc1ZVRkJWU3huUWtGQlowSXNRMEZCUXl4TlFVRmpMRVZCUVVVc1EwRkJVeXhGUVVGRkxFbEJRWGRETzBsQlEyeEhMRk5CUVZNc1MwRkJTeXhEUVVGRExFMUJRV2RETEVWQlFVVXNUMEZCT0VJN1VVRkROMFVzU1VGQlNTeFJRVUZSTEVkQlFVY3NTVUZCU1N4RFFVRkRPMUZCUTNCQ0xFbEJRVWtzVlVGQlZTeEhRVUZITEVsQlFVa3NRMEZCUXp0UlFVVjBRaXhMUVVGTExFMUJRVTBzVDBGQlR5eEpRVUZKTEUxQlFVMHNSVUZCUlR0WlFVTTFRaXhOUVVGTkxHTkJRV01zUjBGQlJ5eFBRVUZQTEVOQlFVTXNUMEZCVHl4RFFVRkRMRU5CUVVNN1dVRkRlRU1zU1VGQlNTeFZRVUZWTEVsQlFVa3NTVUZCU1N4SlFVRkpMR05CUVdNc1IwRkJSeXhWUVVGVkxFVkJRVVU3WjBKQlEzSkVMRkZCUVZFc1IwRkJSeXhQUVVGUExFTkJRVU03WjBKQlEyNUNMRlZCUVZVc1IwRkJSeXhqUVVGakxFTkJRVU03WVVGRE4wSTdVMEZEUmp0UlFVTkVMRTlCUVU4c1VVRkJVU3hEUVVGRE8wbEJRMnhDTEVOQlFVTTdTVUZGUkN4TlFVRk5MRTFCUVUwc1IwRkJSeXhEUVVGRExGTkJRVk1zUTBGQlF5eE5RVUZOTEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRKUVVOMlF5eE5RVUZOTEZWQlFWVXNSMEZCUnl4SlFVRkpMRWRCUVVjc1JVRkJSU3hEUVVGRE8wbEJSVGRDTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eE5RVUZOTEVWQlFVVXNSVUZCUlN4RFFVRkRMRVZCUVVVN1VVRkRMMElzU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXl4UlFVRlJMRU5CUVVNc1EwRkJReXhEUVVGRE8xbEJRM0pDTEZWQlFWVXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03UzBGRGNrSTdTVUZGUkN4UFFVRlBMRTFCUVUwc1EwRkJReXhOUVVGTkxFZEJRVWNzUTBGQlF5eEZRVUZGTzFGQlEzaENMRTFCUVUwc1IwRkJSeXhIUVVGSExFdEJRVXNzUTBGRFppeFZRVUZWTEVOQlFVTXNUVUZCVFN4RlFVRTRRaXhGUVVNdlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RlFVRkZMRU5CUVVNc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eExRVUZMTEVOQlFVTXNTVUZCU1N4RlFVRkZMRTFCUVUwc1EwRkJReXhIUVVGSExFTkJRVU1zVlVGQlV5eEhRVUZITEVWQlFVVXNTMEZCU3p0WlFVTjRSQ3hQUVVGUExFbEJRVWtzUTBGQlF5eERRVUZETEVWQlFVVXNSMEZCUnl4RFFVRkRMRU5CUVVNN1VVRkRkRUlzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMUZCUTFBc1NVRkJTU3hIUVVGSExFVkJRVVU3V1VGRFVDeE5RVUZOTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRE8xbEJRMnBDTEZWQlFWVXNRMEZCUXl4TlFVRk5MRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU03VTBGRGVFSTdTMEZEUmp0SlFVTkVMRTlCUVU4c1RVRkJUU3hEUVVGRE8wRkJRMmhDTEVOQlFVTTdRVUZGUkRzN08wZEJSMGM3UVVGRFNDeE5RVUZOTEZWQlFWVXNVMEZCVXl4RFFVRkRMRWxCUVZrN1NVRkRjRU1zU1VGQlNTeEpRVUZKTEVkQlFVY3NRMEZCUXl4RFFVRkRPMGxCUTJJc1NVRkJTU3hIUVVGSExFZEJRVWNzUTBGQlF5eERRVUZETzBsQlJWb3NTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXl4TlFVRk5MRVZCUVVVc1JVRkJSU3hEUVVGRE8xRkJRMnhETEVsQlFVa3NTVUZCU1N4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRmJFSXNTVUZCU1N4SlFVRkpMRWxCUVVrc1EwRkJReXhOUVVGTkxFTkJRVU03U1VGRmNFSXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXl4TlFVRk5MRVZCUVVVc1JVRkJSU3hEUVVGRE8xRkJRMnhETEVkQlFVY3NTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eEpRVUZKTEVOQlFVTXNRMEZCUXp0SlFVVTNReXhIUVVGSExFZEJRVWNzU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4SFFVRkhMRWRCUVVjc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF5eERRVUZETzBsQlJXNURMRXRCUVVzc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNc1RVRkJUU3hGUVVGRkxFVkJRVVVzUTBGQlF6dFJRVU5zUXl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1NVRkJTU3hEUVVGRExFZEJRVWNzUjBGQlJ5eERRVUZETzBsQlJXNURMRTlCUVU4c1NVRkJTU3hEUVVGRE8wRkJRMlFzUTBGQlF6dEJRVVZFT3pzN096dEhRVXRITzBGQlEwZ3NUVUZCVFN4VlFVRlZMR0ZCUVdFc1EwRkJReXhEUVVGUkxFVkJRVVVzUTBGQlVUdEpRVU01UXl4TlFVRk5MRWxCUVVrc1IwRkJSeXhKUVVGSkxFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0SlFVTjRRaXhQUVVGUExFdEJRVXNzUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFMUJRVTBzUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RlFVRkZMRU5CUVVNc1EwRkJReXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhOUVVGTkxFVkJRVVVzUTBGQlF5eERRVUZETzBGQlEzSkZMRU5CUVVNaUxDSnpiM1Z5WTJWelEyOXVkR1Z1ZENJNld5SnBiWEJ2Y25RZ2UwMWhkSEpwZUN3Z1ZtVmpkRzl5TENCRGIyOXlaR2x1WVhSbGN5d2dWbVZqZEc5eWN5d2dSR2x6ZEdGdVkyVk5aWFJ5YVdOOUlHWnliMjBnSnk0dmRIbHdaUzFrWldOc1lYSmhkR2x2Ym5Nbk8xeHVhVzF3YjNKMElIdHlZVzVrYjIxR2JHOWhkQ3dnY21GdVpHOXRTVzUwZlNCbWNtOXRJQ2N1TDNKaGJtUnZiU2M3WEc1Y2JpOHFLbHh1SUNvZ1FYTnpaWEowY3lCaElHTnZibVJwZEdsdmJpQmllU0IwYUhKdmQybHVaeUJoYmlCRmNuSnZjaTVjYmlBcVhHNGdLaUJBWlhod2IzSjBYRzRnS2lCQWNHRnlZVzBnZTJKdmIyeGxZVzU5SUZ0amIyNWthWFJwYjI0OVptRnNjMlZkSUVOdmJtUnBkR2x2YmlCMGJ5QmhjM05sY25RdVhHNGdLaUJBY0dGeVlXMGdlM04wY21sdVozMGdXMjFsYzNOaFoyVTlKMEZ6YzJWeWRHbHZiaUJsY25KdmNpNG5YU0JOWlhOellXZGxJSFJ2SUc5MWRIQjFkQzVjYmlBcUlFQjBhSEp2ZDNNZ2UwVnljbTl5ZlZ4dUlDb3ZYRzVsZUhCdmNuUWdablZ1WTNScGIyNGdZWE56WlhKMEtHTnZibVJwZEdsdmJqb2dZbTl2YkdWaGJpQTlJR1poYkhObExDQnRaWE56WVdkbE9pQnpkSEpwYm1jZ1BTQW5RWE56WlhKMGFXOXVJR1Z5Y205eUxpY3BJSHRjYmlBZ2FXWWdLQ0ZqYjI1a2FYUnBiMjRwWEc0Z0lDQWdkR2h5YjNjZ2JtVjNJRVZ5Y205eUtHMWxjM05oWjJVcE8xeHVmVnh1WEc0dktpcGNiaUFxSUVOeVpXRjBaWE1nYm1WM0lIUjNieTFrYVcxbGJuTnBiMjVoYkNCaGNuSmhlU0JoYm1RZ1ptbHNiSE1nYVhRZ2QybDBhQ0IwYUdVZ2RtRnNkV1VnWjJsMlpXNHVYRzRnS2x4dUlDb2dRSEJoY21GdElIdHVkVzFpWlhKOUlHUnBiV1Z1YzJsdmJqRWdWR2hsSUdacGNuTjBJR1JwYldWdWMybHZiaUJ2WmlCMGFHVWdZMjl2Y21ScGJtRjBaWE1nS0c1MWJXSmxjaUJ2WmlCeWIzZHpLUzVjYmlBcUlFQndZWEpoYlNCN2JuVnRZbVZ5ZlNCa2FXMWxibk5wYjI0eUlGUm9aU0J6WldOdmJtUWdaR2x0Wlc1emFXOXVJRzltSUhSb1pTQmpiMjl5WkdsdVlYUmxjeUFvYm5WdFltVnlJRzltSUdOdmJIVnRibk1wTGx4dUlDb2dRSEJoY21GdElIdHVkVzFpWlhKOUlGdG1hV3hzUFRCZElFRWdkbUZzZFdVZ2RHOGdabWxzYkNCMGFHVWdZMjl2Y21ScGJtRjBaWE1nZDJsMGFDNWNiaUFxSUVCeVpYUjFjbTRnZTBOdmIzSmthVzVoZEdWemZTQkJJSFIzYnkxa2FXMWxibk5wYjI1aGJDQm1hV3hzWldRZ2QybDBhQ0IwYUdVZ2RtRnNkV1VnWjJsMlpXNHVYRzRnS2lCQWRHOWtieUJOYVdkb2RDQmlaU0J6Ykc5M0lITnBibU5sSUhWelpXUWdRWEp5WVhrdWJXRndMaUJRY205aVlXSnNlU0J1WldWa2N5QndaWEptYjNKdFlXNWpaU0J5WlhacGMybHZiaTVjYmlBcUwxeHVablZ1WTNScGIyNGdhVzVwZEVOdmIzSmthVzVoZEdWektHUnBiV1Z1YzJsdmJqRTZJRzUxYldKbGNpd2daR2x0Wlc1emFXOXVNam9nYm5WdFltVnlMQ0JtYVd4c09pQnVkVzFpWlhJZ1BTQXdLVG9nUTI5dmNtUnBibUYwWlhNZ2UxeHVJQ0J5WlhSMWNtNGdibVYzSUVGeWNtRjVLR1JwYldWdWMybHZiakVwTG1acGJHd29abWxzYkNrdWJXRndLQ2dwSUQwK0lDaHVaWGNnVm1WamRHOXlLR1JwYldWdWMybHZiaklwTG1acGJHd29abWxzYkNrcEtUdGNibjFjYmx4dUx5b3FYRzRnS2lCVWNtRnVjM0J2YzJVZ2JXRjBjbWw0TGx4dUlDcGNiaUFxSUVCbGVIQnZjblJjYmlBcUlFQndZWEpoYlNCN1RXRjBjbWw0ZlNCdFlYUnlhWGdnVkdobElHMWhkSEpwZUNCMGJ5QmlaU0IwY21GdWMzQnZjMlZrTGx4dUlDb2dRSEpsZEhWeWJpQjdUV0YwY21sNGZTQlVjbUZ1YzNCdmMyVmtJRzFoZEhKcGVDNWNiaUFxSUVCMGIyUnZJRTFwWjJoMElHSmxJSE5zYjNjZ2MybHVZMlVnZFhObFpDQkJjbkpoZVM1dFlYQXVJRkJ5YjJKaFlteDVJRzVsWldSeklIQmxjbVp2Y20xaGJtTmxJSEpsZG1semFXOXVMbHh1SUNvdlhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z2RISmhibk53YjNObFRXRjBjbWw0S0cxaGRISnBlRG9nVFdGMGNtbDRLVG9nVFdGMGNtbDRJSHRjYmlBZ2NtVjBkWEp1SUc1bGR5QkJjbkpoZVNodFlYUnlhWGhiTUYwdWJHVnVaM1JvS1M1bWFXeHNLREFwWEc0Z0lDQWdMbTFoY0Nnb1h5d2dhU2tnUFQ0Z0tHNWxkeUJXWldOMGIzSW9iV0YwY21sNExteGxibWQwYUNrdVptbHNiQ2d3S1M1dFlYQW9LRjhzSUdvcElEMCtJQ2h0WVhSeWFYaGJhbDFiYVYwcEtTa3BPMXh1ZlZ4dVhHNHZLaXBjYmlBcUlFRmtaSE1nZEhkdklIWmxZM1J2Y25NZ2QybDBhQ0IwYUdVZ2MyVmpiMjVrSUc5dVpTQjBieUJpWlNCdGRXeDBhWEJzYVdWa0lHSjVJSFJvWlNCbmFYWmxiaUJ5WVhScGJ5NWNiaUFxWEc0Z0tpQkFaWGh3YjNKMFhHNGdLaUJBY0dGeVlXMGdlMVpsWTNSdmNuMGdjQ0JVYUdVZ1ptbHljM1FnZG1WamRHOXlJSFJ2SUdGa1pDNWNiaUFxSUVCd1lYSmhiU0I3Vm1WamRHOXlmU0J4SUZSb1pTQnpaV052Ym1RZ2RtVmpkRzl5SUhSdklHRmtaQzVjYmlBcUlFQndZWEpoYlNCN2JuVnRZbVZ5ZlNCYmJYVnNkR2x3YkdsbGNqMHhYU0JCSUcxMWJIUnBjR3hwWlhJZ2RHOGdZbVVnZFhObFpDQmlaV1p2Y21VZ2RHaGxJSE5sWTI5dVpDQjJaV04wYjNJZ2FYTWdZV1JrWldRdVhHNGdLaUJBY21WMGRYSnVJSHRXWldOMGIzSjlJRTVsZHlCMlpXTjBiM0lnWTI5dWRHRnBibVZrSUhSb1pTQnlaWE4xYkhRZ2IyWWdiM0JsY21GMGFXOXVJSEFyYlhWc2RHbHdiR2xsY2lweExseHVJQ292WEc1bGVIQnZjblFnWm5WdVkzUnBiMjRnZG1WamRHOXlRV1JrS0hBNklGWmxZM1J2Y2l3Z2NUb2dWbVZqZEc5eUxDQnRkV3gwYVhCc2FXVnlPaUJ1ZFcxaVpYSWdQU0F4S1RvZ1ZtVmpkRzl5SUh0Y2JpQWdZMjl1YzNRZ2JrbDBaVzF6SUQwZ2NDNXNaVzVuZEdnN1hHNWNiaUFnWVhOelpYSjBLRzVKZEdWdGN5QTlQU0J4TG14bGJtZDBhQ3dnSjFabFkzUnZjaUJzWlc1bmRHaHpJR1J2SUc1dmRDQnRZWFJqYUM0bktUdGNibHh1SUNCamIyNXpkQ0IwYjNSaGJDQTlJRzVsZHlCV1pXTjBiM0lvYmtsMFpXMXpLVHRjYmx4dUlDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJSEF1YkdWdVozUm9PeUFySzJrcFhHNGdJQ0FnZEc5MFlXeGJhVjBnUFNCd1cybGRJQ3NnYlhWc2RHbHdiR2xsY2lBcUlIRmJhVjA3WEc1Y2JpQWdjbVYwZFhKdUlIUnZkR0ZzTzF4dWZWeHVYRzR2S2lwY2JpQXFJRk4xYlhNZ2RHaGxJSFpsWTNSdmNpZHpJR2wwWlcxekxseHVJQ3BjYmlBcUlFQndZWEpoYlNCN1ZtVmpkRzl5ZlNCMklGUm9aU0IyWldOMGIzSWdkRzhnWW1VZ2MzVnRiV1ZrTGx4dUlDb2dRSEpsZEhWeWJpQjdiblZ0WW1WeWZTQlVhR1VnZG1WamRHOXlKM01nYVhSbGJYTWdjM1Z0TGx4dUlDb3ZYRzVtZFc1amRHbHZiaUJwZEdWdGMxTjFiU2gyT2lCV1pXTjBiM0lwT2lCdWRXMWlaWElnZTF4dUlDQnNaWFFnZEc5MFlXd2dQU0F3TzF4dVhHNGdJR1p2Y2lBb2JHVjBJR2tnUFNBd095QnBJRHdnZGk1c1pXNW5kR2c3SUNzcmFTbGNiaUFnSUNCMGIzUmhiQ0FyUFNCMlcybGRPMXh1WEc0Z0lISmxkSFZ5YmlCMGIzUmhiRHRjYm4xY2JseHVMeW9xWEc0Z0tpQlRkWEZoY21WeklIUm9aU0IyWldOMGIzSW5jeUJwZEdWdGN5NWNiaUFxWEc0Z0tpQkFjR0Z5WVcwZ2UxWmxZM1J2Y24wZ2RpQlVhR1VnZG1WamRHOXlJSFJ2SUhOeGRXRnlaUzVjYmlBcUlFQnlaWFIxY200Z2UxWmxZM1J2Y24wZ1FTQnVaWGNnZG1WamRHOXlJR052Ym5SaGFXNXBibWNnZEdobElHOXlhV2RwYm1Gc0ozTWdhWFJsYlhNZ2MzRjFZWEpsWkM1Y2JpQXFMMXh1Wm5WdVkzUnBiMjRnZG1WamRHOXlVM0YxWVhKbEtIWTZJRlpsWTNSdmNpazZJRlpsWTNSdmNpQjdYRzRnSUdOdmJuTjBJRzVKZEdWdGN5QTlJSFl1YkdWdVozUm9PMXh1SUNCamIyNXpkQ0IwYjNSaGJDQTlJRzVsZHlCV1pXTjBiM0lvYmtsMFpXMXpLVHRjYmx4dUlDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJSFl1YkdWdVozUm9PeUFySzJrcFhHNGdJQ0FnZEc5MFlXeGJhVjBnUFNCMlcybGRJQ29nZGx0cFhUdGNibHh1SUNCeVpYUjFjbTRnZEc5MFlXdzdYRzU5WEc1Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCMlpXTjBiM0pNWlc1bmRHZ29kam9nVm1WamRHOXlLVG9nYm5WdFltVnlJSHRjYmlBZ2JHVjBJSE54Y2xOMWJUb2diblZ0WW1WeUlEMGdNRHRjYmlBZ1ptOXlJQ2hzWlhRZ2FUb2diblZ0WW1WeUlEMGdNRHNnYVNBOElIWXViR1Z1WjNSb095QnBLeXNwWEc0Z0lDQWdjM0Z5VTNWdElDczlJSFpiYVYwZ0tpQjJXMmxkTzF4dUlDQnlaWFIxY200Z1RXRjBhQzV6Y1hKMEtITnhjbE4xYlNrN1hHNTlYRzVjYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUIyWldOMGIzSkViM1JRY205a2RXTjBLSFl4T2lCV1pXTjBiM0lzSUhZeU9pQldaV04wYjNJcE9pQnVkVzFpWlhJZ2UxeHVJQ0JwWmlBb2RqRXViR1Z1WjNSb0lDRTlJSFl5TG14bGJtZDBhQ2xjYmlBZ0lDQjBhSEp2ZHlCdVpYY2dSWEp5YjNJb0oxUm9aU0JrYVcxbGJuTnBiMjVoYkdsMGVTQnZaaUIwYUdVZ2RtVmpkRzl5Y3lCdGRYTjBJRzFoZEdOb0p5azdYRzRnSUd4bGRDQndjbTlrT2lCdWRXMWlaWElnUFNBd08xeHVJQ0JtYjNJZ0tHeGxkQ0JwT2lCdWRXMWlaWElnUFNBd095QnBJRHdnZGpFdWJHVnVaM1JvT3lCcEt5c3BYRzRnSUNBZ2NISnZaQ0FyUFNCMk1WdHBYU0FxSUhZeVcybGRPMXh1SUNCeVpYUjFjbTRnY0hKdlpEdGNibjFjYmx4dUx5b3FYRzRnS2lCRGNtVmhkR1Z6SUdFZ2JXRjBjbWw0SUdacGJHeGxaQ0IzYVhSb0lISmhibVJ2YlNCbWJHOWhkR2x1WnlCd2IybHVkQ0IyWVd4MVpYTXVYRzRnS2x4dUlDb2dRR1Y0Y0c5eWRGeHVJQ29nUUhCaGNtRnRJSHR1ZFcxaVpYSjlJR1JwYldWdWMybHZiakVnVkdobElHWnBjbk4wSUdScGJXVnVjMmx2YmlCdlppQjBhR1VnYldGMGNtbDRMbHh1SUNvZ1FIQmhjbUZ0SUh0dWRXMWlaWEo5SUdScGJXVnVjMmx2YmpJZ1ZHaGxJSE5sWTI5dVpDQmthVzFsYm5OcGIyNGdiMllnZEdobElHMWhkSEpwZUM1Y2JpQXFJRUJ3WVhKaGJTQjdiblZ0WW1WeWZTQmJjMk5oYkdVOU1TNWRJRTFoZUNCMllXeDFaU0JuYVhabGJpQmllU0J5WVc1a2IyMGdaMlZ1WlhKaGRHOXlMbHh1SUNvZ1FISmxkSFZ5YmlCN1RXRjBjbWw0ZlNCQklHNWxkeUJ0WVhSeWFYZ2dabWxzYkdWa0lIZHBkR2dnY21GdVpHOXRJR1pzYjJGMGFXNW5JSEJ2YVc1MElDQjJZV3gxWlhNdVhHNGdLaTljYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUJtYVd4c1VtRnVaRzl0VFdGMGNtbDRLR1JwYldWdWMybHZiakU2SUc1MWJXSmxjaXdnWkdsdFpXNXphVzl1TWpvZ2JuVnRZbVZ5TENCelkyRnNaVG9nYm5WdFltVnlJRDBnTVM0cE9pQk5ZWFJ5YVhnZ2UxeHVJQ0JqYjI1emRDQnRZWFJ5YVhnZ1BTQnBibWwwUTI5dmNtUnBibUYwWlhNb1pHbHRaVzV6YVc5dU1Td2daR2x0Wlc1emFXOXVNaWs3WEc1Y2JpQWdabTl5SUNoc1pYUWdhU0E5SURBN0lHa2dQQ0JrYVcxbGJuTnBiMjR4T3lBcksya3BJSHRjYmlBZ0lDQm1iM0lnS0d4bGRDQnFJRDBnTURzZ2FpQThJR1JwYldWdWMybHZiakk3SUNzcmFpbGNiaUFnSUNBZ0lHMWhkSEpwZUZ0cFhWdHFYU0E5SUhKaGJtUnZiVVpzYjJGMEtITmpZV3hsS1R0Y2JpQWdmVnh1SUNCeVpYUjFjbTRnYldGMGNtbDRPMXh1ZlZ4dVhHNHZLaXBjYmlBcUlFTmhiR04xYkdGMFpYTWdSWFZqYkdsa1pXRnVJR1JwYzNSaGJtTmxJR0psZEhkbFpXNGdkSGR2SUhabFkzUnZjbk11WEc0Z0tseHVJQ29nUUdWNGNHOXlkRnh1SUNvZ1FIQmhjbUZ0SUh0V1pXTjBiM0o5SUhBZ1ZHaGxJR1pwY25OMElIWmxZM1J2Y2k1Y2JpQXFJRUJ3WVhKaGJTQjdWbVZqZEc5eWZTQnhJRlJvWlNCelpXTnZibVFnZG1WamRHOXlMbHh1SUNvZ1FISmxkSFZ5YmlCN2JuVnRZbVZ5ZlNCRmRXTnNhV1JsWVc0Z1pHbHpkR0Z1WTJVZ1ltVjBkMlZsYmlCMGFHVWdaMmwyWlc0Z2RtVmpkRzl5Y3k1Y2JpQXFMMXh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJR05oYkdOMWJHRjBaVVYxWTJ4cFpHVmhia1JwYzNSaGJtTmxLSEE2SUZabFkzUnZjaXdnY1RvZ1ZtVmpkRzl5S1RvZ2JuVnRZbVZ5SUh0Y2JpQWdZMjl1YzNRZ1pHbG1aaUE5SUhabFkzUnZja0ZrWkNod0xDQnhMQ0F0TVNrN1hHNGdJR052Ym5OMElITnhaR2xtWmlBOUlIWmxZM1J2Y2xOeGRXRnlaU2hrYVdabUtUdGNiaUFnWTI5dWMzUWdjM0ZrYVdabVUzVnRiU0E5SUdsMFpXMXpVM1Z0S0hOeFpHbG1aaWs3WEc0Z0lISmxkSFZ5YmlCTllYUm9Mbk54Y25Rb2MzRmthV1ptVTNWdGJTazdYRzU5WEc1Y2JpOHFLbHh1SUNvZ1EzSmxZWFJsY3lCaElHUnBjM1JoYm1ObElHMWhkSEpwZUNCMWMybHVaeUJoSUdOMWMzUnZiU0JrYVhOMFlXNWpaU0JtZFc1amRHbHZiaTVjYmlBcVhHNGdLaUJBWlhod2IzSjBYRzRnS2lCQWNHRnlZVzBnZTFabFkzUnZjbk45SUdSaGRHRWdTVzV3ZFhRZ2RtVmpkRzl5Y3lCMGJ5QmpZV3hqZFd4aGRHVWdaR2x6ZEdGdVkyVnpMbHh1SUNvZ1FIQmhjbUZ0SUh0RWFYTjBZVzVqWlUxbGRISnBZMzBnWkdsemRHRnVZMlVnUTNWemRHOXRJR1JwYzNSaGJtTmxJR1oxYm1OMGFXOXVMbHh1SUNvZ1FISmxkSFZ5YmlCN1RXRjBjbWw0ZlNCRFlXeGpkV3hoZEdWa0lHTjFjM1J2YlNCa2FYTjBZVzVqWlNCdFlYUnlhWGd1WEc0Z0tpOWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQmpZV3hqUkdsemRHRnVZMlZOWVhSeWFYZ29aR0YwWVRvZ1ZtVmpkRzl5Y3l3Z1pHbHpkR0Z1WTJVNklFUnBjM1JoYm1ObFRXVjBjbWxqS1RvZ1RXRjBjbWw0SUh0Y2JpQWdZMjl1YzNRZ2JrbDBaVzF6SUQwZ1pHRjBZUzVzWlc1bmRHZzdYRzRnSUdOdmJuTjBJRzFoZEhKcGVDQTlJR2x1YVhSRGIyOXlaR2x1WVhSbGN5aHVTWFJsYlhNc0lHNUpkR1Z0Y3l3Z01DazdYRzVjYmlBZ1ptOXlJQ2hzWlhRZ2FTQTlJREE3SUdrZ1BDQnVTWFJsYlhNN0lDc3JhU2tnZTF4dUlDQWdJR1p2Y2lBb2JHVjBJR29nUFNCcElDc2dNVHNnYWlBOElHNUpkR1Z0Y3pzZ0t5dHFLU0I3WEc0Z0lDQWdJQ0JqYjI1emRDQmtPaUJ1ZFcxaVpYSWdQU0FvWkdGMFlWdHBYU0E5UFNCdWRXeHNLU0I4ZkNBb1pHRjBZVnRxWFNBOVBTQnVkV3hzS1NBL0lEQWdPaUJrYVhOMFlXNWpaU2hrWVhSaFcybGRMQ0JrWVhSaFcycGRLVHRjYmlBZ0lDQWdJRzFoZEhKcGVGdHBYVnRxWFNBOUlHMWhkSEpwZUZ0cVhWdHBYU0E5SUdRN1hHNGdJQ0FnZlZ4dUlDQjlYRzRnSUhKbGRIVnliaUJ0WVhSeWFYZzdYRzU5WEc1Y2JpOHFLbHh1SUNvZ1EzSmxZWFJsY3lCaElHUnBjM1JoYm1ObElHMWhkSEpwZUNCMWMybHVaeUJoSUdOMWMzUnZiU0JrYVhOMFlXNWpaU0JtZFc1amRHbHZiaTVjYmlBcVhHNGdLaUJBWlhod2IzSjBYRzRnS2lCQWNHRnlZVzBnZTFabFkzUnZjbk45SUdSaGRHRWdTVzV3ZFhRZ2RtVmpkRzl5Y3lCMGJ5QmpZV3hqZFd4aGRHVWdaR2x6ZEdGdVkyVnpMbHh1SUNvZ1FIQmhjbUZ0SUh0RWFYTjBZVzVqWlUxbGRISnBZMzBnWkdsemRHRnVZMlVnUTNWemRHOXRJR1JwYzNSaGJtTmxJR1oxYm1OMGFXOXVMbHh1SUNvZ1FISmxkSFZ5YmlCN1RXRjBjbWw0ZlNCRFlXeGpkV3hoZEdWa0lHTjFjM1J2YlNCa2FYTjBZVzVqWlNCdFlYUnlhWGd1WEc0Z0tpOWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQmpZV3hqVG05eWJXRnNhWHBsWkVScGMzUmhibU5sVFdGMGNtbDRLR1JoZEdFNklGWmxZM1J2Y25Nc0lHUnBjM1JoYm1ObE9pQkVhWE4wWVc1alpVMWxkSEpwWXlrNklFMWhkSEpwZUNCN1hHNGdJR052Ym5OMElHNUpkR1Z0Y3lBOUlHUmhkR0V1YkdWdVozUm9PMXh1SUNCamIyNXpkQ0J0WVhSeWFYZ2dQU0JwYm1sMFEyOXZjbVJwYm1GMFpYTW9ia2wwWlcxekxDQnVTWFJsYlhNc0lEQXBPMXh1SUNCc1pYUWdiV0Y0SUQwZ1RuVnRZbVZ5TGsxSlRsOVdRVXhWUlR0Y2JpQWdiR1YwSUcxcGJpQTlJRTUxYldKbGNpNU5RVmhmVmtGTVZVVTdYRzRnSUdadmNpQW9iR1YwSUdrZ1BTQXdPeUJwSUR3Z2JrbDBaVzF6T3lBcksya3BJSHRjYmlBZ0lDQm1iM0lnS0d4bGRDQnFJRDBnYVRzZ2FpQThJRzVKZEdWdGN6c2dLeXRxS1NCN1hHNGdJQ0FnSUNCamIyNXpkQ0JrT2lCdWRXMWlaWElnUFNBb1pHRjBZVnRwWFNBOVBTQnVkV3hzS1NCOGZDQW9aR0YwWVZ0cVhTQTlQU0J1ZFd4c0lIeDhJR2tnUFQwOUlHb3BJRDhnTUNBNklHUnBjM1JoYm1ObEtHUmhkR0ZiYVYwc0lHUmhkR0ZiYWwwcE8xeHVJQ0FnSUNBZ2JXRjBjbWw0VzJsZFcycGRJRDBnYldGMGNtbDRXMnBkVzJsZElEMGdaRHRjYmlBZ0lDQWdJR2xtSUNoa0lENGdiV0Y0S1NCdFlYZ2dQU0JrTzF4dUlDQWdJQ0FnYVdZZ0tHUWdQQ0J0YVc0cElHMXBiaUE5SUdRN1hHNGdJQ0FnZlZ4dUlDQjlYRzRnSUdadmNpQW9iR1YwSUdrZ1BTQXdPeUJwSUR3Z2JrbDBaVzF6T3lBcksya3BJSHRjYmlBZ0lDQm1iM0lnS0d4bGRDQnFJRDBnYVNBcklERTdJR29nUENCdVNYUmxiWE03SUNzcmFpbGNiaUFnSUNBZ0lHMWhkSEpwZUZ0cFhWdHFYU0E5SUcxaGRISnBlRnRxWFZ0cFhTQTlJQ2h0WVhSeWFYaGJhVjFiYWwwZ0xTQnRhVzRwSUM4Z0tHMWhlQ0F0SUcxcGJpazdYRzRnSUgxY2JpQWdjbVYwZFhKdUlHMWhkSEpwZUR0Y2JuMWNibHh1THlvcUlFZGxibVZ5WVhSbGN5QmhjbkpoZVNCbWNtOXRJR0VnY21GdVoyVWdXMkpsWjJsdU95QmxibVJkSUc5eUlGdGlaV2RwYmpzZ1pXNWtLU0JwWmlCbGJtUkZlR05zZFhOcGRtVXVJQ29xTDF4dVpYaHdiM0owSUdaMWJtTjBhVzl1SUdkbGJsSmhibWRsS0dKbFoybHVPaUJ1ZFcxaVpYSXNJR1Z1WkRvZ2JuVnRZbVZ5TENCbGJtUkZlR05zZFhOcGRtVWdQU0JtWVd4elpTazZJRWx1ZERNeVFYSnlZWGtnZTF4dUlDQmpiMjV6ZENCdVNYUmxiWE1nUFNCbGJtUWdMU0JpWldkcGJpQXJJQ2hsYm1SRmVHTnNkWE5wZG1VZ1B5QXdJRG9nTVNrN1hHNGdJR052Ym5OMElITmxjbWxsY3lBOUlHNWxkeUJKYm5Rek1rRnljbUY1S0c1SmRHVnRjeWs3WEc1Y2JpQWdabTl5SUNoc1pYUWdhU0E5SURBN0lHa2dQQ0J1U1hSbGJYTTdJQ3NyYVNsY2JpQWdJQ0J6WlhKcFpYTmJhVjBnUFNCaVpXZHBiaUFySUdrN1hHNWNiaUFnY21WMGRYSnVJSE5sY21sbGN6dGNibjFjYmx4dUx5b3FYRzRnS2lCU1pYUjFjbTV6SUc5eVpHVnlJRzltSUhaaGJIVmxjeUJoY3lCcFppQjBhR1Y1SUdGeVpTQnpiM0owWldRdVhHNGdLbHh1SUNvZ1FHVjRjRzl5ZEZ4dUlDb2dRSEJoY21GdElIdGhibmxiWFgwZ2RtRnNkV1Z6SUVsdWNIVjBJR0Z5Y21GNUxseHVJQ29nUUhCaGNtRnRJSHRpYjI5c1pXRnVmU0JiY21WMlpYSnpaVDFtWVd4elpWMGdWMmhsZEdobGNpQjBieUJ5WlhSMWNtNGdjbVYyWlhKelpXUWdiM0prWlhJdVhHNGdLaUJBY21WMGRYSnVJSHR1ZFcxaVpYSmJYWDBnVkdobElHOXlaR1Z5SUdOdmJYQjFkR1ZrTGx4dUlDb3ZYRzVsZUhCdmNuUWdablZ1WTNScGIyNGdZWEpuVTI5eWRDaDJZV3gxWlhNNklHRnVlVnRkTENCeVpYWmxjbk5sSUQwZ1ptRnNjMlVwT2lCdWRXMWlaWEpiWFNCN1hHNGdJR052Ym5OMElITnZjblJtYmlBOUlISmxkbVZ5YzJVZ1B5QW9ZVG9nWVc1NVcxMHNJR0k2SUdGdWVWdGRLU0E5UGlBb1lsc3dYU0F0SUdGYk1GMHBJRG9nS0dFNklHRnVlVnRkTENCaU9pQmhibmxiWFNrZ1BUNGdLR0ZiTUYwZ0xTQmlXekJkS1R0Y2JpQWdZMjl1YzNRZ1pHVmpiM0lnUFNBb2Rqb2dZVzU1TENCcE9pQnVkVzFpWlhJcElEMCtJRnQyTENCcFhUc2dMeThnYzJWMElHbHVaR1Y0SUhSdklIWmhiSFZsWEc0Z0lHTnZibk4wSUhWdVpHVmpiM0lnUFNBb1lUb2dZVzU1VzEwcElEMCtJR0ZiTVYwN0lDOHZJR3hsWVhabElHOXViSGtnYVc1a1pYaGNiaUFnWTI5dWMzUWdYMkZ5WjNOdmNuUWdQU0FvWVhKeU9pQmhibmxiWFNrZ1BUNGdZWEp5TG0xaGNDaGtaV052Y2lrdWMyOXlkQ2h6YjNKMFptNHBMbTFoY0NoMWJtUmxZMjl5S1R0Y2JpQWdjbVYwZFhKdUlGOWhjbWR6YjNKMEtIWmhiSFZsY3lrN1hHNTlYRzVjYmk4cUtseHVJQ29nVW1WMGRYSnVjeUIwYUdVZ2FXNWtaWGhsY3lCdlppQjBhR1VnYlc5emRDQmthWFpsY25ObElHOWlhbVZqZEhNZ1lXTmpiM0prYVc1bklIUnZJSFJvWlNCa2FYTjBJR1oxYm1OMGFXOXVYRzRnS2lCQWNHRnlZVzBnZTI1MWJXSmxjbjBnYkdWdVozUm9JSFJ2ZEdGc0lHNTFiV0psY2lCdlppQnZZbXBsWTNSelhHNGdLaUJBY0dGeVlXMGdlMjUxYldKbGNuMGdiaUJ1ZFcxaVpYSWdiMllnWkdsMlpYSnpaU0JsYkdWdFpXNTBjeUIwYnlCbWFXNWtYRzRnS2lCQWNHRnlZVzBnZXlocE1Ub2diblZ0WW1WeUxDQnBNam9nYm5WdFltVnlLU0E5UGlCdWRXMWlaWEo5SUdScGMzUWdZU0JtZFc1amRHbHZiaUIzYUdsamFDQmpZV3hqZFd4aGRHVnpJR1JwYzNSaGJtTmxJR0psZEhkbFpXNWNiaUFxSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjBkMjhnYjJKcVpXTjBjeUIxYzJsdVp5QjBhR1ZwY2lCcGJtUmxlR1Z6WEc0Z0tpQkFjbVYwZFhKdWN5QjdiblZ0WW1WeVcxMTlJRlJvWlNCcGJtUmxlR1Z6SUc5bUlIUm9aU0J0YjNOMElHUnBkbVZ5YzJVZ2IySnFaV04wYzF4dUlDb3ZYRzVsZUhCdmNuUWdablZ1WTNScGIyNGdaMlYwUkdsMlpYSnpaVk4xWW5ObGRDaHNaVzVuZEdnNklHNTFiV0psY2l3Z2Jqb2diblZ0WW1WeUxDQmthWE4wT2lBb2FURTZJRzUxYldKbGNpd2dhVEk2SUc1MWJXSmxjaWtnUFQ0Z2JuVnRZbVZ5S1RvZ2JuVnRZbVZ5VzEwZ2UxeHVJQ0JtZFc1amRHbHZiaUJ0WVhoQ2VTaDJZV3gxWlhNNklFbDBaWEpoWW14bFNYUmxjbUYwYjNJOGJuVnRZbVZ5UGl3Z2IzSmtaWEpDZVRvZ0tHazZJRzUxYldKbGNpa2dQVDRnYm5WdFltVnlLU0I3WEc0Z0lDQWdiR1YwSUcxaGVGWmhiSFZsSUQwZ2JuVnNiRHRjYmlBZ0lDQnNaWFFnYldGNFQzSmtaWEpDZVNBOUlHNTFiR3c3WEc1Y2JpQWdJQ0JtYjNJZ0tHTnZibk4wSUdWc1pXMWxiblFnYjJZZ2RtRnNkV1Z6S1NCN1hHNGdJQ0FnSUNCamIyNXpkQ0JsYkdWdFpXNTBUM0prWlhKQ2VTQTlJRzl5WkdWeVFua29aV3hsYldWdWRDazdYRzRnSUNBZ0lDQnBaaUFvYldGNFQzSmtaWEpDZVNBOVBTQnVkV3hzSUh4OElHVnNaVzFsYm5SUGNtUmxja0o1SUQ0Z2JXRjRUM0prWlhKQ2VTa2dlMXh1SUNBZ0lDQWdJQ0J0WVhoV1lXeDFaU0E5SUdWc1pXMWxiblE3WEc0Z0lDQWdJQ0FnSUcxaGVFOXlaR1Z5UW5rZ1BTQmxiR1Z0Wlc1MFQzSmtaWEpDZVR0Y2JpQWdJQ0FnSUgxY2JpQWdJQ0I5WEc0Z0lDQWdjbVYwZFhKdUlHMWhlRlpoYkhWbE8xeHVJQ0I5WEc1Y2JpQWdZMjl1YzNRZ2MzVmljMlYwSUQwZ1czSmhibVJ2YlVsdWRDaHNaVzVuZEdnZ0xTQXhLVjA3WEc0Z0lHTnZibk4wSUdOdmJYQnNaVzFsYm5RZ1BTQnVaWGNnVTJWMEtDazdYRzVjYmlBZ1ptOXlJQ2hzWlhRZ2FTQTlJREE3SUdrZ1BDQnNaVzVuZEdnN0lDc3JhU2tnZTF4dUlDQWdJR2xtSUNnaGMzVmljMlYwTG1sdVkyeDFaR1Z6S0drcEtWeHVJQ0FnSUNBZ1kyOXRjR3hsYldWdWRDNWhaR1FvYVNrN1hHNGdJSDFjYmx4dUlDQjNhR2xzWlNBb2MzVmljMlYwTG14bGJtZDBhQ0E4SUc0cElIdGNiaUFnSUNCamIyNXpkQ0JwWkhnZ1BTQnRZWGhDZVNoY2JpQWdJQ0FnSUdOdmJYQnNaVzFsYm5RdWRtRnNkV1Z6S0NrZ1lYTWdTWFJsY21GaWJHVkpkR1Z5WVhSdmNqeHVkVzFpWlhJK0xGeHVJQ0FnSUNBZ0tHa3BJRDArSUUxaGRHZ3ViV2x1TG1Gd2NHeDVLRTFoZEdnc0lITjFZbk5sZEM1dFlYQW9ablZ1WTNScGIyNG9kbUZzTENCcGJtUmxlQ2tnZTF4dUlDQWdJQ0FnSUNCeVpYUjFjbTRnWkdsemRDaHBMQ0IyWVd3cE8xeHVJQ0FnSUNBZ2ZTa3BLVHRjYmlBZ0lDQnBaaUFvYVdSNEtTQjdYRzRnSUNBZ0lDQnpkV0p6WlhRdWNIVnphQ2hwWkhncE8xeHVJQ0FnSUNBZ1kyOXRjR3hsYldWdWRDNWtaV3hsZEdVb2FXUjRLVHRjYmlBZ0lDQjlYRzRnSUgxY2JpQWdjbVYwZFhKdUlITjFZbk5sZER0Y2JuMWNibHh1THlvcVhHNGdLaUJTWlhSMWNtNXpJRzV2Y20xaGJHbDZaV1FnZG1WamRHOXlYRzRnS2lCQWNHRnlZVzBnZTFabFkzUnZjbjBnWkdGMFlTQnVkVzFsY21sallXd2dZWEp5WVhsY2JpQXFMMXh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJRzV2Y20xaGJHbDZaU2hrWVhSaE9pQldaV04wYjNJcE9pQldaV04wYjNJZ2UxeHVJQ0JzWlhRZ2JXVmhiaUE5SURBN1hHNGdJR3hsZENCemRHUWdQU0F3TzF4dVhHNGdJR1p2Y2lBb2JHVjBJR2tnUFNBd095QnBJRHdnWkdGMFlTNXNaVzVuZEdnN0lDc3JhU2xjYmlBZ0lDQnRaV0Z1SUNzOUlHUmhkR0ZiYVYwN1hHNWNiaUFnYldWaGJpQXZQU0JrWVhSaExteGxibWQwYUR0Y2JseHVJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Ec2dhU0E4SUdSaGRHRXViR1Z1WjNSb095QXJLMmtwWEc0Z0lDQWdjM1JrSUNzOUlDaGtZWFJoVzJsZElDMGdiV1ZoYmlrZ0tpQW9aR0YwWVZ0cFhTQXRJRzFsWVc0cE8xeHVYRzRnSUhOMFpDQTlJRTFoZEdndWMzRnlkQ2h6ZEdRZ0x5QmtZWFJoTG14bGJtZDBhQ2s3WEc1Y2JpQWdabTl5SUNoc1pYUWdhU0E5SURBN0lHa2dQQ0JrWVhSaExteGxibWQwYURzZ0t5dHBLVnh1SUNBZ0lHUmhkR0ZiYVYwZ1BTQW9aR0YwWVZ0cFhTQXRJRzFsWVc0cElDOGdjM1JrTzF4dVhHNGdJSEpsZEhWeWJpQmtZWFJoTzF4dWZWeHVYRzR2S2lwY2JpQXFJRVpwYm1SeklITmxkQ0JrYVdabVpYSmxibU5sSUdKbGRIZGxaVzRnZEhkdklHeHBjM1J6TGx4dUlDb2dRSEJoY21GdElIdGhibmxiWFgwZ1lTQlVhR1VnWm1seWMzUWdiR2x6ZEM1Y2JpQXFJRUJ3WVhKaGJTQjdZVzU1VzExOUlHSWdWR2hsSUhObFkyOXVaQ0JzYVhOMExseHVJQ29nUUhKbGRIVnliaUI3WVc1NVcxMTlYRzRnS2k5Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCelpYUkVhV1ptWlhKbGJtTmxLR0U2SUdGdWVWdGRMQ0JpT2lCaGJubGJYU2s2SUdGdWVWdGRJSHRjYmlBZ1kyOXVjM1FnWWxObGRDQTlJRzVsZHlCVFpYUW9ZaWs3WEc0Z0lISmxkSFZ5YmlCQmNuSmhlUzVtY205dEtHNWxkeUJUWlhRb1lTNW1hV3gwWlhJb0tIZ3BJRDArSUNGaVUyVjBMbWhoY3loNEtTa3BMblpoYkhWbGN5Z3BLVHRjYm4xY2JpSmRmUT09Il0sIm5hbWVzIjpbIlN0cmluZ01ldHJpY3NOYW1lcyIsIlZlY3Rvck1ldHJpY3NOYW1lcyIsIkJpdEFycmF5TWV0cmljc05hbWVzIiwiRGlzdGFuY2VNZXRyaWNzU3ViamVjdHMiLCJOdW1iZXJNZXRyaWNzTmFtZXMiLCJjYWxjdWxhdGVFdWNsaWRlYW5EaXN0YW5jZSIsInAiLCJxIiwic3FkaWZmU3VtbSIsInYiLCJ0b3RhbCIsImkiLCJsZW5ndGgiLCJpdGVtc1N1bSIsIm5JdGVtcyIsInZlY3RvclNxdWFyZSIsIm11bHRpcGxpZXIiLCJjb25kaXRpb24iLCJtZXNzYWdlIiwiRXJyb3IiLCJhc3NlcnQiLCJ2ZWN0b3JBZGQiLCJNYXRoIiwic3FydCJdLCJzb3VyY2VSb290IjoiIn0=
package/dist/677.js ADDED
@@ -0,0 +1,2 @@
1
+ "use strict";(self.webpackChunkpeptides=self.webpackChunkpeptides||[]).push([[677],{814:(t,n,e)=>{e.d(n,{k:()=>r});const r=t=>null==t},697:(t,n,e)=>{e.d(n,{Dz:()=>f,KR:()=>o,MI:()=>d,NB:()=>c,UX:()=>l,WI:()=>a,Zd:()=>i,_h:()=>u,aW:()=>g,bX:()=>m,fX:()=>C,s:()=>h,yU:()=>s});var r=e(40);function o(t,n){return k(function(t,n){const e=t.trueCount()+n.trueCount();if(0==e)return 1;const r=t.andWithCountBits(n,!0);return r/(e-r)}(t,n))}function u(t,n){return k(function(t,n){const e=t.trueCount()+n.trueCount();return 0==e?0:2*t.andWithCountBits(n,!0)/e}(t,n))}function i(t,n){return k(function(t,n){const e=t.trueCount()*n.trueCount();return 0==e?0:t.andWithCountBits(n,!0)/Math.sqrt(e)}(t,n))}function a(t,n){return Math.sqrt(t.trueCount()+n.trueCount()-2*t.andWithCountBits(n,!0))}function l(t,n){return t.trueCount()+n.trueCount()-2*t.andWithCountBits(n,!0)}function c(t,n){return k(function(t,n){const e=t.trueCount()+n.trueCount(),r=t.andWithCountBits(n,!0);return r/(2*e-3*r)}(t,n))}function h(t,n){return k(function(t,n){const e=t.trueCount()+n.trueCount(),r=t.trueCount()*n.trueCount();return 0==r?0:t.andWithCountBits(n,!0)*e/(2*r)}(t,n))}function g(t,n){return k(function(t,n){const e=t.trueCount()+n.trueCount(),r=t.trueCount()*n.trueCount();return 0==r?0:(t.andWithCountBits(n,!0)*e-r)/r}(t,n))}function s(t,n){return k(function(t,n){const e=Math.min(t.trueCount(),n.trueCount());return 0==e?0:t.andWithCountBits(n,!0)/e}(t,n))}function f(t,n){return k(function(t,n){const e=Math.max(t.trueCount(),n.trueCount());return 0==e?0:t.andWithCountBits(n,!0)/e}(t,n))}function C(t,n){return k(function(t,n){return 0==t.length?0:t.andWithCountBits(n,!0)/t.length}(t,n))}function d(t,n){return k(function(t,n){const e=t.andWithCountBits(n,!0),r=t.countBits(!0)+n.countBits(!0),o=t.length,u=o-r+e;return e==o||u==o?1:e/r+u/(2*o-r)}(t,n))}function k(t){return 0===t?3402823e32:1/t-1}function m(t,n){return Math.abs(t-n)}r.gk.Tanimoto,r.gk.Dice,r.gk.Asymmetric,r.gk.BraunBlanquet,r.gk.Cosine,r.gk.Kulczynski,r.gk.McConnaughey,r.gk.RogotGoldberg,r.gk.Russel,r.gk.Sokal,r.gk.Hamming,r.gk.Euclidean,r.gk.Tanimoto,r.gk.Dice,r.gk.Asymmetric,r.gk.BraunBlanquet,r.gk.Cosine,r.gk.Kulczynski,r.gk.McConnaughey,r.gk.RogotGoldberg,r.gk.Russel,r.gk.Sokal,r.gk.Hamming,r.gk.Euclidean,r.gk.Tanimoto,r.gk.Dice,r.gk.Cosine,r.gk.Tanimoto,r.gk.Asymmetric,r.gk.Cosine,r.gk.Sokal},779:(t,n,e)=>{function r(){return(t,n)=>{let e=0;t.length!==n.length&&(e=Math.abs(t.length-n.length));let r=0;for(let e=0;e<Math.min(t.length,n.length);e++)t[e]!==n[e]&&r++;return r+=e,r/=Math.max(t.length,n.length),r}}e.d(n,{j:()=>r})},489:(t,n,e)=>{e.d(n,{U:()=>r.U,o:()=>r.o});var r=e(540)},458:(t,n,e)=>{e.d(n,{r:()=>o});var r=e(811);function o(){return(t,n)=>(0,r.T)(t,n)/Math.max(t.length,n.length)}},540:(t,n,e)=>{e.d(n,{U:()=>r,o:()=>a});var r,o=e(779),u=e(458),i=e(683);!function(t){t.HAMMING="Hamming",t.LEVENSHTEIN="Levenshtein",t.NEEDLEMANN_WUNSCH="Needlemann-Wunsch"}(r||(r={}));const a={[r.HAMMING]:o.j,[r.LEVENSHTEIN]:u.r,[r.NEEDLEMANN_WUNSCH]:i.n}},683:(t,n,e)=>{e.d(n,{n:()=>o});const r={gapOpen:8,gapExtend:2,scoringMatrix:[[4,-1,-2,-2,0,-1,-1,0,-2,-1,-1,-1,-1,-2,-1,1,0,-3,-2,0,-2,-1,0,-4],[-1,5,0,-2,-3,1,0,-2,0,-3,-2,2,-1,-3,-2,-1,-1,-3,-2,-3,-1,0,-1,-4],[-2,0,6,1,-3,0,0,0,1,-3,-3,0,-2,-3,-2,1,0,-4,-2,-3,3,0,-1,-4],[-2,-2,1,6,-3,0,2,-1,-1,-3,-4,-1,-3,-3,-1,0,-1,-4,-3,-3,4,1,-1,-4],[0,-3,-3,-3,9,-3,-4,-3,-3,-1,-1,-3,-1,-2,-3,-1,-1,-2,-2,-1,-3,-3,-2,-4],[-1,1,0,0,-3,5,2,-2,0,-3,-2,1,0,-3,-1,0,-1,-2,-1,-2,0,3,-1,-4],[-1,0,0,2,-4,2,5,-2,0,-3,-3,1,-2,-3,-1,0,-1,-3,-2,-2,1,4,-1,-4],[0,-2,0,-1,-3,-2,-2,6,-2,-4,-4,-2,-3,-3,-2,0,-2,-2,-3,-3,-1,-2,-1,-4],[-2,0,1,-1,-3,0,0,-2,8,-3,-3,-1,-2,-1,-2,-1,-2,-2,2,-3,0,0,-1,-4],[-1,-3,-3,-3,-1,-3,-3,-4,-3,4,2,-3,1,0,-3,-2,-1,-3,-1,3,-3,-3,-1,-4],[-1,-2,-3,-4,-1,-2,-3,-4,-3,2,4,-2,2,0,-3,-2,-1,-2,-1,1,-4,-3,-1,-4],[-1,2,0,-1,-3,1,1,-2,-1,-3,-2,5,-1,-3,-1,0,-1,-3,-2,-2,0,1,-1,-4],[-1,-1,-2,-3,-1,0,-2,-3,-2,1,2,-1,5,0,-2,-1,-1,-1,-1,1,-3,-1,-1,-4],[-2,-3,-3,-3,-2,-3,-3,-3,-1,0,0,-3,0,6,-4,-2,-2,1,3,-1,-3,-3,-1,-4],[-1,-2,-2,-1,-3,-1,-1,-2,-2,-3,-3,-1,-2,-4,7,-1,-1,-4,-3,-2,-2,-1,-2,-4],[1,-1,1,0,-1,0,0,0,-1,-2,-2,0,-1,-2,-1,4,1,-3,-2,-2,0,0,0,-4],[0,-1,0,-1,-1,-1,-1,-2,-2,-1,-1,-1,-1,-2,-1,1,5,-2,-2,0,-1,-1,0,-4],[-3,-3,-4,-4,-2,-2,-3,-2,-2,-3,-2,-3,-1,1,-4,-3,-2,11,2,-3,-4,-3,-2,-4],[-2,-2,-2,-3,-2,-1,-2,-3,2,-1,-1,-2,-1,3,-3,-2,-2,2,7,-1,-3,-2,-1,-4],[0,-3,-3,-3,-1,-2,-2,-3,-3,3,1,-2,1,-1,-2,-2,0,-3,-1,4,-3,-2,-1,-4],[-2,-1,3,4,-3,0,1,-1,0,-3,-4,0,-3,-3,-2,0,-1,-4,-3,-3,4,1,-1,-4],[-1,0,0,1,-3,3,4,-2,0,-3,-3,1,-1,-3,-1,0,-1,-3,-2,-2,1,4,-1,-4],[0,-1,-1,-1,-2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-2,0,0,-2,-1,-1,-1,-1,-1,-4],[-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,1]],alphabetIndexes:{A:0,R:1,N:2,D:3,C:4,Q:5,E:6,G:7,H:8,I:9,L:10,K:11,M:12,F:13,P:14,S:15,T:16,W:17,Y:18,V:19,B:20,Z:21,X:22,"*":23}};function o(t){return(n,e)=>{const{gapOpen:o,gapExtend:u,scoringMatrix:i,alphabetIndexes:a}={...r,...t},l=[new Array(n.length+1).fill(0),new Array(n.length+1).fill(0)],c=new Array(n.length+1).fill(!1),h=new Array(n.length+1).fill(!1);let g=0,s=1;for(let t=1;t<n.length+1;t++)l[0][t]=-o-(t-1)*u;for(let t=1;t<e.length+1;t++){l[s][0]=-o-(t-1)*u;for(let r=1;r<n.length+1;r++){const f=l[g][r-1]+i[a[n[r-1]]][a[e[t-1]]],C=l[g][r]-(c[r]?u:o),d=l[s][r-1]-(h[r-1]?u:o);l[s][r]=Math.max(f,d,C),l[s][r]===f?(c[r]=!1,h[r]=!1):l[s][r]===d?(c[r]=!1,h[r]=!0):(c[r]=!0,h[r]=!1)}g=s,s=(s+1)%2}const f=n.split("").map((t=>i[a[t]][a[t]])).reduce(((t,n)=>t+n),0),C=e.split("").map((t=>i[a[t]][a[t]])).reduce(((t,n)=>t+n),0),d=Math.max(f,C);return(d-l[g][n.length])/d}}},659:(t,n,e)=>{e.d(n,{OW:()=>r});class r extends Float32Array{}},811:(t,n,e)=>{e.d(n,{T:()=>o});const r=new Uint32Array(65536),o=(t,n)=>{if(t.length<n.length){const e=n;n=t,t=e}return 0===n.length?t.length:t.length<=32?((t,n)=>{const e=t.length,o=n.length,u=1<<e-1;let i=-1,a=0,l=e,c=e;for(;c--;)r[t.charCodeAt(c)]|=1<<c;for(c=0;c<o;c++){let t=r[n.charCodeAt(c)];const e=t|a;t|=(t&i)+i^i,a|=~(t|i),i&=t,a&u&&l++,i&u&&l--,a=a<<1|1,i=i<<1|~(e|a),a&=e}for(c=e;c--;)r[t.charCodeAt(c)]=0;return l})(t,n):((t,n)=>{const e=n.length,o=t.length,u=[],i=[],a=Math.ceil(e/32),l=Math.ceil(o/32);for(let t=0;t<a;t++)i[t]=-1,u[t]=0;let c=0;for(;c<l-1;c++){let a=0,l=-1;const h=32*c,g=Math.min(32,o)+h;for(let n=h;n<g;n++)r[t.charCodeAt(n)]|=1<<n;for(let t=0;t<e;t++){const e=r[n.charCodeAt(t)],o=i[t/32|0]>>>t&1,c=u[t/32|0]>>>t&1,h=e|a,g=((e|c)&l)+l^l|e|c;let s=a|~(g|l),f=l&g;s>>>31^o&&(i[t/32|0]^=1<<t),f>>>31^c&&(u[t/32|0]^=1<<t),s=s<<1|o,f=f<<1|c,l=f|~(h|s),a=s&h}for(let n=h;n<g;n++)r[t.charCodeAt(n)]=0}let h=0,g=-1;const s=32*c,f=Math.min(32,o-s)+s;for(let n=s;n<f;n++)r[t.charCodeAt(n)]|=1<<n;let C=o;for(let t=0;t<e;t++){const e=r[n.charCodeAt(t)],a=i[t/32|0]>>>t&1,l=u[t/32|0]>>>t&1,c=e|h,s=((e|l)&g)+g^g|e|l;let f=h|~(s|g),d=g&s;C+=f>>>o-1&1,C-=d>>>o-1&1,f>>>31^a&&(i[t/32|0]^=1<<t),d>>>31^l&&(u[t/32|0]^=1<<t),f=f<<1|a,d=d<<1|l,g=d|~(c|f),h=f&c}for(let n=s;n<f;n++)r[t.charCodeAt(n)]=0;return C})(t,n)}},979:(t,n)=>{n.H$=void 0,n.H$=function(t,n,e){var r=function(t,n,e){if(0===t.length||0===n.length)return 0;if(e&&!e.caseSensitive&&(t=t.toUpperCase(),n=n.toUpperCase()),t===n)return 1;for(var r=0,o=t.length,u=n.length,i=Math.floor(Math.max(o,u)/2)-1,a=new Array(o),l=new Array(u),c=0;c<o;c++)for(var h=Math.max(0,c-i);h<=Math.min(u,c+i+1);h++)if(!a[c]&&!l[h]&&t[c]===n[h]){++r,a[c]=l[h]=!0;break}if(0===r)return 0;var g=0,s=0;for(c=0;c<o;c++)if(a[c]){for(;!l[s];)s++;t.charAt(c)!==n.charAt(s++)&&g++}return(r/o+r/u+(r-(g/=2))/r)/3}(t,n,e),o=0;if(r>.7){for(var u=Math.min(t.length,n.length),i=0;t[i]===n[i]&&i<4&&i<u;)++o,i++;r+=.1*o*(1-r)}return r}}}]);
2
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,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SSxHQUFJLEVBQUcsR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxFQUFHLEVBQUcsR0FBSSxHQUFJLEVBQUcsR0FBSSxHQUFJLEVBQUcsR0FBSSxHQUNyRyxFQUFFLEVBQUcsRUFBRyxHQUFJLEdBQUksRUFBRyxFQUFHLEdBQUksRUFBRyxHQUFJLEdBQUksRUFBRyxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxFQUFHLEdBQUksR0FBSSxHQUN2RixFQUFFLEVBQUcsRUFBRyxFQUFHLEdBQUksRUFBRyxFQUFHLEVBQUcsRUFBRyxHQUFJLEdBQUksRUFBRyxHQUFJLEdBQUksR0FBSSxFQUFHLEVBQUcsR0FBSSxHQUFJLEdBQUksRUFBRyxFQUFHLEdBQUksR0FBSSxHQUNsRixFQUFFLEdBQUksRUFBRyxFQUFHLEdBQUksRUFBRyxFQUFHLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxFQUFHLEdBQUksR0FBSSxHQUFJLEdBQUksRUFBRyxFQUFHLEdBQUksR0FBSSxHQUN2RixDQUFDLEdBQUksR0FBSSxHQUFJLEVBQUcsR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUM1RixFQUFFLEVBQUcsRUFBRyxFQUFHLEdBQUksRUFBRyxFQUFHLEdBQUksRUFBRyxHQUFJLEdBQUksRUFBRyxFQUFHLEdBQUksR0FBSSxFQUFHLEdBQUksR0FBSSxHQUFJLEdBQUksRUFBRyxFQUFHLEdBQUksR0FBSSxHQUNuRixFQUFFLEVBQUcsRUFBRyxFQUFHLEdBQUksRUFBRyxFQUFHLEdBQUksRUFBRyxHQUFJLEdBQUksRUFBRyxHQUFJLEdBQUksR0FBSSxFQUFHLEdBQUksR0FBSSxHQUFJLEdBQUksRUFBRyxFQUFHLEdBQUksR0FBSSxHQUNwRixDQUFDLEdBQUksRUFBRyxHQUFJLEdBQUksR0FBSSxHQUFJLEVBQUcsR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxFQUFHLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUMxRixFQUFFLEVBQUcsRUFBRyxHQUFJLEdBQUksRUFBRyxFQUFHLEdBQUksRUFBRyxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxFQUFHLEdBQUksRUFBRyxFQUFHLEdBQUksR0FBSSxHQUN0RixFQUFFLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxFQUFHLEVBQUcsR0FBSSxFQUFHLEVBQUcsR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEVBQUcsR0FBSSxHQUFJLEdBQUksR0FBSSxHQUN6RixFQUFFLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxFQUFHLEVBQUcsR0FBSSxFQUFHLEVBQUcsR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEVBQUcsR0FBSSxHQUFJLEdBQUksR0FBSSxHQUN6RixFQUFFLEVBQUcsRUFBRyxHQUFJLEdBQUksRUFBRyxFQUFHLEdBQUksR0FBSSxHQUFJLEdBQUksRUFBRyxHQUFJLEdBQUksR0FBSSxFQUFHLEdBQUksR0FBSSxHQUFJLEdBQUksRUFBRyxFQUFHLEdBQUksR0FBSSxHQUN0RixFQUFFLEdBQUksR0FBSSxHQUFJLEdBQUksRUFBRyxHQUFJLEdBQUksR0FBSSxFQUFHLEVBQUcsR0FBSSxFQUFHLEVBQUcsR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEVBQUcsR0FBSSxHQUFJLEdBQUksR0FBSSxHQUN4RixFQUFFLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxFQUFHLEVBQUcsR0FBSSxFQUFHLEVBQUcsR0FBSSxHQUFJLEdBQUksRUFBRyxFQUFHLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUN4RixFQUFFLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksRUFBRyxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUM3RixDQUFDLEdBQUksRUFBRyxFQUFHLEdBQUksRUFBRyxFQUFHLEVBQUcsR0FBSSxHQUFJLEdBQUksRUFBRyxHQUFJLEdBQUksR0FBSSxFQUFHLEVBQUcsR0FBSSxHQUFJLEdBQUksRUFBRyxFQUFHLEVBQUcsR0FBSSxHQUNsRixDQUFDLEdBQUksRUFBRyxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxFQUFHLEVBQUcsR0FBSSxHQUFJLEVBQUcsR0FBSSxHQUFJLEVBQUcsR0FBSSxHQUN4RixFQUFFLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEVBQUcsR0FBSSxHQUFJLEdBQUksRUFBRyxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUM1RixFQUFFLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksRUFBRyxHQUFJLEdBQUksR0FBSSxHQUFJLEVBQUcsR0FBSSxHQUFJLEdBQUksRUFBRyxFQUFHLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUMxRixDQUFDLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxHQUFJLEdBQUksR0FBSSxFQUFHLEVBQUcsR0FBSSxFQUFHLEdBQUksR0FBSSxHQUFJLEVBQUcsR0FBSSxHQUFJLEVBQUcsR0FBSSxHQUFJLEdBQUksR0FBSSxHQUN4RixFQUFFLEdBQUksRUFBRyxFQUFHLEdBQUksRUFBRyxFQUFHLEdBQUksRUFBRyxHQUFJLEdBQUksRUFBRyxHQUFJLEdBQUksR0FBSSxFQUFHLEdBQUksR0FBSSxHQUFJLEdBQUksRUFBRyxFQUFHLEdBQUksR0FBSSxHQUNyRixFQUFFLEVBQUcsRUFBRyxFQUFHLEdBQUksRUFBRyxFQUFHLEdBQUksRUFBRyxHQUFJLEdBQUksRUFBRyxHQUFJLEdBQUksR0FBSSxFQUFHLEdB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YixFQUFLYyxPQUFPaEYsS0FBT21FLEVBQUthLE9BQU9ELE1BQy9CRCxHQUVSLENBR0osT0FBUXJDLEVBQUkrQixFQUFPL0IsRUFBSWdDLEdBQVFoQyxHQUQvQnFDLEdBQUssSUFDbUNyQyxHQUFLLENBQ2pELENBVW1Cd0MsQ0FBS2YsRUFBTUMsRUFBTUMsR0FFNUJjLEVBQVMsRUFDYixHQUFJYixFQUFXLEdBQUssQ0FHaEIsSUFGQSxJQUFJYyxFQUFXaEksS0FBS2EsSUFBSWtHLEVBQUs1RixPQUFRNkYsRUFBSzdGLFFBQ3RDMEIsRUFBSSxFQUNEa0UsRUFBS2xFLEtBQU9tRSxFQUFLbkUsSUFBTUEsRUFBSSxHQUFLQSxFQUFJbUYsS0FDckNELEVBQ0ZsRixJQUVKcUUsR0FBWSxHQUFNYSxHQUFVLEVBQUliLEVBQ3BDLENBQ0EsT0FBT0EsQ0FDWCxDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGVwdGlkZXMvLi9ub2RlX21vZHVsZXMvQGRhdGFncm9rLWxpYnJhcmllcy9tbC9zcmMvZGlzdGFuY2UtbWF0cml4L3V0aWxzLmpzIiwid2VicGFjazovL3BlcHRpZGVzLy4vbm9kZV9tb2R1bGVzL0BkYXRhZ3Jvay1saWJyYXJpZXMvbWwvc3JjL2Rpc3RhbmNlLW1ldHJpY3MtbWV0aG9kcy5qcyIsIndlYnBhY2s6Ly9wZXB0aWRlcy8uL25vZGVfbW9kdWxlcy9AZGF0YWdyb2stbGlicmFyaWVzL21sL3NyYy9tYWNyb21vbGVjdWxlLWRpc3RhbmNlLWZ1bmN0aW9ucy9oYW1taW5nLmpzIiwid2VicGFjazovL3BlcHRpZGVzLy4vbm9kZV9tb2R1bGVzL0BkYXRhZ3Jvay1saWJyYXJpZXMvbWwvc3JjL21hY3JvbW9sZWN1bGUtZGlzdGFuY2UtZnVuY3Rpb25zL2xldmVuc3RlaW4uanMiLCJ3ZWJwYWNrOi8vcGVwdGlkZXMvLi9ub2RlX21vZHVsZXMvQGRhdGFncm9rLWxpYnJhcmllcy9tbC9zcmMvbWFjcm9tb2xlY3VsZS1kaXN0YW5jZS1mdW5jdGlvbnMvbWFjcm9tb2xlY3VsZS1kaXN0YW5jZS1mdW5jdGlvbnMuanMiLCJ3ZWJwYWNrOi8vcGVwdGlkZXMvLi9ub2RlX21vZHVsZXMvQGRhdGFncm9rLWxpYnJhcmllcy9tbC9zcmMvbWFjcm9tb2xlY3VsZS1kaXN0YW5jZS1mdW5jdGlvbnMvbmVlZGxlbWFuLXd1bnNjaC5qcyIsIndlYnBhY2s6Ly9wZXB0aWRlcy8uL25vZGVfbW9kdWxlcy9AZGF0YWdyb2stbGlicmFyaWVzL3V0aWxzL3NyYy90eXBlLWRlY2xhcmF0aW9ucy5qcyIsIndlYnBhY2s6Ly9wZXB0aWRlcy8uL25vZGVfbW9kdWxlcy9mYXN0ZXN0LWxldmVuc2h0ZWluL2VzbS9tb2QuanMiLCJ3ZWJwYWNrOi8vcGVwdGlkZXMvLi9ub2RlX21vZHVsZXMvamFyby13aW5rbGVyLXR5cGVzY3JpcHQvbGliL2luZGV4LmpzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBpc05pbCA9ICh4KSA9PiB4ID09PSBudWxsIHx8IHggPT09IHVuZGVmaW5lZDtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaWRYUnBiSE11YW5NaUxDSnpiM1Z5WTJWU2IyOTBJam9pSWl3aWMyOTFjbU5sY3lJNld5SjFkR2xzY3k1MGN5SmRMQ0p1WVcxbGN5STZXMTBzSW0xaGNIQnBibWR6SWpvaVFVRkJRU3hOUVVGTkxFTkJRVU1zVFVGQlRTeExRVUZMTEVkQlFVY3NRMEZCUXl4RFFVRk5MRVZCUVVVc1JVRkJSU3hEUVVGRExFTkJRVU1zUzBGQlN5eEpRVUZKTEVsQlFVa3NRMEZCUXl4TFFVRkxMRk5CUVZNc1EwRkJReUlzSW5OdmRYSmpaWE5EYjI1MFpXNTBJanBiSW1WNGNHOXlkQ0JqYjI1emRDQnBjMDVwYkNBOUlDaDRPaUJoYm5rcElEMCtJSGdnUFQwOUlHNTFiR3dnZkh3Z2VDQTlQVDBnZFc1a1pXWnBibVZrTzF4dUlsMTkiLCJpbXBvcnQgeyBCaXRBcnJheU1ldHJpY3NOYW1lcyB9IGZyb20gJy4vdHlwZWQtbWV0cmljcy9jb25zdHMnO1xuZXhwb3J0IGNvbnN0IHNpbWlsYXJpdHlNZXRyaWMgPSB7XG4gICAgW0JpdEFycmF5TWV0cmljc05hbWVzLlRhbmltb3RvXTogdGFuaW1vdG9TaW1pbGFyaXR5LFxuICAgIFtCaXRBcnJheU1ldHJpY3NOYW1lcy5EaWNlXTogZGljZVNpbWlsYXJpdHksXG4gICAgW0JpdEFycmF5TWV0cmljc05hbWVzLkFzeW1tZXRyaWNdOiBhc3ltbWV0cmljU2ltaWxhcml0eSxcbiAgICBbQml0QXJyYXlNZXRyaWNzTmFtZXMuQnJhdW5CbGFucXVldF06IGJyYXVuQmxhbnF1ZXRTaW1pbGFyaXR5LFxuICAgIFtCaXRBcnJheU1ldHJpY3NOYW1lcy5Db3NpbmVdOiBjb3NpbmVTaW1pbGFyaXR5LFxuICAgIFtCaXRBcnJheU1ldHJpY3NOYW1lcy5LdWxjenluc2tpXToga3VsY3p5bnNraVNpbWlsYXJpdHksXG4gICAgW0JpdEFycmF5TWV0cmljc05hbWVzLk1jQ29ubmF1Z2hleV06IG1jQ29ubmF1Z2hleVNpbWlsYXJpdHksXG4gICAgW0JpdEFycmF5TWV0cmljc05hbWVzLlJvZ290R29sZGJlcmddOiByb2dvdEdvbGRiZXJnU2ltaWxhcml0eSxcbiAgICBbQml0QXJyYXlNZXRyaWNzTmFtZXMuUnVzc2VsXTogcnVzc2VsU2ltaWxhcml0eSxcbiAgICBbQml0QXJyYXlNZXRyaWNzTmFtZXMuU29rYWxdOiBzb2thbFNpbWlsYXJpdHksXG4gICAgW0JpdEFycmF5TWV0cmljc05hbWVzLkhhbW1pbmddOiBoYW1taW5nU2ltaWxhcml0eSxcbiAgICBbQml0QXJyYXlNZXRyaWNzTmFtZXMuRXVjbGlkZWFuXTogZXVjbGlkZWFuU2ltaWxhcml0eSxcbn07XG5leHBvcnQgY29uc3QgZGlzdGFuY2VNZXRyaWNzID0ge1xuICAgIFtCaXRBcnJheU1ldHJpY3NOYW1lcy5UYW5pbW90b106IHRhbmltb3RvRGlzdGFuY2UsXG4gICAgW0JpdEFycmF5TWV0cmljc05hbWVzLkRpY2VdOiBkaWNlRGlzdGFuY2UsXG4gICAgW0JpdEFycmF5TWV0cmljc05hbWVzLkFzeW1tZXRyaWNdOiBhc3ltbWV0cmljRGlzdGFuY2UsXG4gICAgW0JpdEFycmF5TWV0cmljc05hbWVzLkJyYXVuQmxhbnF1ZXRdOiBicmF1bkJsYW5xdWV0RGlzdGFuY2UsXG4gICAgW0JpdEFycmF5TWV0cmljc05hbWVzLkNvc2luZV06IGNvc2luZURpc3RhbmNlLFxuICAgIFtCaXRBcnJheU1ldHJpY3NOYW1lcy5LdWxjenluc2tpXToga3VsY3p5bnNraURpc3RhbmNlLFxuICAgIFtCaXRBcnJheU1ldHJpY3NOYW1lcy5NY0Nvbm5hdWdoZXldOiBtY0Nvbm5hdWdoZXlEaXN0YW5jZSxcbiAgICBbQml0QXJyYXlNZXRyaWNzTmFtZXMuUm9nb3RHb2xkYmVyZ106IHJvZ290R29sZGJlcmdEaXN0YW5jZSxcbiAgICBbQml0QXJyYXlNZXRyaWNzTmFtZXMuUnVzc2VsXTogcnVzc2VsRGlzdGFuY2UsXG4gICAgW0JpdEFycmF5TWV0cmljc05hbWVzLlNva2FsXTogc29rYWxEaXN0YW5jZSxcbiAgICBbQml0QXJyYXlNZXRyaWNzTmFtZXMuSGFtbWluZ106IGhhbW1pbmdEaXN0YW5jZSxcbiAgICBbQml0QXJyYXlNZXRyaWNzTmFtZXMuRXVjbGlkZWFuXTogZXVjbGlkZWFuRGlzdGFuY2UsXG59O1xuZXhwb3J0IGNvbnN0IENIRU1fU0lNSUxBUklUWV9NRVRSSUNTID0gW1xuICAgIEJpdEFycmF5TWV0cmljc05hbWVzLlRhbmltb3RvLFxuICAgIEJpdEFycmF5TWV0cmljc05hbWVzLkRpY2UsXG4gICAgQml0QXJyYXlNZXRyaWNzTmFtZXMuQ29zaW5lXG5dO1xuZXhwb3J0IGNvbnN0IFNFUV9TUEFDRV9TSU1JTEFSSVRZX01FVFJJQ1MgPSBbXG4gICAgQml0QXJyYXlNZXRyaWNzTmFtZXMuVGFuaW1vdG8sXG4gICAgQml0QXJyYXlNZXRyaWNzTmFtZXMuQXN5bW1ldHJpYyxcbiAgICBCaXRBcnJheU1ldHJpY3NOYW1lcy5Db3NpbmUsXG4gICAgQml0QXJyYXlNZXRyaWNzTmFtZXMuU29rYWxcbl07XG5leHBvcnQgZnVuY3Rpb24gdGFuaW1vdG9TaW1pbGFyaXR5KHgsIHkpIHtcbiAgICBjb25zdCB0b3RhbCA9IHgudHJ1ZUNvdW50KCkgKyB5LnRydWVDb3VudCgpO1xuICAgIGlmICh0b3RhbCA9PSAwKVxuICAgICAgICByZXR1cm4gMS4wO1xuICAgIGNvbnN0IGNvbW1vbiA9IHguYW5kV2l0aENvdW50Qml0cyh5LCB0cnVlKTtcbiAgICByZXR1cm4gY29tbW9uIC8gKHRvdGFsIC0gY29tbW9uKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiB0YW5pbW90b0Rpc3RhbmNlKHgsIHkpIHtcbiAgICByZXR1cm4gZ2V0RGlzdGFuY2VGcm9tU2ltaWxhcml0eSh0YW5pbW90b1NpbWlsYXJpdHkoeCwgeSkpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGRpY2VTaW1pbGFyaXR5KHgsIHkpIHtcbiAgICBjb25zdCB0b3RhbCA9IHgudHJ1ZUNvdW50KCkgKyB5LnRydWVDb3VudCgpO1xuICAgIGlmICh0b3RhbCA9PSAwKVxuICAgICAgICByZXR1cm4gMC4wO1xuICAgIGNvbnN0IGNvbW1vbiA9IHguYW5kV2l0aENvdW50Qml0cyh5LCB0cnVlKTtcbiAgICByZXR1cm4gMiAqIGNvbW1vbiAvIHRvdGFsO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGRpY2VEaXN0YW5jZSh4LCB5KSB7XG4gICAgcmV0dXJuIGdldERpc3RhbmNlRnJvbVNpbWlsYXJpdHkoZGljZVNpbWlsYXJpdHkoeCwgeSkpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGNvc2luZVNpbWlsYXJpdHkoeCwgeSkge1xuICAgIGNvbnN0IHRvdGFsID0geC50cnVlQ291bnQoKSAqIHkudHJ1ZUNvdW50KCk7XG4gICAgaWYgKHRvdGFsID09IDApXG4gICAgICAgIHJldHVybiAwLjA7XG4gICAgY29uc3QgY29tbW9uID0geC5hbmRXaXRoQ291bnRCaXRzKHksIHRydWUpO1xuICAgIHJldHVybiBjb21tb24gLyBNYXRoLnNxcnQodG90YWwpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGNvc2luZURpc3RhbmNlKHgsIHkpIHtcbiAgICByZXR1cm4gZ2V0RGlzdGFuY2VGcm9tU2ltaWxhcml0eShjb3NpbmVTaW1pbGFyaXR5KHgsIHkpKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBldWNsaWRlYW5TaW1pbGFyaXR5KHgsIHkpIHtcbiAgICByZXR1cm4gZ2V0U2ltaWxhcml0eUZyb21EaXN0YW5jZShldWNsaWRlYW5EaXN0YW5jZSh4LCB5KSk7XG59XG5leHBvcnQgZnVuY3Rpb24gZXVjbGlkZWFuRGlzdGFuY2UoeCwgeSkge1xuICAgIHJldHVybiBNYXRoLnNxcnQoeC50cnVlQ291bnQoKSArIHkudHJ1ZUNvdW50KCkgLSAyICogeC5hbmRXaXRoQ291bnRCaXRzKHksIHRydWUpKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBoYW1taW5nU2ltaWxhcml0eSh4LCB5KSB7XG4gICAgcmV0dXJuIGdldFNpbWlsYXJpdHlGcm9tRGlzdGFuY2UoaGFtbWluZ0Rpc3RhbmNlKHgsIHkpKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBoYW1taW5nRGlzdGFuY2UoeCwgeSkge1xuICAgIHJldHVybiB4LnRydWVDb3VudCgpICsgeS50cnVlQ291bnQoKSAtIDIgKiB4LmFuZFdpdGhDb3VudEJpdHMoeSwgdHJ1ZSk7XG59XG5leHBvcnQgZnVuY3Rpb24gc29rYWxTaW1pbGFyaXR5KHgsIHkpIHtcbiAgICBjb25zdCB0b3RhbCA9IHgudHJ1ZUNvdW50KCkgKyB5LnRydWVDb3VudCgpO1xuICAgIGNvbnN0IGNvbW1vbiA9IHguYW5kV2l0aENvdW50Qml0cyh5LCB0cnVlKTtcbiAgICByZXR1cm4gY29tbW9uIC8gKDIgKiB0b3RhbCAtIDMgKiBjb21tb24pO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHNva2FsRGlzdGFuY2UoeCwgeSkge1xuICAgIHJldHVybiBnZXREaXN0YW5jZUZyb21TaW1pbGFyaXR5KHNva2FsU2ltaWxhcml0eSh4LCB5KSk7XG59XG5leHBvcnQgZnVuY3Rpb24ga3VsY3p5bnNraVNpbWlsYXJpdHkoeCwgeSkge1xuICAgIGNvbnN0IHRvdGFsID0geC50cnVlQ291bnQoKSArIHkudHJ1ZUNvdW50KCk7XG4gICAgY29uc3QgdG90YWxQcm9kID0geC50cnVlQ291bnQoKSAqIHkudHJ1ZUNvdW50KCk7XG4gICAgaWYgKHRvdGFsUHJvZCA9PSAwKVxuICAgICAgICByZXR1cm4gMC4wO1xuICAgIGNvbnN0IGNvbW1vbiA9IHguYW5kV2l0aENvdW50Qml0cyh5LCB0cnVlKTtcbiAgICByZXR1cm4gKGNvbW1vbiAqIHRvdGFsKSAvICgyICogdG90YWxQcm9kKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBrdWxjenluc2tpRGlzdGFuY2UoeCwgeSkge1xuICAgIHJldHVybiBnZXREaXN0YW5jZUZyb21TaW1pbGFyaXR5KGt1bGN6eW5za2lTaW1pbGFyaXR5KHgsIHkpKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBtY0Nvbm5hdWdoZXlTaW1pbGFyaXR5KHgsIHkpIHtcbiAgICBjb25zdCB0b3RhbCA9IHgudHJ1ZUNvdW50KCkgKyB5LnRydWVDb3VudCgpO1xuICAgIGNvbnN0IHRvdGFsUHJvZCA9IHgudHJ1ZUNvdW50KCkgKiB5LnRydWVDb3VudCgpO1xuICAgIGlmICh0b3RhbFByb2QgPT0gMClcbiAgICAgICAgcmV0dXJuIDAuMDtcbiAgICBjb25zdCBjb21tb24gPSB4LmFuZFdpdGhDb3VudEJpdHMoeSwgdHJ1ZSk7XG4gICAgcmV0dXJuIChjb21tb24gKiB0b3RhbCAtIHRvdGFsUHJvZCkgLyB0b3RhbFByb2Q7XG59XG5leHBvcnQgZnVuY3Rpb24gbWNDb25uYXVnaGV5RGlzdGFuY2UoeCwgeSkge1xuICAgIHJldHVybiBnZXREaXN0YW5jZUZyb21TaW1pbGFyaXR5KG1jQ29ubmF1Z2hleVNpbWlsYXJpdHkoeCwgeSkpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGFzeW1tZXRyaWNTaW1pbGFyaXR5KHgsIHkpIHtcbiAgICBjb25zdCBtaW4gPSBNYXRoLm1pbih4LnRydWVDb3VudCgpLCB5LnRydWVDb3VudCgpKTtcbiAgICBpZiAobWluID09IDApXG4gICAgICAgIHJldHVybiAwLjA7XG4gICAgY29uc3QgY29tbW9uID0geC5hbmRXaXRoQ291bnRCaXRzKHksIHRydWUpO1xuICAgIHJldHVybiBjb21tb24gLyBtaW47XG59XG5leHBvcnQgZnVuY3Rpb24gYXN5bW1ldHJpY0Rpc3RhbmNlKHgsIHkpIHtcbiAgICByZXR1cm4gZ2V0RGlzdGFuY2VGcm9tU2ltaWxhcml0eShhc3ltbWV0cmljU2ltaWxhcml0eSh4LCB5KSk7XG59XG5leHBvcnQgZnVuY3Rpb24gYnJhdW5CbGFucXVldFNpbWlsYXJpdHkoeCwgeSkge1xuICAgIGNvbnN0IG1heCA9IE1hdGgubWF4KHgudHJ1ZUNvdW50KCksIHkudHJ1ZUNvdW50KCkpO1xuICAgIGlmIChtYXggPT0gMClcbiAgICAgICAgcmV0dXJuIDAuMDtcbiAgICBjb25zdCBjb21tb24gPSB4LmFuZFdpdGhDb3VudEJpdHMoeSwgdHJ1ZSk7XG4gICAgcmV0dXJuIGNvbW1vbiAvIG1heDtcbn1cbmV4cG9ydCBmdW5jdGlvbiBicmF1bkJsYW5xdWV0RGlzdGFuY2UoeCwgeSkge1xuICAgIHJldHVybiBnZXREaXN0YW5jZUZyb21TaW1pbGFyaXR5KGJyYXVuQmxhbnF1ZXRTaW1pbGFyaXR5KHgsIHkpKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBydXNzZWxTaW1pbGFyaXR5KHgsIHkpIHtcbiAgICBpZiAoeC5sZW5ndGggPT0gMClcbiAgICAgICAgcmV0dXJuIDAuMDtcbiAgICBjb25zdCBjb21tb24gPSB4LmFuZFdpdGhDb3VudEJpdHMoeSwgdHJ1ZSk7XG4gICAgcmV0dXJuIGNvbW1vbiAvIHgubGVuZ3RoO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHJ1c3NlbERpc3RhbmNlKHgsIHkpIHtcbiAgICByZXR1cm4gZ2V0RGlzdGFuY2VGcm9tU2ltaWxhcml0eShydXNzZWxTaW1pbGFyaXR5KHgsIHkpKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiByb2dvdEdvbGRiZXJnU2ltaWxhcml0eSh4LCB5KSB7XG4gICAgY29uc3QgY29tbW9uID0geC5hbmRXaXRoQ291bnRCaXRzKHksIHRydWUpO1xuICAgIGNvbnN0IHRvdGFsID0geC5jb3VudEJpdHModHJ1ZSkgKyB5LmNvdW50Qml0cyh0cnVlKTtcbiAgICBjb25zdCBsZW4gPSB4Lmxlbmd0aDtcbiAgICBjb25zdCBkaWZmID0gbGVuIC0gdG90YWwgKyBjb21tb247XG4gICAgaWYgKChjb21tb24gPT0gbGVuKSB8fCAoZGlmZiA9PSBsZW4pKVxuICAgICAgICByZXR1cm4gMS4wO1xuICAgIGVsc2VcbiAgICAgICAgcmV0dXJuIGNvbW1vbiAvIHRvdGFsICsgZGlmZiAvICgyICogbGVuIC0gdG90YWwpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHJvZ290R29sZGJlcmdEaXN0YW5jZSh4LCB5KSB7XG4gICAgcmV0dXJuIGdldERpc3RhbmNlRnJvbVNpbWlsYXJpdHkocm9nb3RHb2xkYmVyZ1NpbWlsYXJpdHkoeCwgeSkpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGdldFNpbWlsYXJpdHlGcm9tRGlzdGFuY2UoZGlzdGFuY2UpIHtcbiAgICByZXR1cm4gMSAvICgxICsgZGlzdGFuY2UpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGdldERpc3RhbmNlRnJvbVNpbWlsYXJpdHkoc2ltaWxhcml0eSkge1xuICAgIHJldHVybiBzaW1pbGFyaXR5ID09PSAwID8gMy40MDI4MjNFKzM4IDogKDEgLyBzaW1pbGFyaXR5KSAtIDE7XG59XG5leHBvcnQgZnVuY3Rpb24gbnVtZXJpY0Rpc3RhbmNlKHgsIHkpIHtcbiAgICByZXR1cm4gTWF0aC5hYnMoeCAtIHkpO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pWkdsemRHRnVZMlV0YldWMGNtbGpjeTF0WlhSb2IyUnpMbXB6SWl3aWMyOTFjbU5sVW05dmRDSTZJaUlzSW5OdmRYSmpaWE1pT2xzaVpHbHpkR0Z1WTJVdGJXVjBjbWxqY3kxdFpYUm9iMlJ6TG5SeklsMHNJbTVoYldWeklqcGJYU3dpYldGd2NHbHVaM01pT2lKQlFVTkJMRTlCUVU4c1JVRkJReXh2UWtGQmIwSXNSVUZCUXl4TlFVRk5MSGRDUVVGM1FpeERRVUZETzBGQlJUVkVMRTFCUVUwc1EwRkJReXhOUVVGTkxHZENRVUZuUWl4SFFVRTJSRHRKUVVONFJpeERRVUZETEc5Q1FVRnZRaXhEUVVGRExGRkJRVkVzUTBGQlF5eEZRVUZGTEd0Q1FVRnJRanRKUVVOdVJDeERRVUZETEc5Q1FVRnZRaXhEUVVGRExFbEJRVWtzUTBGQlF5eEZRVUZGTEdOQlFXTTdTVUZETTBNc1EwRkJReXh2UWtGQmIwSXNRMEZCUXl4VlFVRlZMRU5CUVVNc1JVRkJSU3h2UWtGQmIwSTdTVUZEZGtRc1EwRkJReXh2UWtGQmIwSXNRMEZCUXl4aFFVRmhMRU5CUVVNc1JVRkJSU3gxUWtGQmRVSTdTVUZETjBRc1EwRkJReXh2UWtGQmIwSXNRMEZCUXl4TlFVRk5MRU5CUVVNc1JVRkJSU3huUWtGQlowSTdTVUZETDBNc1EwRkJReXh2UWtGQmIwSXNRMEZCUXl4VlFVRlZMRU5CUVVNc1JVRkJSU3h2UWtGQmIwSTdTVUZEZGtRc1EwRkJReXh2UWtGQmIwSXNRMEZCUXl4WlFVRlpMRU5CUVVNc1JVRkJSU3h6UWtGQmMwSTdTVUZETTBRc1EwRkJReXh2UWtGQmIwSXNRMEZCUXl4aFFVRmhMRU5CUVVNc1JVRkJSU3gxUWtGQmRVSTdTVUZETjBRc1EwRkJReXh2UWtGQmIwSXNRMEZCUXl4TlFVRk5MRU5CUVVNc1JVRkJSU3huUWtGQlowSTdTVUZETDBNc1EwRkJReXh2UWtGQmIwSXNRMEZCUXl4TFFVRkxMRU5CUVVNc1JVRkJSU3hsUVVGbE8wbEJRemRETEVOQlFVTXNiMEpCUVc5Q0xFTkJRVU1zVDBGQlR5eERRVUZETEVWQlFVVXNhVUpCUVdsQ08wbEJRMnBFTEVOQlFVTXNiMEpCUVc5Q0xFTkJRVU1zVTBGQlV5eERRVUZETEVWQlFVVXNiVUpCUVcxQ08wTkJRM1JFTEVOQlFVTTdRVUZGUml4TlFVRk5MRU5CUVVNc1RVRkJUU3hsUVVGbExFZEJRVFpFTzBsQlEzWkdMRU5CUVVNc2IwSkJRVzlDTEVOQlFVTXNVVUZCVVN4RFFVRkRMRVZCUVVVc1owSkJRV2RDTzBsQlEycEVMRU5CUVVNc2IwSkJRVzlDTEVOQlFVTXNTVUZCU1N4RFFVRkRMRVZCUVVVc1dVRkJXVHRKUVVONlF5eERRVUZETEc5Q1FVRnZRaXhEUVVGRExGVkJRVlVzUTBGQlF5eEZRVUZGTEd0Q1FVRnJRanRKUVVOeVJDeERRVUZETEc5Q1FVRnZRaXhEUVVGRExHRkJRV0VzUTBGQlF5eEZRVUZGTEhGQ1FVRnhRanRKUVVNelJDeERRVUZETEc5Q1FVRnZRaXhEUVVGRExFMUJRVTBzUTBGQlF5eEZRVUZGTEdOQlFXTTdTVUZETjBNc1EwRkJReXh2UWtGQmIwSXNRMEZCUXl4VlFVRlZMRU5CUVVNc1JVRkJSU3hyUWtGQmEwSTdTVUZEY2tRc1EwRkJReXh2UWtGQmIwSXNRMEZCUXl4WlFVRlpMRU5CUVVNc1JVRkJSU3h2UWtGQmIwSTdTVUZEZWtRc1EwRkJReXh2UWtGQmIwSXNRMEZCUXl4aFFVRmhMRU5CUVVNc1JVRkJSU3h4UWtGQmNVSTdTVUZETTBRc1EwRkJReXh2UWtGQmIwSXNRMEZCUXl4TlFVRk5MRU5CUVVNc1JVRkJSU3hqUVVGak8wbEJRemRETEVOQlFVTXNiMEpCUVc5Q0xFTkJRVU1zUzBGQlN5eERRVUZETEVWQlFVVXNZVUZCWVR0SlFVTXpReXhEUVVGRExHOUNRVUZ2UWl4RFFVRkRMRTlCUVU4c1EwRkJReXhGUVVGRkxHVkJRV1U3U1VGREwwTXNRMEZCUXl4dlFrRkJiMElzUTBGQlF5eFRRVUZUTEVOQlFVTXNSVUZCUlN4cFFrRkJhVUk3UTBGRGNFUXNRMEZCUXp0QlFVVkdMRTFCUVUwc1EwRkJReXhOUVVGTkxIVkNRVUYxUWl4SFFVRkhPMGxCUTNKRExHOUNRVUZ2UWl4RFFVRkRMRkZCUVZFN1NVRkROMElzYjBKQlFXOUNMRU5CUVVNc1NVRkJTVHRKUVVONlFpeHZRa0ZCYjBJc1EwRkJReXhOUVVGTk8wTkJRVU1zUTBGQlF6dEJRVU12UWl4TlFVRk5MRU5CUVVNc1RVRkJUU3cwUWtGQk5FSXNSMEZCUnp0SlFVTXhReXh2UWtGQmIwSXNRMEZCUXl4UlFVRlJPMGxCUXpkQ0xHOUNRVUZ2UWl4RFFVRkRMRlZCUVZVN1NVRkRMMElzYjBKQlFXOUNMRU5CUVVNc1RVRkJUVHRKUVVNelFpeHZRa0ZCYjBJc1EwRkJReXhMUVVGTE8wTkJRVU1zUTBGQlF6dEJRVVU1UWl4TlFVRk5MRlZCUVZVc2EwSkJRV3RDTEVOQlFVTXNRMEZCVnl4RlFVRkZMRU5CUVZjN1NVRkRla1FzVFVGQlRTeExRVUZMTEVkQlFVY3NRMEZCUXl4RFFVRkRMRk5CUVZNc1JVRkJSU3hIUVVGSExFTkJRVU1zUTBGQlF5eFRRVUZUTEVWQlFVVXNRMEZCUXp0SlFVTTFReXhKUVVGSkxFdEJRVXNzU1VGQlNTeERRVUZETzFGQlFVVXNUMEZCVHl4SFFVRkhMRU5CUVVNN1NVRkRNMElzVFVGQlRTeE5RVUZOTEVkQlFVY3NRMEZCUXl4RFFVRkRMR2RDUVVGblFpeERRVUZETEVOQlFVTXNSVUZCUlN4SlFVRkpMRU5CUVVNc1EwRkJRenRKUVVNelF5eFBRVUZQTEUxQlFVMHNSMEZCUnl4RFFVRkRMRXRCUVVzc1IwRkJSeXhOUVVGTkxFTkJRVU1zUTBGQlF6dEJRVU51UXl4RFFVRkRPMEZCUlVRc1RVRkJUU3hWUVVGVkxHZENRVUZuUWl4RFFVRkRMRU5CUVZjc1JVRkJSU3hEUVVGWE8wbEJRM1pFTEU5QlFVOHNlVUpCUVhsQ0xFTkJRVU1zYTBKQlFXdENMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdRVUZETjBRc1EwRkJRenRCUVVWRUxFMUJRVTBzVlVGQlZTeGpRVUZqTEVOQlFVTXNRMEZCVnl4RlFVRkZMRU5CUVZjN1NVRkRja1FzVFVGQlRTeExRVUZMTEVkQlFVY3NRMEZCUXl4RFFVRkRMRk5CUVZNc1JVRkJSU3hIUVVGSExFTkJRVU1zUTBGQlF5eFRRVUZUTEVWQlFVVXNRMEZCUXp0SlFVTTFReXhKUVVGSkxFdEJRVXNzU1VGQlNTeERRVUZETzFGQlFVVXNUMEZCVHl4SFFVRkhMRU5CUVVNN1NVRkRNMElzVFVGQlRTeE5RVUZOTEVkQlFVY3NRMEZCUXl4RFFVRkRMR2RDUVVGblFpeERRVUZETEVOQlFVTXNSVUZCUlN4SlFVRkpMRU5CUVVNc1EwRkJRenRKUVVNelF5eFBRVUZQTEVOQlFVTXNSMEZCUnl4TlFVRk5MRWRCUVVjc1MwRkJTeXhEUVVGRE8wRkJRelZDTEVOQlFVTTdRVUZGUkN4TlFVRk5MRlZCUVZVc1dVRkJXU3hEUVVGRExFTkJRVmNzUlVGQlJTeERRVUZYTzBsQlEyNUVMRTlCUVU4c2VVSkJRWGxDTEVOQlFVTXNZMEZCWXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzBGQlEzcEVMRU5CUVVNN1FVRkZSQ3hOUVVGTkxGVkJRVlVzWjBKQlFXZENMRU5CUVVNc1EwRkJWeXhGUVVGRkxFTkJRVmM3U1VGRGRrUXNUVUZCVFN4TFFVRkxMRWRCUVVjc1EwRkJReXhEUVVGRExGTkJRVk1zUlVGQlJTeEhRVUZITEVOQlFVTXNRMEZCUXl4VFFVRlRMRVZCUVVVc1EwRkJRenRKUVVNMVF5eEpRVUZKTEV0QlFVc3NTVUZCU1N4RFFVRkRPMUZCUVVVc1QwRkJUeXhIUVVGSExFTkJRVU03U1VGRE0wSXNUVUZCVFN4TlFVRk5MRWRCUVVjc1EwRkJReXhEUVVGRExHZENRVUZuUWl4RFFVRkRMRU5CUVVNc1JVRkJSU3hKUVVGSkxFTkJRVU1zUTBGQlF6dEpRVU16UXl4UFFVRlBMRTFCUVUwc1IwRkJSeXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRPMEZCUTI1RExFTkJRVU03UVVGRlJDeE5RVUZOTEZWQlFWVXNZMEZCWXl4RFFVRkRMRU5CUVZjc1JVRkJSU3hEUVVGWE8wbEJRM0pFTEU5QlFVOHNlVUpCUVhsQ0xFTkJRVU1zWjBKQlFXZENMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdRVUZETTBRc1EwRkJRenRCUVVWRUxFMUJRVTBzVlVGQlZTeHRRa0ZCYlVJc1EwRkJReXhEUVVGWExFVkJRVVVzUTBGQlZ6dEpRVU14UkN4UFFVRlBMSGxDUVVGNVFpeERRVUZETEdsQ1FVRnBRaXhEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMEZCUXpWRUxFTkJRVU03UVVGRlJDeE5RVUZOTEZWQlFWVXNhVUpCUVdsQ0xFTkJRVU1zUTBGQlZ5eEZRVUZGTEVOQlFWYzdTVUZEZUVRc1QwRkJUeXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4VFFVRlRMRVZCUVVVc1IwRkJSeXhEUVVGRExFTkJRVU1zVTBGQlV5eEZRVUZGTEVkQlFVY3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhuUWtGQlowSXNRMEZCUXl4RFFVRkRMRVZCUVVVc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF6dEJRVU53Uml4RFFVRkRPMEZCUlVRc1RVRkJUU3hWUVVGVkxHbENRVUZwUWl4RFFVRkRMRU5CUVZjc1JVRkJSU3hEUVVGWE8wbEJRM2hFTEU5QlFVOHNlVUpCUVhsQ0xFTkJRVU1zWlVGQlpTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8wRkJRekZFTEVOQlFVTTdRVUZGUkN4TlFVRk5MRlZCUVZVc1pVRkJaU3hEUVVGRExFTkJRVmNzUlVGQlJTeERRVUZYTzBsQlEzUkVMRTlCUVU4c1EwRkJReXhEUVVGRExGTkJRVk1zUlVGQlJTeEhRVUZITEVOQlFVTXNRMEZCUXl4VFFVRlRMRVZCUVVVc1IwRkJSeXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEdkQ1FVRm5RaXhEUVVGRExFTkJRVU1zUlVGQlJTeEpRVUZKTEVOQlFVTXNRMEZCUXp0QlFVTjZSU3hEUVVGRE8wRkJSVVFzVFVGQlRTeFZRVUZWTEdWQlFXVXNRMEZCUXl4RFFVRlhMRVZCUVVVc1EwRkJWenRKUVVOMFJDeE5RVUZOTEV0QlFVc3NSMEZCUnl4RFFVRkRMRU5CUVVNc1UwRkJVeXhGUVVGRkxFZEJRVWNzUTBGQlF5eERRVUZETEZOQlFWTXNSVUZCUlN4RFFVRkRPMGxCUXpWRExFMUJRVTBzVFVGQlRTeEhRVUZITEVOQlFVTXNRMEZCUXl4blFrRkJaMElzUTBGQlF5eERRVUZETEVWQlFVVXNTVUZCU1N4RFFVRkRMRU5CUVVNN1NVRkRNME1zVDBGQlR5eE5RVUZOTEVkQlFVY3NRMEZCUXl4RFFVRkRMRWRCUVVjc1MwRkJTeXhIUVVGSExFTkJRVU1zUjBGQlJ5eE5RVUZOTEVOQlFVTXNRMEZCUXp0QlFVTXpReXhEUVVGRE8wRkJSVVFzVFVGQlRTeFZRVUZWTEdGQlFXRXNRMEZCUXl4RFFVRlhMRVZCUVVVc1EwRkJWenRKUVVOd1JDeFBRVUZQTEhsQ1FVRjVRaXhEUVVGRExHVkJRV1VzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRCUVVNeFJDeERRVUZETzBGQlJVUXNUVUZCVFN4VlFVRlZMRzlDUVVGdlFpeERRVUZETEVOQlFWY3NSVUZCUlN4RFFVRlhPMGxCUXpORUxFMUJRVTBzUzBGQlN5eEhRVUZITEVOQlFVTXNRMEZCUXl4VFFVRlRMRVZCUVVVc1IwRkJSeXhEUVVGRExFTkJRVU1zVTBGQlV5eEZRVUZGTEVOQlFVTTdTVUZETlVNc1RVRkJUU3hUUVVGVExFZEJRVWNzUTBGQlF5eERRVUZETEZOQlFWTXNSVUZCUlN4SFFVRkhMRU5CUVVNc1EwRkJReXhUUVVGVExFVkJRVVVzUTBGQlF6dEpRVU5vUkN4SlFVRkpMRk5CUVZNc1NVRkJTU3hEUVVGRE8xRkJRVVVzVDBGQlR5eEhRVUZITEVOQlFVTTdTVUZETDBJc1RVRkJUU3hOUVVGTkxFZEJRVWNzUTBGQlF5eERRVUZETEdkQ1FVRm5RaXhEUVVGRExFTkJRVU1zUlVGQlJTeEpRVUZKTEVOQlFVTXNRMEZCUXp0SlFVTXpReXhQUVVGUExFTkJRVU1zVFVGQlRTeEhRVUZITEV0QlFVc3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhIUVVGSExGTkJRVk1zUTBGQlF5eERRVUZETzBGQlF6VkRMRU5CUVVNN1FVRkZSQ3hOUVVGTkxGVkJRVlVzYTBKQlFXdENMRU5CUVVNc1EwRkJWeXhGUVVGRkxFTkJRVmM3U1VGRGVrUXNUMEZCVHl4NVFrRkJlVUlzUTBGQlF5eHZRa0ZCYjBJc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0QlFVTXZSQ3hEUVVGRE8wRkJSVVFzVFVGQlRTeFZRVUZWTEhOQ1FVRnpRaXhEUVVGRExFTkJRVmNzUlVGQlJTeERRVUZYTzBsQlF6ZEVMRTFCUVUwc1MwRkJTeXhIUVVGSExFTkJRVU1zUTBGQlF5eFRRVUZUTEVWQlFVVXNSMEZCUnl4RFFVRkRMRU5CUVVNc1UwRkJVeXhGUVVGRkxFTkJRVU03U1VGRE5VTXNUVUZCVFN4VFFVRlRMRWRCUVVjc1EwRkJReXhEUVVGRExGTkJRVk1zUlVGQlJTeEhRVUZITEVOQlFVTXNRMEZCUXl4VFFVRlRMRVZCUVVVc1EwRkJRenRKUVVOb1JDeEpRVUZKTEZOQlFWTXNTVUZCU1N4RFFVRkRPMUZCUVVVc1QwRkJUeXhIUVVGSExFTkJRVU03U1VGREwwSXNUVUZCVFN4TlFVRk5MRWRCUVVjc1EwRkJReXhEUVVGRExHZENRVUZuUWl4RFFVRkRMRU5CUVVNc1JVRkJSU3hKUVVGSkxFTkJRVU1zUTBGQlF6dEpRVU16UXl4UFFVRlBMRU5CUVVNc1RVRkJUU3hIUVVGSExFdEJRVXNzUjBGQlJ5eFRRVUZUTEVOQlFVTXNSMEZCUnl4VFFVRlRMRU5CUVVNN1FVRkRiRVFzUTBGQlF6dEJRVVZFTEUxQlFVMHNWVUZCVlN4dlFrRkJiMElzUTBGQlF5eERRVUZYTEVWQlFVVXNRMEZCVnp0SlFVTXpSQ3hQUVVGUExIbENRVUY1UWl4RFFVRkRMSE5DUVVGelFpeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8wRkJRMnBGTEVOQlFVTTdRVUZGUkN4TlFVRk5MRlZCUVZVc2IwSkJRVzlDTEVOQlFVTXNRMEZCVnl4RlFVRkZMRU5CUVZjN1NVRkRNMFFzVFVGQlRTeEhRVUZITEVkQlFVY3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zVTBGQlV5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRk5CUVZNc1JVRkJSU3hEUVVGRExFTkJRVU03U1VGRGJrUXNTVUZCU1N4SFFVRkhMRWxCUVVrc1EwRkJRenRSUVVGRkxFOUJRVThzUjBGQlJ5eERRVUZETzBsQlEzcENMRTFCUVUwc1RVRkJUU3hIUVVGSExFTkJRVU1zUTBGQlF5eG5Ra0ZCWjBJc1EwRkJReXhEUVVGRExFVkJRVVVzU1VGQlNTeERRVUZETEVOQlFVTTdTVUZETTBNc1QwRkJUeXhOUVVGTkxFZEJRVWNzUjBGQlJ5eERRVUZETzBGQlEzUkNMRU5CUVVNN1FVRkZSQ3hOUVVGTkxGVkJRVlVzYTBKQlFXdENMRU5CUVVNc1EwRkJWeXhGUVVGRkxFTkJRVmM3U1VGRGVrUXNUMEZCVHl4NVFrRkJlVUlzUTBGQlF5eHZRa0ZCYjBJc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0QlFVTXZSQ3hEUVVGRE8wRkJSVVFzVFVGQlRTeFZRVUZWTEhWQ1FVRjFRaXhEUVVGRExFTkJRVmNzUlVGQlJTeERRVUZYTzBsQlF6bEVMRTFCUVUwc1IwRkJSeXhIUVVGSExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRk5CUVZNc1JVRkJSU3hGUVVGRkxFTkJRVU1zUTBGQlF5eFRRVUZUTEVWQlFVVXNRMEZCUXl4RFFVRkRPMGxCUTI1RUxFbEJRVWtzUjBGQlJ5eEpRVUZKTEVOQlFVTTdVVUZCUlN4UFFVRlBMRWRCUVVjc1EwRkJRenRKUVVONlFpeE5RVUZOTEUxQlFVMHNSMEZCUnl4RFFVRkRMRU5CUVVNc1owSkJRV2RDTEVOQlFVTXNRMEZCUXl4RlFVRkZMRWxCUVVrc1EwRkJReXhEUVVGRE8wbEJRek5ETEU5QlFVOHNUVUZCVFN4SFFVRkhMRWRCUVVjc1EwRkJRenRCUVVOMFFpeERRVUZETzBGQlJVUXNUVUZCVFN4VlFVRlZMSEZDUVVGeFFpeERRVUZETEVOQlFWY3NSVUZCUlN4RFFVRlhPMGxCUXpWRUxFOUJRVThzZVVKQlFYbENMRU5CUVVNc2RVSkJRWFZDTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03UVVGRGJFVXNRMEZCUXp0QlFVVkVMRTFCUVUwc1ZVRkJWU3huUWtGQlowSXNRMEZCUXl4RFFVRlhMRVZCUVVVc1EwRkJWenRKUVVOMlJDeEpRVUZKTEVOQlFVTXNRMEZCUXl4TlFVRk5MRWxCUVVrc1EwRkJRenRSUVVGRkxFOUJRVThzUjBGQlJ5eERRVUZETzBsQlF6bENMRTFCUVUwc1RVRkJUU3hIUVVGSExFTkJRVU1zUTBGQlF5eG5Ra0ZCWjBJc1EwRkJReXhEUVVGRExFVkJRVVVzU1VGQlNTeERRVUZETEVOQlFVTTdTVUZETTBNc1QwRkJUeXhOUVVGTkxFZEJRVWNzUTBGQlF5eERRVUZETEUxQlFVMHNRMEZCUXp0QlFVTXpRaXhEUVVGRE8wRkJSVVFzVFVGQlRTeFZRVUZWTEdOQlFXTXNRMEZCUXl4RFFVRlhMRVZCUVVVc1EwRkJWenRKUVVOeVJDeFBRVUZQTEhsQ1FVRjVRaXhEUVVGRExHZENRVUZuUWl4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzBGQlF6TkVMRU5CUVVNN1FVRkZSQ3hOUVVGTkxGVkJRVlVzZFVKQlFYVkNMRU5CUVVNc1EwRkJWeXhGUVVGRkxFTkJRVmM3U1VGRE9VUXNUVUZCVFN4TlFVRk5MRWRCUVVjc1EwRkJReXhEUVVGRExHZENRVUZuUWl4RFFVRkRMRU5CUVVNc1JVRkJSU3hKUVVGSkxFTkJRVU1zUTBGQlF6dEpRVU16UXl4TlFVRk5MRXRCUVVzc1IwRkJSeXhEUVVGRExFTkJRVU1zVTBGQlV5eERRVUZETEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhUUVVGVExFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTTdTVUZEY0VRc1RVRkJUU3hIUVVGSExFZEJRVWNzUTBGQlF5eERRVUZETEUxQlFVMHNRMEZCUXp0SlFVTnlRaXhOUVVGTkxFbEJRVWtzUjBGQlJ5eEhRVUZITEVkQlFVY3NTMEZCU3l4SFFVRkhMRTFCUVUwc1EwRkJRenRKUVVOc1F5eEpRVUZKTEVOQlFVTXNUVUZCVFN4SlFVRkpMRWRCUVVjc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeEpRVUZKTEVkQlFVY3NRMEZCUXp0UlFVRkZMRTlCUVU4c1IwRkJSeXhEUVVGRE96dFJRVU0xUXl4UFFVRlBMRTFCUVUwc1IwRkJSeXhMUVVGTExFZEJRVWNzU1VGQlNTeEhRVUZITEVOQlFVTXNRMEZCUXl4SFFVRkhMRWRCUVVjc1IwRkJSeXhMUVVGTExFTkJRVU1zUTBGQlF6dEJRVU40UkN4RFFVRkRPMEZCUlVRc1RVRkJUU3hWUVVGVkxIRkNRVUZ4UWl4RFFVRkRMRU5CUVZjc1JVRkJSU3hEUVVGWE8wbEJRelZFTEU5QlFVOHNlVUpCUVhsQ0xFTkJRVU1zZFVKQlFYVkNMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdRVUZEYkVVc1EwRkJRenRCUVVWRUxFMUJRVTBzVlVGQlZTeDVRa0ZCZVVJc1EwRkJReXhSUVVGblFqdEpRVU40UkN4UFFVRlBMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUjBGQlJ5eFJRVUZSTEVOQlFVTXNRMEZCUXp0QlFVTTFRaXhEUVVGRE8wRkJSVVFzVFVGQlRTeFZRVUZWTEhsQ1FVRjVRaXhEUVVGRExGVkJRV3RDTzBsQlF6RkVMRTlCUVU4c1ZVRkJWU3hMUVVGTExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNXVUZCV1N4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eFZRVUZWTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNN1FVRkRhRVVzUTBGQlF6dEJRVVZFTEUxQlFVMHNWVUZCVlN4bFFVRmxMRU5CUVVNc1EwRkJVeXhGUVVGRkxFTkJRVk03U1VGRGJFUXNUMEZCVHl4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXp0QlFVTjZRaXhEUVVGRElpd2ljMjkxY21ObGMwTnZiblJsYm5RaU9sc2lhVzF3YjNKMElFSnBkRUZ5Y21GNUlHWnliMjBnSjBCa1lYUmhaM0p2YXkxc2FXSnlZWEpwWlhNdmRYUnBiSE12YzNKakwySnBkQzFoY25KaGVTYzdYRzVwYlhCdmNuUWdlMEpwZEVGeWNtRjVUV1YwY21samMwNWhiV1Z6ZlNCbWNtOXRJQ2N1TDNSNWNHVmtMVzFsZEhKcFkzTXZZMjl1YzNSekp6dGNibHh1Wlhod2IzSjBJR052Ym5OMElITnBiV2xzWVhKcGRIbE5aWFJ5YVdNNklIc2dXMjVoYldVNklITjBjbWx1WjEwNklDaDRPaUJDYVhSQmNuSmhlU3dnZVRvZ1FtbDBRWEp5WVhrcElEMCtJRzUxYldKbGNpQjlJRDBnZTF4dUlDQmJRbWwwUVhKeVlYbE5aWFJ5YVdOelRtRnRaWE11VkdGdWFXMXZkRzlkT2lCMFlXNXBiVzkwYjFOcGJXbHNZWEpwZEhrc1hHNGdJRnRDYVhSQmNuSmhlVTFsZEhKcFkzTk9ZVzFsY3k1RWFXTmxYVG9nWkdsalpWTnBiV2xzWVhKcGRIa3NYRzRnSUZ0Q2FYUkJjbkpoZVUxbGRISnBZM05PWVcxbGN5NUJjM2x0YldWMGNtbGpYVG9nWVhONWJXMWxkSEpwWTFOcGJXbHNZWEpwZEhrc1hHNGdJRnRDYVhSQmNuSmhlVTFsZEhKcFkzTk9ZVzFsY3k1Q2NtRjFia0pzWVc1eGRXVjBYVG9nWW5KaGRXNUNiR0Z1Y1hWbGRGTnBiV2xzWVhKcGRIa3NYRzRnSUZ0Q2FYUkJjbkpoZVUxbGRISnBZM05PWVcxbGN5NURiM05wYm1WZE9pQmpiM05wYm1WVGFXMXBiR0Z5YVhSNUxGeHVJQ0JiUW1sMFFYSnlZWGxOWlhSeWFXTnpUbUZ0WlhNdVMzVnNZM3A1Ym5OcmFWMDZJR3QxYkdONmVXNXphMmxUYVcxcGJHRnlhWFI1TEZ4dUlDQmJRbWwwUVhKeVlYbE5aWFJ5YVdOelRtRnRaWE11VFdORGIyNXVZWFZuYUdWNVhUb2diV05EYjI1dVlYVm5hR1Y1VTJsdGFXeGhjbWwwZVN4Y2JpQWdXMEpwZEVGeWNtRjVUV1YwY21samMwNWhiV1Z6TGxKdloyOTBSMjlzWkdKbGNtZGRPaUJ5YjJkdmRFZHZiR1JpWlhKblUybHRhV3hoY21sMGVTeGNiaUFnVzBKcGRFRnljbUY1VFdWMGNtbGpjMDVoYldWekxsSjFjM05sYkYwNklISjFjM05sYkZOcGJXbHNZWEpwZEhrc1hHNGdJRnRDYVhSQmNuSmhlVTFsZEhKcFkzTk9ZVzFsY3k1VGIydGhiRjA2SUhOdmEyRnNVMmx0YVd4aGNtbDBlU3hjYmlBZ1cwSnBkRUZ5Y21GNVRXVjBjbWxqYzA1aGJXVnpMa2hoYlcxcGJtZGRPaUJvWVcxdGFXNW5VMmx0YVd4aGNtbDBlU3hjYmlBZ1cwSnBkRUZ5Y21GNVRXVjBjbWxqYzA1aGJXVnpMa1YxWTJ4cFpHVmhibDA2SUdWMVkyeHBaR1ZoYmxOcGJXbHNZWEpwZEhrc1hHNTlPMXh1WEc1bGVIQnZjblFnWTI5dWMzUWdaR2x6ZEdGdVkyVk5aWFJ5YVdOek9pQjdJRnR1WVcxbE9pQnpkSEpwYm1kZE9pQW9lRG9nUW1sMFFYSnlZWGtzSUhrNklFSnBkRUZ5Y21GNUtTQTlQaUJ1ZFcxaVpYSWdmU0E5SUh0Y2JpQWdXMEpwZEVGeWNtRjVUV1YwY21samMwNWhiV1Z6TGxSaGJtbHRiM1J2WFRvZ2RHRnVhVzF2ZEc5RWFYTjBZVzVqWlN4Y2JpQWdXMEpwZEVGeWNtRjVUV1YwY21samMwNWhiV1Z6TGtScFkyVmRPaUJrYVdObFJHbHpkR0Z1WTJVc1hHNGdJRnRDYVhSQmNuSmhlVTFsZEhKcFkzTk9ZVzFsY3k1QmMzbHRiV1YwY21salhUb2dZWE41YlcxbGRISnBZMFJwYzNSaGJtTmxMRnh1SUNCYlFtbDBRWEp5WVhsTlpYUnlhV056VG1GdFpYTXVRbkpoZFc1Q2JHRnVjWFZsZEYwNklHSnlZWFZ1UW14aGJuRjFaWFJFYVhOMFlXNWpaU3hjYmlBZ1cwSnBkRUZ5Y21GNVRXVjBjbWxqYzA1aGJXVnpMa052YzJsdVpWMDZJR052YzJsdVpVUnBjM1JoYm1ObExGeHVJQ0JiUW1sMFFYSnlZWGxOWlhSeWFXTnpUbUZ0WlhNdVMzVnNZM3A1Ym5OcmFWMDZJR3QxYkdONmVXNXphMmxFYVhOMFlXNWpaU3hjYmlBZ1cwSnBkRUZ5Y21GNVRXVjBjbWxqYzA1aGJXVnpMazFqUTI5dWJtRjFaMmhsZVYwNklHMWpRMjl1Ym1GMVoyaGxlVVJwYzNSaGJtTmxMRnh1SUNCYlFtbDBRWEp5WVhsTlpYUnlhV056VG1GdFpYTXVVbTluYjNSSGIyeGtZbVZ5WjEwNklISnZaMjkwUjI5c1pHSmxjbWRFYVhOMFlXNWpaU3hjYmlBZ1cwSnBkRUZ5Y21GNVRXVjBjbWxqYzA1aGJXVnpMbEoxYzNObGJGMDZJSEoxYzNObGJFUnBjM1JoYm1ObExGeHVJQ0JiUW1sMFFYSnlZWGxOWlhSeWFXTnpUbUZ0WlhNdVUyOXJZV3hkT2lCemIydGhiRVJwYzNSaGJtTmxMRnh1SUNCYlFtbDBRWEp5WVhsTlpYUnlhV056VG1GdFpYTXVTR0Z0YldsdVoxMDZJR2hoYlcxcGJtZEVhWE4wWVc1alpTeGNiaUFnVzBKcGRFRnljbUY1VFdWMGNtbGpjMDVoYldWekxrVjFZMnhwWkdWaGJsMDZJR1YxWTJ4cFpHVmhia1JwYzNSaGJtTmxMRnh1ZlR0Y2JseHVaWGh3YjNKMElHTnZibk4wSUVOSVJVMWZVMGxOU1V4QlVrbFVXVjlOUlZSU1NVTlRJRDBnVzF4dUlDQkNhWFJCY25KaGVVMWxkSEpwWTNOT1lXMWxjeTVVWVc1cGJXOTBieXhjYmlBZ1FtbDBRWEp5WVhsTlpYUnlhV056VG1GdFpYTXVSR2xqWlN4Y2JpQWdRbWwwUVhKeVlYbE5aWFJ5YVdOelRtRnRaWE11UTI5emFXNWxYVHRjYm1WNGNHOXlkQ0JqYjI1emRDQlRSVkZmVTFCQlEwVmZVMGxOU1V4QlVrbFVXVjlOUlZSU1NVTlRJRDBnVzF4dUlDQkNhWFJCY25KaGVVMWxkSEpwWTNOT1lXMWxjeTVVWVc1cGJXOTBieXhjYmlBZ1FtbDBRWEp5WVhsTlpYUnlhV056VG1GdFpYTXVRWE41YlcxbGRISnBZeXhjYmlBZ1FtbDBRWEp5WVhsTlpYUnlhV056VG1GdFpYTXVRMjl6YVc1bExGeHVJQ0JDYVhSQmNuSmhlVTFsZEhKcFkzTk9ZVzFsY3k1VGIydGhiRjA3WEc1Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCMFlXNXBiVzkwYjFOcGJXbHNZWEpwZEhrb2VEb2dRbWwwUVhKeVlYa3NJSGs2SUVKcGRFRnljbUY1S1RvZ2JuVnRZbVZ5SUh0Y2JpQWdZMjl1YzNRZ2RHOTBZV3dnUFNCNExuUnlkV1ZEYjNWdWRDZ3BJQ3NnZVM1MGNuVmxRMjkxYm5Rb0tUdGNiaUFnYVdZZ0tIUnZkR0ZzSUQwOUlEQXBJSEpsZEhWeWJpQXhMakE3WEc0Z0lHTnZibk4wSUdOdmJXMXZiaUE5SUhndVlXNWtWMmwwYUVOdmRXNTBRbWwwY3loNUxDQjBjblZsS1R0Y2JpQWdjbVYwZFhKdUlHTnZiVzF2YmlBdklDaDBiM1JoYkNBdElHTnZiVzF2YmlrN1hHNTlYRzVjYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUIwWVc1cGJXOTBiMFJwYzNSaGJtTmxLSGc2SUVKcGRFRnljbUY1TENCNU9pQkNhWFJCY25KaGVTazZJRzUxYldKbGNpQjdYRzRnSUhKbGRIVnliaUJuWlhSRWFYTjBZVzVqWlVaeWIyMVRhVzFwYkdGeWFYUjVLSFJoYm1sdGIzUnZVMmx0YVd4aGNtbDBlU2g0TENCNUtTazdYRzU5WEc1Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCa2FXTmxVMmx0YVd4aGNtbDBlU2g0T2lCQ2FYUkJjbkpoZVN3Z2VUb2dRbWwwUVhKeVlYa3BPaUJ1ZFcxaVpYSWdlMXh1SUNCamIyNXpkQ0IwYjNSaGJDQTlJSGd1ZEhKMVpVTnZkVzUwS0NrZ0t5QjVMblJ5ZFdWRGIzVnVkQ2dwTzF4dUlDQnBaaUFvZEc5MFlXd2dQVDBnTUNrZ2NtVjBkWEp1SURBdU1EdGNiaUFnWTI5dWMzUWdZMjl0Ylc5dUlEMGdlQzVoYm1SWGFYUm9RMjkxYm5SQ2FYUnpLSGtzSUhSeWRXVXBPMXh1SUNCeVpYUjFjbTRnTWlBcUlHTnZiVzF2YmlBdklIUnZkR0ZzTzF4dWZWeHVYRzVsZUhCdmNuUWdablZ1WTNScGIyNGdaR2xqWlVScGMzUmhibU5sS0hnNklFSnBkRUZ5Y21GNUxDQjVPaUJDYVhSQmNuSmhlU2s2SUc1MWJXSmxjaUI3WEc0Z0lISmxkSFZ5YmlCblpYUkVhWE4wWVc1alpVWnliMjFUYVcxcGJHRnlhWFI1S0dScFkyVlRhVzFwYkdGeWFYUjVLSGdzSUhrcEtUdGNibjFjYmx4dVpYaHdiM0owSUdaMWJtTjBhVzl1SUdOdmMybHVaVk5wYldsc1lYSnBkSGtvZURvZ1FtbDBRWEp5WVhrc0lIazZJRUpwZEVGeWNtRjVLVG9nYm5WdFltVnlJSHRjYmlBZ1kyOXVjM1FnZEc5MFlXd2dQU0I0TG5SeWRXVkRiM1Z1ZENncElDb2dlUzUwY25WbFEyOTFiblFvS1R0Y2JpQWdhV1lnS0hSdmRHRnNJRDA5SURBcElISmxkSFZ5YmlBd0xqQTdYRzRnSUdOdmJuTjBJR052YlcxdmJpQTlJSGd1WVc1a1YybDBhRU52ZFc1MFFtbDBjeWg1TENCMGNuVmxLVHRjYmlBZ2NtVjBkWEp1SUdOdmJXMXZiaUF2SUUxaGRHZ3VjM0Z5ZENoMGIzUmhiQ2s3WEc1OVhHNWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQmpiM05wYm1WRWFYTjBZVzVqWlNoNE9pQkNhWFJCY25KaGVTd2dlVG9nUW1sMFFYSnlZWGtwT2lCdWRXMWlaWElnZTF4dUlDQnlaWFIxY200Z1oyVjBSR2x6ZEdGdVkyVkdjbTl0VTJsdGFXeGhjbWwwZVNoamIzTnBibVZUYVcxcGJHRnlhWFI1S0hnc0lIa3BLVHRjYm4xY2JseHVaWGh3YjNKMElHWjFibU4wYVc5dUlHVjFZMnhwWkdWaGJsTnBiV2xzWVhKcGRIa29lRG9nUW1sMFFYSnlZWGtzSUhrNklFSnBkRUZ5Y21GNUtUb2diblZ0WW1WeUlIdGNiaUFnY21WMGRYSnVJR2RsZEZOcGJXbHNZWEpwZEhsR2NtOXRSR2x6ZEdGdVkyVW9aWFZqYkdsa1pXRnVSR2x6ZEdGdVkyVW9lQ3dnZVNrcE8xeHVmVnh1WEc1bGVIQnZjblFnWm5WdVkzUnBiMjRnWlhWamJHbGtaV0Z1UkdsemRHRnVZMlVvZURvZ1FtbDBRWEp5WVhrc0lIazZJRUpwZEVGeWNtRjVLVG9nYm5WdFltVnlJSHRjYmlBZ2NtVjBkWEp1SUUxaGRHZ3VjM0Z5ZENoNExuUnlkV1ZEYjNWdWRDZ3BJQ3NnZVM1MGNuVmxRMjkxYm5Rb0tTQXRJRElnS2lCNExtRnVaRmRwZEdoRGIzVnVkRUpwZEhNb2VTd2dkSEoxWlNrcE8xeHVmVnh1WEc1bGVIQnZjblFnWm5WdVkzUnBiMjRnYUdGdGJXbHVaMU5wYldsc1lYSnBkSGtvZURvZ1FtbDBRWEp5WVhrc0lIazZJRUpwZEVGeWNtRjVLVG9nYm5WdFltVnlJSHRjYmlBZ2NtVjBkWEp1SUdkbGRGTnBiV2xzWVhKcGRIbEdjbTl0UkdsemRHRnVZMlVvYUdGdGJXbHVaMFJwYzNSaGJtTmxLSGdzSUhrcEtUdGNibjFjYmx4dVpYaHdiM0owSUdaMWJtTjBhVzl1SUdoaGJXMXBibWRFYVhOMFlXNWpaU2g0T2lCQ2FYUkJjbkpoZVN3Z2VUb2dRbWwwUVhKeVlYa3BPaUJ1ZFcxaVpYSWdlMXh1SUNCeVpYUjFjbTRnZUM1MGNuVmxRMjkxYm5Rb0tTQXJJSGt1ZEhKMVpVTnZkVzUwS0NrZ0xTQXlJQ29nZUM1aGJtUlhhWFJvUTI5MWJuUkNhWFJ6S0hrc0lIUnlkV1VwTzF4dWZWeHVYRzVsZUhCdmNuUWdablZ1WTNScGIyNGdjMjlyWVd4VGFXMXBiR0Z5YVhSNUtIZzZJRUpwZEVGeWNtRjVMQ0I1T2lCQ2FYUkJjbkpoZVNrNklHNTFiV0psY2lCN1hHNGdJR052Ym5OMElIUnZkR0ZzSUQwZ2VDNTBjblZsUTI5MWJuUW9LU0FySUhrdWRISjFaVU52ZFc1MEtDazdYRzRnSUdOdmJuTjBJR052YlcxdmJpQTlJSGd1WVc1a1YybDBhRU52ZFc1MFFtbDBjeWg1TENCMGNuVmxLVHRjYmlBZ2NtVjBkWEp1SUdOdmJXMXZiaUF2SUNneUlDb2dkRzkwWVd3Z0xTQXpJQ29nWTI5dGJXOXVLVHRjYm4xY2JseHVaWGh3YjNKMElHWjFibU4wYVc5dUlITnZhMkZzUkdsemRHRnVZMlVvZURvZ1FtbDBRWEp5WVhrc0lIazZJRUpwZEVGeWNtRjVLVG9nYm5WdFltVnlJSHRjYmlBZ2NtVjBkWEp1SUdkbGRFUnBjM1JoYm1ObFJuSnZiVk5wYldsc1lYSnBkSGtvYzI5cllXeFRhVzFwYkdGeWFYUjVLSGdzSUhrcEtUdGNibjFjYmx4dVpYaHdiM0owSUdaMWJtTjBhVzl1SUd0MWJHTjZlVzV6YTJsVGFXMXBiR0Z5YVhSNUtIZzZJRUpwZEVGeWNtRjVMQ0I1T2lCQ2FYUkJjbkpoZVNrNklHNTFiV0psY2lCN1hHNGdJR052Ym5OMElIUnZkR0ZzSUQwZ2VDNTBjblZsUTI5MWJuUW9LU0FySUhrdWRISjFaVU52ZFc1MEtDazdYRzRnSUdOdmJuTjBJSFJ2ZEdGc1VISnZaQ0E5SUhndWRISjFaVU52ZFc1MEtDa2dLaUI1TG5SeWRXVkRiM1Z1ZENncE8xeHVJQ0JwWmlBb2RHOTBZV3hRY205a0lEMDlJREFwSUhKbGRIVnliaUF3TGpBN1hHNGdJR052Ym5OMElHTnZiVzF2YmlBOUlIZ3VZVzVrVjJsMGFFTnZkVzUwUW1sMGN5aDVMQ0IwY25WbEtUdGNiaUFnY21WMGRYSnVJQ2hqYjIxdGIyNGdLaUIwYjNSaGJDa2dMeUFvTWlBcUlIUnZkR0ZzVUhKdlpDazdYRzU5WEc1Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCcmRXeGplbmx1YzJ0cFJHbHpkR0Z1WTJVb2VEb2dRbWwwUVhKeVlYa3NJSGs2SUVKcGRFRnljbUY1S1RvZ2JuVnRZbVZ5SUh0Y2JpQWdjbVYwZFhKdUlHZGxkRVJwYzNSaGJtTmxSbkp2YlZOcGJXbHNZWEpwZEhrb2EzVnNZM3A1Ym5OcmFWTnBiV2xzWVhKcGRIa29lQ3dnZVNrcE8xeHVmVnh1WEc1bGVIQnZjblFnWm5WdVkzUnBiMjRnYldORGIyNXVZWFZuYUdWNVUybHRhV3hoY21sMGVTaDRPaUJDYVhSQmNuSmhlU3dnZVRvZ1FtbDBRWEp5WVhrcE9pQnVkVzFpWlhJZ2UxeHVJQ0JqYjI1emRDQjBiM1JoYkNBOUlIZ3VkSEoxWlVOdmRXNTBLQ2tnS3lCNUxuUnlkV1ZEYjNWdWRDZ3BPMXh1SUNCamIyNXpkQ0IwYjNSaGJGQnliMlFnUFNCNExuUnlkV1ZEYjNWdWRDZ3BJQ29nZVM1MGNuVmxRMjkxYm5Rb0tUdGNiaUFnYVdZZ0tIUnZkR0ZzVUhKdlpDQTlQU0F3S1NCeVpYUjFjbTRnTUM0d08xeHVJQ0JqYjI1emRDQmpiMjF0YjI0Z1BTQjRMbUZ1WkZkcGRHaERiM1Z1ZEVKcGRITW9lU3dnZEhKMVpTazdYRzRnSUhKbGRIVnliaUFvWTI5dGJXOXVJQ29nZEc5MFlXd2dMU0IwYjNSaGJGQnliMlFwSUM4Z2RHOTBZV3hRY205a08xeHVmVnh1WEc1bGVIQnZjblFnWm5WdVkzUnBiMjRnYldORGIyNXVZWFZuYUdWNVJHbHpkR0Z1WTJVb2VEb2dRbWwwUVhKeVlYa3NJSGs2SUVKcGRFRnljbUY1S1RvZ2JuVnRZbVZ5SUh0Y2JpQWdjbVYwZFhKdUlHZGxkRVJwYzNSaGJtTmxSbkp2YlZOcGJXbHNZWEpwZEhrb2JXTkRiMjV1WVhWbmFHVjVVMmx0YVd4aGNtbDBlU2g0TENCNUtTazdYRzU5WEc1Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCaGMzbHRiV1YwY21salUybHRhV3hoY21sMGVTaDRPaUJDYVhSQmNuSmhlU3dnZVRvZ1FtbDBRWEp5WVhrcE9pQnVkVzFpWlhJZ2UxeHVJQ0JqYjI1emRDQnRhVzRnUFNCTllYUm9MbTFwYmloNExuUnlkV1ZEYjNWdWRDZ3BMQ0I1TG5SeWRXVkRiM1Z1ZENncEtUdGNiaUFnYVdZZ0tHMXBiaUE5UFNBd0tTQnlaWFIxY200Z01DNHdPMXh1SUNCamIyNXpkQ0JqYjIxdGIyNGdQU0I0TG1GdVpGZHBkR2hEYjNWdWRFSnBkSE1vZVN3Z2RISjFaU2s3WEc0Z0lISmxkSFZ5YmlCamIyMXRiMjRnTHlCdGFXNDdYRzU5WEc1Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCaGMzbHRiV1YwY21salJHbHpkR0Z1WTJVb2VEb2dRbWwwUVhKeVlYa3NJSGs2SUVKcGRFRnljbUY1S1RvZ2JuVnRZbVZ5SUh0Y2JpQWdjbVYwZFhKdUlHZGxkRVJwYzNSaGJtTmxSbkp2YlZOcGJXbHNZWEpwZEhrb1lYTjViVzFsZEhKcFkxTnBiV2xzWVhKcGRIa29lQ3dnZVNrcE8xeHVmVnh1WEc1bGVIQnZjblFnWm5WdVkzUnBiMjRnWW5KaGRXNUNiR0Z1Y1hWbGRGTnBiV2xzWVhKcGRIa29lRG9nUW1sMFFYSnlZWGtzSUhrNklFSnBkRUZ5Y21GNUtUb2diblZ0WW1WeUlIdGNiaUFnWTI5dWMzUWdiV0Y0SUQwZ1RXRjBhQzV0WVhnb2VDNTBjblZsUTI5MWJuUW9LU3dnZVM1MGNuVmxRMjkxYm5Rb0tTazdYRzRnSUdsbUlDaHRZWGdnUFQwZ01Da2djbVYwZFhKdUlEQXVNRHRjYmlBZ1kyOXVjM1FnWTI5dGJXOXVJRDBnZUM1aGJtUlhhWFJvUTI5MWJuUkNhWFJ6S0hrc0lIUnlkV1VwTzF4dUlDQnlaWFIxY200Z1kyOXRiVzl1SUM4Z2JXRjRPMXh1ZlZ4dVhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z1luSmhkVzVDYkdGdWNYVmxkRVJwYzNSaGJtTmxLSGc2SUVKcGRFRnljbUY1TENCNU9pQkNhWFJCY25KaGVTazZJRzUxYldKbGNpQjdYRzRnSUhKbGRIVnliaUJuWlhSRWFYTjBZVzVqWlVaeWIyMVRhVzFwYkdGeWFYUjVLR0p5WVhWdVFteGhibkYxWlhSVGFXMXBiR0Z5YVhSNUtIZ3NJSGtwS1R0Y2JuMWNibHh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJSEoxYzNObGJGTnBiV2xzWVhKcGRIa29lRG9nUW1sMFFYSnlZWGtzSUhrNklFSnBkRUZ5Y21GNUtUb2diblZ0WW1WeUlIdGNiaUFnYVdZZ0tIZ3ViR1Z1WjNSb0lEMDlJREFwSUhKbGRIVnliaUF3TGpBN1hHNGdJR052Ym5OMElHTnZiVzF2YmlBOUlIZ3VZVzVrVjJsMGFFTnZkVzUwUW1sMGN5aDVMQ0IwY25WbEtUdGNiaUFnY21WMGRYSnVJR052YlcxdmJpQXZJSGd1YkdWdVozUm9PMXh1ZlZ4dVhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z2NuVnpjMlZzUkdsemRHRnVZMlVvZURvZ1FtbDBRWEp5WVhrc0lIazZJRUpwZEVGeWNtRjVLVG9nYm5WdFltVnlJSHRjYmlBZ2NtVjBkWEp1SUdkbGRFUnBjM1JoYm1ObFJuSnZiVk5wYldsc1lYSnBkSGtvY25WemMyVnNVMmx0YVd4aGNtbDBlU2g0TENCNUtTazdYRzU5WEc1Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCeWIyZHZkRWR2YkdSaVpYSm5VMmx0YVd4aGNtbDBlU2g0T2lCQ2FYUkJjbkpoZVN3Z2VUb2dRbWwwUVhKeVlYa3BPaUJ1ZFcxaVpYSWdlMXh1SUNCamIyNXpkQ0JqYjIxdGIyNGdQU0I0TG1GdVpGZHBkR2hEYjNWdWRFSnBkSE1vZVN3Z2RISjFaU2s3WEc0Z0lHTnZibk4wSUhSdmRHRnNJRDBnZUM1amIzVnVkRUpwZEhNb2RISjFaU2tnS3lCNUxtTnZkVzUwUW1sMGN5aDBjblZsS1R0Y2JpQWdZMjl1YzNRZ2JHVnVJRDBnZUM1c1pXNW5kR2c3WEc0Z0lHTnZibk4wSUdScFptWWdQU0JzWlc0Z0xTQjBiM1JoYkNBcklHTnZiVzF2Ymp0Y2JpQWdhV1lnS0NoamIyMXRiMjRnUFQwZ2JHVnVLU0I4ZkNBb1pHbG1aaUE5UFNCc1pXNHBLU0J5WlhSMWNtNGdNUzR3TzF4dUlDQmxiSE5sSUhKbGRIVnliaUJqYjIxdGIyNGdMeUIwYjNSaGJDQXJJR1JwWm1ZZ0x5QW9NaUFxSUd4bGJpQXRJSFJ2ZEdGc0tUdGNibjFjYmx4dVpYaHdiM0owSUdaMWJtTjBhVzl1SUhKdloyOTBSMjlzWkdKbGNtZEVhWE4wWVc1alpTaDRPaUJDYVhSQmNuSmhlU3dnZVRvZ1FtbDBRWEp5WVhrcE9pQnVkVzFpWlhJZ2UxeHVJQ0J5WlhSMWNtNGdaMlYwUkdsemRHRnVZMlZHY205dFUybHRhV3hoY21sMGVTaHliMmR2ZEVkdmJHUmlaWEpuVTJsdGFXeGhjbWwwZVNoNExDQjVLU2s3WEc1OVhHNWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQm5aWFJUYVcxcGJHRnlhWFI1Um5KdmJVUnBjM1JoYm1ObEtHUnBjM1JoYm1ObE9pQnVkVzFpWlhJcElIdGNiaUFnY21WMGRYSnVJREVnTHlBb01TQXJJR1JwYzNSaGJtTmxLVHRjYm4xY2JseHVaWGh3YjNKMElHWjFibU4wYVc5dUlHZGxkRVJwYzNSaGJtTmxSbkp2YlZOcGJXbHNZWEpwZEhrb2MybHRhV3hoY21sMGVUb2diblZ0WW1WeUtTQjdJQzh2YVc0Z1kyRnpaU0J6YVcxcGJHRnlhWFI1SUdseklEQXNJSFZ6WlNCdFlYZ2diblZ0WW1WeUlHWnZjaUJtYkc5aGRETXlYRzRnSUhKbGRIVnliaUJ6YVcxcGJHRnlhWFI1SUQwOVBTQXdJRDhnTXk0ME1ESTRNak5GS3pNNElEb2dLREVnTHlCemFXMXBiR0Z5YVhSNUtTQXRJREU3WEc1OVhHNWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQnVkVzFsY21salJHbHpkR0Z1WTJVb2VEb2diblZ0WW1WeUxDQjVPaUJ1ZFcxaVpYSXBJSHRjYmlBZ2NtVjBkWEp1SUUxaGRHZ3VZV0p6S0hnZ0xTQjVLVHRjYm4xY2JpSmRmUT09IiwiZXhwb3J0IGZ1bmN0aW9uIGhhbW1pbmcoKSB7XG4gICAgcmV0dXJuIChzZXExLCBzZXEyKSA9PiB7XG4gICAgICAgIC8vIGhhbW1pbmcgZGlzdGFuY2Ugc2hvdWxkIG9ubHkgYmUgdXNlZCB3aXRoIHNhbWUgc2l6ZSBzdHJpbmdzLFxuICAgICAgICAvLyBidXQgc3RpbGwsIGxldHMgYWRkIGEgY2hlY2sgYW5kIGlmIHRoZXkgYXJlIG5vdCBzYW1lIGxlbmd0aCBhZGQgdGhlIGRpZmZlcmVuY2UgdG8gdGhlIHJlc3VsdFxuICAgICAgICBsZXQgZGlmZiA9IDA7XG4gICAgICAgIGlmIChzZXExLmxlbmd0aCAhPT0gc2VxMi5sZW5ndGgpXG4gICAgICAgICAgICBkaWZmID0gTWF0aC5hYnMoc2VxMS5sZW5ndGggLSBzZXEyLmxlbmd0aCk7XG4gICAgICAgIGxldCByZXN1bHQgPSAwO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IE1hdGgubWluKHNlcTEubGVuZ3RoLCBzZXEyLmxlbmd0aCk7IGkrKykge1xuICAgICAgICAgICAgaWYgKHNlcTFbaV0gIT09IHNlcTJbaV0pXG4gICAgICAgICAgICAgICAgcmVzdWx0Kys7XG4gICAgICAgIH1cbiAgICAgICAgcmVzdWx0ICs9IGRpZmY7XG4gICAgICAgIHJlc3VsdCAvPSBNYXRoLm1heChzZXExLmxlbmd0aCwgc2VxMi5sZW5ndGgpO1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH07XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lhR0Z0YldsdVp5NXFjeUlzSW5OdmRYSmpaVkp2YjNRaU9pSWlMQ0p6YjNWeVkyVnpJanBiSW1oaGJXMXBibWN1ZEhNaVhTd2libUZ0WlhNaU9sdGRMQ0p0WVhCd2FXNW5jeUk2SWtGQlJVRXNUVUZCVFN4VlFVRlZMRTlCUVU4N1NVRkRja0lzVDBGQlR5eERRVUZETEVsQlFWa3NSVUZCUlN4SlFVRlpMRVZCUVVVc1JVRkJSVHRSUVVOd1F5d3JSRUZCSzBRN1VVRkRMMFFzSzBaQlFTdEdPMUZCUXk5R0xFbEJRVWtzU1VGQlNTeEhRVUZITEVOQlFVTXNRMEZCUXp0UlFVTmlMRWxCUVVrc1NVRkJTU3hEUVVGRExFMUJRVTBzUzBGQlN5eEpRVUZKTEVOQlFVTXNUVUZCVFR0WlFVTTNRaXhKUVVGSkxFZEJRVWNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4SlFVRkpMRU5CUVVNc1RVRkJUU3hIUVVGSExFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXp0UlFVVTNReXhKUVVGSkxFMUJRVTBzUjBGQlJ5eERRVUZETEVOQlFVTTdVVUZEWml4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhKUVVGSkxFTkJRVU1zVFVGQlRTeEZRVUZGTEVsQlFVa3NRMEZCUXl4TlFVRk5MRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJUdFpRVU16UkN4SlFVRkpMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zUzBGQlN5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRPMmRDUVVOeVFpeE5RVUZOTEVWQlFVVXNRMEZCUXp0VFFVTmFPMUZCUTBRc1RVRkJUU3hKUVVGSkxFbEJRVWtzUTBGQlF6dFJRVU5tTEUxQlFVMHNTVUZCU1N4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFbEJRVWtzUTBGQlF5eE5RVUZOTEVWQlFVVXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRE8xRkJRemRETEU5QlFVOHNUVUZCVFN4RFFVRkRPMGxCUTJoQ0xFTkJRVU1zUTBGQlF6dEJRVU5LTEVOQlFVTWlMQ0p6YjNWeVkyVnpRMjl1ZEdWdWRDSTZXeUpwYlhCdmNuUWdlMjF0UkdsemRHRnVZMlZHZFc1amRHbHZibFI1Y0dWOUlHWnliMjBnSnk0dmRIbHdaWE1uTzF4dVhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z2FHRnRiV2x1WnlncE9pQnRiVVJwYzNSaGJtTmxSblZ1WTNScGIyNVVlWEJsSUh0Y2JpQWdjbVYwZFhKdUlDaHpaWEV4T2lCemRISnBibWNzSUhObGNUSTZJSE4wY21sdVp5a2dQVDRnZTF4dUlDQWdJQzh2SUdoaGJXMXBibWNnWkdsemRHRnVZMlVnYzJodmRXeGtJRzl1YkhrZ1ltVWdkWE5sWkNCM2FYUm9JSE5oYldVZ2MybDZaU0J6ZEhKcGJtZHpMRnh1SUNBZ0lDOHZJR0oxZENCemRHbHNiQ3dnYkdWMGN5QmhaR1FnWVNCamFHVmpheUJoYm1RZ2FXWWdkR2hsZVNCaGNtVWdibTkwSUhOaGJXVWdiR1Z1WjNSb0lHRmtaQ0IwYUdVZ1pHbG1abVZ5Wlc1alpTQjBieUIwYUdVZ2NtVnpkV3gwWEc0Z0lDQWdiR1YwSUdScFptWWdQU0F3TzF4dUlDQWdJR2xtSUNoelpYRXhMbXhsYm1kMGFDQWhQVDBnYzJWeE1pNXNaVzVuZEdncFhHNGdJQ0FnSUNCa2FXWm1JRDBnVFdGMGFDNWhZbk1vYzJWeE1TNXNaVzVuZEdnZ0xTQnpaWEV5TG14bGJtZDBhQ2s3WEc1Y2JpQWdJQ0JzWlhRZ2NtVnpkV3gwSUQwZ01EdGNiaUFnSUNCbWIzSWdLR3hsZENCcElEMGdNRHNnYVNBOElFMWhkR2d1YldsdUtITmxjVEV1YkdWdVozUm9MQ0J6WlhFeUxteGxibWQwYUNrN0lHa3JLeWtnZTF4dUlDQWdJQ0FnYVdZZ0tITmxjVEZiYVYwZ0lUMDlJSE5sY1RKYmFWMHBYRzRnSUNBZ0lDQWdJSEpsYzNWc2RDc3JPMXh1SUNBZ0lIMWNiaUFnSUNCeVpYTjFiSFFnS3owZ1pHbG1aanRjYmlBZ0lDQnlaWE4xYkhRZ0x6MGdUV0YwYUM1dFlYZ29jMlZ4TVM1c1pXNW5kR2dzSUhObGNUSXViR1Z1WjNSb0tUdGNiaUFnSUNCeVpYUjFjbTRnY21WemRXeDBPMXh1SUNCOU8xeHVmVnh1SWwxOSIsImltcG9ydCB7IGRpc3RhbmNlIH0gZnJvbSAnZmFzdGVzdC1sZXZlbnNodGVpbic7XG5leHBvcnQgZnVuY3Rpb24gbGV2ZW5zdGVpbigpIHtcbiAgICByZXR1cm4gKHNlcTEsIHNlcTIpID0+IHtcbiAgICAgICAgcmV0dXJuIGRpc3RhbmNlKHNlcTEsIHNlcTIpIC8gTWF0aC5tYXgoc2VxMS5sZW5ndGgsIHNlcTIubGVuZ3RoKTtcbiAgICB9O1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pYkdWMlpXNXpkR1ZwYmk1cWN5SXNJbk52ZFhKalpWSnZiM1FpT2lJaUxDSnpiM1Z5WTJWeklqcGJJbXhsZG1WdWMzUmxhVzR1ZEhNaVhTd2libUZ0WlhNaU9sdGRMQ0p0WVhCd2FXNW5jeUk2SWtGQlFVRXNUMEZCVHl4RlFVRkRMRkZCUVZFc1JVRkJReXhOUVVGTkxIRkNRVUZ4UWl4RFFVRkRPMEZCUnpkRExFMUJRVTBzVlVGQlZTeFZRVUZWTzBsQlEzaENMRTlCUVU4c1EwRkJReXhKUVVGWkxFVkJRVVVzU1VGQldTeEZRVUZGTEVWQlFVVTdVVUZEY0VNc1QwRkJUeXhSUVVGUkxFTkJRVU1zU1VGQlNTeEZRVUZGTEVsQlFVa3NRMEZCUXl4SFFVRkhMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zU1VGQlNTeERRVUZETEUxQlFVMHNSVUZCUlN4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU03U1VGRGJrVXNRMEZCUXl4RFFVRkRPMEZCUTBvc1EwRkJReUlzSW5OdmRYSmpaWE5EYjI1MFpXNTBJanBiSW1sdGNHOXlkQ0I3WkdsemRHRnVZMlY5SUdaeWIyMGdKMlpoYzNSbGMzUXRiR1YyWlc1emFIUmxhVzRuTzF4dWFXMXdiM0owSUh0dGJVUnBjM1JoYm1ObFJuVnVZM1JwYjI1VWVYQmxmU0JtY205dElDY3VMM1I1Y0dWekp6dGNibHh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJR3hsZG1WdWMzUmxhVzRvS1RvZ2JXMUVhWE4wWVc1alpVWjFibU4wYVc5dVZIbHdaU0I3WEc0Z0lISmxkSFZ5YmlBb2MyVnhNVG9nYzNSeWFXNW5MQ0J6WlhFeU9pQnpkSEpwYm1jcElEMCtJSHRjYmlBZ0lDQnlaWFIxY200Z1pHbHpkR0Z1WTJVb2MyVnhNU3dnYzJWeE1pa2dMeUJOWVhSb0xtMWhlQ2h6WlhFeExteGxibWQwYUN3Z2MyVnhNaTVzWlc1bmRHZ3BPMXh1SUNCOU8xeHVmVnh1SWwxOSIsImltcG9ydCB7IGhhbW1pbmcgfSBmcm9tICcuL2hhbW1pbmcnO1xuaW1wb3J0IHsgbGV2ZW5zdGVpbiB9IGZyb20gJy4vbGV2ZW5zdGVpbic7XG5pbXBvcnQgeyBuZWVkbGVtYW5XdW5jaCB9IGZyb20gJy4vbmVlZGxlbWFuLXd1bnNjaCc7XG4vKiogRW51bSBjb250YWluaW5nIGN1cnJlbnRseSBzdXBwb3J0ZWQgbWFjcm9tb2xlY3VsZSBkaXN0YW5jZSBmdW5jdGlvbnNcbiAqIEhhbW1pbmcgZGlzdGFuY2Ugd2lsbCBiZSB1c2VkIGlmIHRoZSBzZXF1ZW5jZXMgYXJlIGFscmVhZHkgYWxpZ25lZFxuICogTmVlZGxlbWFuIGRpc3RhbmNlIHdpbGwgYmUgdXNlZCBmb3IgcHJvdGVpbiBzZXF1ZW5jZXMgd2l0aCBrbm93biBCTE9TVU02MiBtYXRyaXhcbiAqIExldmVuc2h0ZWluIGRpc3RhbmNlIHdpbGwgYmUgdXNlZCBmb3IgbnVjbGVvdGlkZSBzZXF1ZW5jZXMgYXMgZm9yIHRoZW0gc3Vic3RpdHV0aW9uIG1hdHJpeCBpcyBzYW1lIGFzIGlkZW50aXR5IG1hdHJpeFxuICovXG5leHBvcnQgdmFyIE1tRGlzdGFuY2VGdW5jdGlvbnNOYW1lcztcbihmdW5jdGlvbiAoTW1EaXN0YW5jZUZ1bmN0aW9uc05hbWVzKSB7XG4gICAgTW1EaXN0YW5jZUZ1bmN0aW9uc05hbWVzW1wiSEFNTUlOR1wiXSA9IFwiSGFtbWluZ1wiO1xuICAgIE1tRGlzdGFuY2VGdW5jdGlvbnNOYW1lc1tcIkxFVkVOU0hURUlOXCJdID0gXCJMZXZlbnNodGVpblwiO1xuICAgIE1tRGlzdGFuY2VGdW5jdGlvbnNOYW1lc1tcIk5FRURMRU1BTk5fV1VOU0NIXCJdID0gXCJOZWVkbGVtYW5uLVd1bnNjaFwiO1xufSkoTW1EaXN0YW5jZUZ1bmN0aW9uc05hbWVzIHx8IChNbURpc3RhbmNlRnVuY3Rpb25zTmFtZXMgPSB7fSkpO1xuO1xuZXhwb3J0IGNvbnN0IG1tRGlzdGFuY2VGdW5jdGlvbnMgPSB7XG4gICAgW01tRGlzdGFuY2VGdW5jdGlvbnNOYW1lcy5IQU1NSU5HXTogaGFtbWluZyxcbiAgICBbTW1EaXN0YW5jZUZ1bmN0aW9uc05hbWVzLkxFVkVOU0hURUlOXTogbGV2ZW5zdGVpbixcbiAgICBbTW1EaXN0YW5jZUZ1bmN0aW9uc05hbWVzLk5FRURMRU1BTk5fV1VOU0NIXTogbmVlZGxlbWFuV3VuY2hcbn07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2liV0ZqY205dGIyeGxZM1ZzWlMxa2FYTjBZVzVqWlMxbWRXNWpkR2x2Ym5NdWFuTWlMQ0p6YjNWeVkyVlNiMjkwSWpvaUlpd2ljMjkxY21ObGN5STZXeUp0WVdOeWIyMXZiR1ZqZFd4bExXUnBjM1JoYm1ObExXWjFibU4wYVc5dWN5NTBjeUpkTENKdVlXMWxjeUk2VzEwc0ltMWhjSEJwYm1keklqb2lRVUZCUVN4UFFVRlBMRVZCUVVNc1QwRkJUeXhGUVVGRExFMUJRVTBzVjBGQlZ5eERRVUZETzBGQlEyeERMRTlCUVU4c1JVRkJReXhWUVVGVkxFVkJRVU1zVFVGQlRTeGpRVUZqTEVOQlFVTTdRVUZEZUVNc1QwRkJUeXhGUVVGRExHTkJRV01zUlVGQlF5eE5RVUZOTEc5Q1FVRnZRaXhEUVVGRE8wRkJSMnhFT3pzN08wZEJTVWM3UVVGRFNDeE5RVUZOTEVOQlFVNHNTVUZCV1N4M1FrRkpXRHRCUVVwRUxGZEJRVmtzZDBKQlFYZENPMGxCUTJoRExDdERRVUZ0UWl4RFFVRkJPMGxCUTI1Q0xIVkVRVUV5UWl4RFFVRkJPMGxCUXpOQ0xHMUZRVUYxUXl4RFFVRkJPMEZCUXpORExFTkJRVU1zUlVGS1Z5eDNRa0ZCZDBJc1MwRkJlRUlzZDBKQlFYZENMRkZCU1c1RE8wRkJRVUVzUTBGQlF6dEJRVVZHTEUxQlFVMHNRMEZCUXl4TlFVRk5MRzFDUVVGdFFpeEhRVUU0UlR0SlFVTTFSeXhEUVVGRExIZENRVUYzUWl4RFFVRkRMRTlCUVU4c1EwRkJReXhGUVVGRkxFOUJRVTg3U1VGRE0wTXNRMEZCUXl4M1FrRkJkMElzUTBGQlF5eFhRVUZYTEVOQlFVTXNSVUZCUlN4VlFVRlZPMGxCUTJ4RUxFTkJRVU1zZDBKQlFYZENMRU5CUVVNc2FVSkJRV2xDTEVOQlFVTXNSVUZCUlN4alFVRmpPME5CUXpkRUxFTkJRVU1pTENKemIzVnlZMlZ6UTI5dWRHVnVkQ0k2V3lKcGJYQnZjblFnZTJoaGJXMXBibWQ5SUdaeWIyMGdKeTR2YUdGdGJXbHVaeWM3WEc1cGJYQnZjblFnZTJ4bGRtVnVjM1JsYVc1OUlHWnliMjBnSnk0dmJHVjJaVzV6ZEdWcGJpYzdYRzVwYlhCdmNuUWdlMjVsWldSc1pXMWhibGQxYm1Ob2ZTQm1jbTl0SUNjdUwyNWxaV1JzWlcxaGJpMTNkVzV6WTJnbk8xeHVhVzF3YjNKMElIdHRiVVJwYzNSaGJtTmxSblZ1WTNScGIyNVVlWEJsZlNCbWNtOXRJQ2N1TDNSNWNHVnpKenRjYmx4dUx5b3FJRVZ1ZFcwZ1kyOXVkR0ZwYm1sdVp5QmpkWEp5Wlc1MGJIa2djM1Z3Y0c5eWRHVmtJRzFoWTNKdmJXOXNaV04xYkdVZ1pHbHpkR0Z1WTJVZ1puVnVZM1JwYjI1elhHNGdLaUJJWVcxdGFXNW5JR1JwYzNSaGJtTmxJSGRwYkd3Z1ltVWdkWE5sWkNCcFppQjBhR1VnYzJWeGRXVnVZMlZ6SUdGeVpTQmhiSEpsWVdSNUlHRnNhV2R1WldSY2JpQXFJRTVsWldSc1pXMWhiaUJrYVhOMFlXNWpaU0IzYVd4c0lHSmxJSFZ6WldRZ1ptOXlJSEJ5YjNSbGFXNGdjMlZ4ZFdWdVkyVnpJSGRwZEdnZ2EyNXZkMjRnUWt4UFUxVk5OaklnYldGMGNtbDRYRzRnS2lCTVpYWmxibk5vZEdWcGJpQmthWE4wWVc1alpTQjNhV3hzSUdKbElIVnpaV1FnWm05eUlHNTFZMnhsYjNScFpHVWdjMlZ4ZFdWdVkyVnpJR0Z6SUdadmNpQjBhR1Z0SUhOMVluTjBhWFIxZEdsdmJpQnRZWFJ5YVhnZ2FYTWdjMkZ0WlNCaGN5QnBaR1Z1ZEdsMGVTQnRZWFJ5YVhoY2JpQXFMMXh1Wlhod2IzSjBJR1Z1ZFcwZ1RXMUVhWE4wWVc1alpVWjFibU4wYVc5dWMwNWhiV1Z6SUh0Y2JpQWdJQ0JJUVUxTlNVNUhJRDBnSjBoaGJXMXBibWNuTEZ4dUlDQWdJRXhGVmtWT1UwaFVSVWxPSUQwZ0oweGxkbVZ1YzJoMFpXbHVKeXhjYmlBZ0lDQk9SVVZFVEVWTlFVNU9YMWRWVGxORFNDQTlJQ2RPWldWa2JHVnRZVzV1TFZkMWJuTmphQ2RjYm4wN1hHNWNibVY0Y0c5eWRDQmpiMjV6ZENCdGJVUnBjM1JoYm1ObFJuVnVZM1JwYjI1ek9pQlNaV052Y21ROFRXMUVhWE4wWVc1alpVWjFibU4wYVc5dWMwNWhiV1Z6TENBb2RtRnNkV1UvT2lCaGJua3BJRDArSUcxdFJHbHpkR0Z1WTJWR2RXNWpkR2x2YmxSNWNHVStJRDBnZTF4dUlDQmJUVzFFYVhOMFlXNWpaVVoxYm1OMGFXOXVjMDVoYldWekxraEJUVTFKVGtkZE9pQm9ZVzF0YVc1bkxGeHVJQ0JiVFcxRWFYTjBZVzVqWlVaMWJtTjBhVzl1YzA1aGJXVnpMa3hGVmtWT1UwaFVSVWxPWFRvZ2JHVjJaVzV6ZEdWcGJpeGNiaUFnVzAxdFJHbHpkR0Z1WTJWR2RXNWpkR2x2Ym5OT1lXMWxjeTVPUlVWRVRFVk5RVTVPWDFkVlRsTkRTRjA2SUc1bFpXUnNaVzFoYmxkMWJtTm9YRzU5TzF4dUlsMTkiLCIvLyBCbG9zdW0gNjIgbWF0cml4IGZvciBwcm90ZWluIHNlcXVlbmNlc1xuY29uc3QgQkxPU1VNNjIgPSBbWzQsIC0xLCAtMiwgLTIsIDAsIC0xLCAtMSwgMCwgLTIsIC0xLCAtMSwgLTEsIC0xLCAtMiwgLTEsIDEsIDAsIC0zLCAtMiwgMCwgLTIsIC0xLCAwLCAtNF0sXG4gICAgWy0xLCA1LCAwLCAtMiwgLTMsIDEsIDAsIC0yLCAwLCAtMywgLTIsIDIsIC0xLCAtMywgLTIsIC0xLCAtMSwgLTMsIC0yLCAtMywgLTEsIDAsIC0xLCAtNF0sXG4gICAgWy0yLCAwLCA2LCAxLCAtMywgMCwgMCwgMCwgMSwgLTMsIC0zLCAwLCAtMiwgLTMsIC0yLCAxLCAwLCAtNCwgLTIsIC0zLCAzLCAwLCAtMSwgLTRdLFxuICAgIFstMiwgLTIsIDEsIDYsIC0zLCAwLCAyLCAtMSwgLTEsIC0zLCAtNCwgLTEsIC0zLCAtMywgLTEsIDAsIC0xLCAtNCwgLTMsIC0zLCA0LCAxLCAtMSwgLTRdLFxuICAgIFswLCAtMywgLTMsIC0zLCA5LCAtMywgLTQsIC0zLCAtMywgLTEsIC0xLCAtMywgLTEsIC0yLCAtMywgLTEsIC0xLCAtMiwgLTIsIC0xLCAtMywgLTMsIC0yLCAtNF0sXG4gICAgWy0xLCAxLCAwLCAwLCAtMywgNSwgMiwgLTIsIDAsIC0zLCAtMiwgMSwgMCwgLTMsIC0xLCAwLCAtMSwgLTIsIC0xLCAtMiwgMCwgMywgLTEsIC00XSxcbiAgICBbLTEsIDAsIDAsIDIsIC00LCAyLCA1LCAtMiwgMCwgLTMsIC0zLCAxLCAtMiwgLTMsIC0xLCAwLCAtMSwgLTMsIC0yLCAtMiwgMSwgNCwgLTEsIC00XSxcbiAgICBbMCwgLTIsIDAsIC0xLCAtMywgLTIsIC0yLCA2LCAtMiwgLTQsIC00LCAtMiwgLTMsIC0zLCAtMiwgMCwgLTIsIC0yLCAtMywgLTMsIC0xLCAtMiwgLTEsIC00XSxcbiAgICBbLTIsIDAsIDEsIC0xLCAtMywgMCwgMCwgLTIsIDgsIC0zLCAtMywgLTEsIC0yLCAtMSwgLTIsIC0xLCAtMiwgLTIsIDIsIC0zLCAwLCAwLCAtMSwgLTRdLFxuICAgIFstMSwgLTMsIC0zLCAtMywgLTEsIC0zLCAtMywgLTQsIC0zLCA0LCAyLCAtMywgMSwgMCwgLTMsIC0yLCAtMSwgLTMsIC0xLCAzLCAtMywgLTMsIC0xLCAtNF0sXG4gICAgWy0xLCAtMiwgLTMsIC00LCAtMSwgLTIsIC0zLCAtNCwgLTMsIDIsIDQsIC0yLCAyLCAwLCAtMywgLTIsIC0xLCAtMiwgLTEsIDEsIC00LCAtMywgLTEsIC00XSxcbiAgICBbLTEsIDIsIDAsIC0xLCAtMywgMSwgMSwgLTIsIC0xLCAtMywgLTIsIDUsIC0xLCAtMywgLTEsIDAsIC0xLCAtMywgLTIsIC0yLCAwLCAxLCAtMSwgLTRdLFxuICAgIFstMSwgLTEsIC0yLCAtMywgLTEsIDAsIC0yLCAtMywgLTIsIDEsIDIsIC0xLCA1LCAwLCAtMiwgLTEsIC0xLCAtMSwgLTEsIDEsIC0zLCAtMSwgLTEsIC00XSxcbiAgICBbLTIsIC0zLCAtMywgLTMsIC0yLCAtMywgLTMsIC0zLCAtMSwgMCwgMCwgLTMsIDAsIDYsIC00LCAtMiwgLTIsIDEsIDMsIC0xLCAtMywgLTMsIC0xLCAtNF0sXG4gICAgWy0xLCAtMiwgLTIsIC0xLCAtMywgLTEsIC0xLCAtMiwgLTIsIC0zLCAtMywgLTEsIC0yLCAtNCwgNywgLTEsIC0xLCAtNCwgLTMsIC0yLCAtMiwgLTEsIC0yLCAtNF0sXG4gICAgWzEsIC0xLCAxLCAwLCAtMSwgMCwgMCwgMCwgLTEsIC0yLCAtMiwgMCwgLTEsIC0yLCAtMSwgNCwgMSwgLTMsIC0yLCAtMiwgMCwgMCwgMCwgLTRdLFxuICAgIFswLCAtMSwgMCwgLTEsIC0xLCAtMSwgLTEsIC0yLCAtMiwgLTEsIC0xLCAtMSwgLTEsIC0yLCAtMSwgMSwgNSwgLTIsIC0yLCAwLCAtMSwgLTEsIDAsIC00XSxcbiAgICBbLTMsIC0zLCAtNCwgLTQsIC0yLCAtMiwgLTMsIC0yLCAtMiwgLTMsIC0yLCAtMywgLTEsIDEsIC00LCAtMywgLTIsIDExLCAyLCAtMywgLTQsIC0zLCAtMiwgLTRdLFxuICAgIFstMiwgLTIsIC0yLCAtMywgLTIsIC0xLCAtMiwgLTMsIDIsIC0xLCAtMSwgLTIsIC0xLCAzLCAtMywgLTIsIC0yLCAyLCA3LCAtMSwgLTMsIC0yLCAtMSwgLTRdLFxuICAgIFswLCAtMywgLTMsIC0zLCAtMSwgLTIsIC0yLCAtMywgLTMsIDMsIDEsIC0yLCAxLCAtMSwgLTIsIC0yLCAwLCAtMywgLTEsIDQsIC0zLCAtMiwgLTEsIC00XSxcbiAgICBbLTIsIC0xLCAzLCA0LCAtMywgMCwgMSwgLTEsIDAsIC0zLCAtNCwgMCwgLTMsIC0zLCAtMiwgMCwgLTEsIC00LCAtMywgLTMsIDQsIDEsIC0xLCAtNF0sXG4gICAgWy0xLCAwLCAwLCAxLCAtMywgMywgNCwgLTIsIDAsIC0zLCAtMywgMSwgLTEsIC0zLCAtMSwgMCwgLTEsIC0zLCAtMiwgLTIsIDEsIDQsIC0xLCAtNF0sXG4gICAgWzAsIC0xLCAtMSwgLTEsIC0yLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTEsIC0xLCAtMiwgMCwgMCwgLTIsIC0xLCAtMSwgLTEsIC0xLCAtMSwgLTRdLFxuICAgIFstNCwgLTQsIC00LCAtNCwgLTQsIC00LCAtNCwgLTQsIC00LCAtNCwgLTQsIC00LCAtNCwgLTQsIC00LCAtNCwgLTQsIC00LCAtNCwgLTQsIC00LCAtNCwgLTQsIDFdXTtcbi8vIFByb3RlaW4gaW5kZXhlcyBmb3IgQkxPU1VNIG1hdHJpeFxuY29uc3QgUHJvdEluZGV4ZXMgPSB7XG4gICAgJ0EnOiAwLCAnUic6IDEsICdOJzogMiwgJ0QnOiAzLCAnQyc6IDQsICdRJzogNSwgJ0UnOiA2LCAnRyc6IDcsICdIJzogOCxcbiAgICAnSSc6IDksICdMJzogMTAsICdLJzogMTEsICdNJzogMTIsICdGJzogMTMsICdQJzogMTQsICdTJzogMTUsICdUJzogMTYsXG4gICAgJ1cnOiAxNywgJ1knOiAxOCwgJ1YnOiAxOSwgJ0InOiAyMCwgJ1onOiAyMSwgJ1gnOiAyMiwgJyonOiAyM1xufTtcbmNvbnN0IGRlZmF1bHRBcmdzID0ge1xuICAgIGdhcE9wZW46IDgsXG4gICAgZ2FwRXh0ZW5kOiAyLFxuICAgIHNjb3JpbmdNYXRyaXg6IEJMT1NVTTYyLFxuICAgIGFscGhhYmV0SW5kZXhlczogUHJvdEluZGV4ZXNcbn07XG4vKiogUmV0dXJucyBhIGZ1bmN0aW9uIHRoYXQgY2FsY3VsYXRlcyB0aGUgZGlzdGFuY2UgYmV0d2VlbiB0d28gc2VxdWVuY2VzIGJhc2VkIG9uIGdhcCBwZW5hbHR5IGFuZCBtYXRyaXhcbiAqIEBwYXJhbSB7UGFydGlhbDxOZWVkbGVtYW5XdW5jaEFyZ3M+fWFyZ3MgLSBhcmd1bWVudHMgZm9yIE5lZWRsZW1hbi1XdW5jaCBhbGdvcml0aG0gbGlrZSBnYXAgcGVuYWx0eSwgU2NvcmluZyBtYXRyaXguLlxuICogQHJldHVybiB7bW1EaXN0YW5jZUZ1bmN0aW9uVHlwZX0gLSBmdW5jdGlvbiB0aGF0IGNhbGN1bGF0ZXMgdGhlIGRpc3RhbmNlIGJldHdlZW4gdHdvIHNlcXVlbmNlc1xuKi9cbmV4cG9ydCBmdW5jdGlvbiBuZWVkbGVtYW5XdW5jaChhcmdzKSB7XG4gICAgcmV0dXJuIChzZXExLCBzZXEyKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgZ2FwT3BlbiwgZ2FwRXh0ZW5kLCBzY29yaW5nTWF0cml4LCBhbHBoYWJldEluZGV4ZXMgfSA9IHsgLi4uZGVmYXVsdEFyZ3MsIC4uLmFyZ3MgfTtcbiAgICAgICAgLy8gQXMgd2UgZG9uJ3QgbmVlZCB0cmFjZWJhY2ssIG5vIG5lZWQgdG8gc3RvcmUgdGhlIHdob2xlIG1hdHJpeFxuICAgICAgICAvLyBJbnRlYWQsIHdlIHdpbGwgc3RvcmUgb25seSB0aGUgbGFzdCB0d28gcm93c1xuICAgICAgICBjb25zdCBtYXRyaXggPSBbXG4gICAgICAgICAgICBuZXcgQXJyYXkoc2VxMS5sZW5ndGggKyAxKS5maWxsKDApLFxuICAgICAgICAgICAgbmV3IEFycmF5KHNlcTEubGVuZ3RoICsgMSkuZmlsbCgwKVxuICAgICAgICBdO1xuICAgICAgICAvLyBzaW1pbGFybHksIHdlIG5lZWQgdG8ga2VlcCB0cmFjayBvZiB3aGF0IG9wZXJhdGlvbiBsZWQgdG8gdGhlIGN1cnJlbnQgY2VsbFxuICAgICAgICAvLyBpLmUuIHdoZXRoZXIgd2UgY2FtZSBmcm9tIHRoZSBsZWZ0LCB0b3Agb3IgZGlhZ29uYWwgdG8gYXNzaWduIGdhcCBvcGVuL2dhcCBleHRlbmQgcGVuYWx0eVxuICAgICAgICBjb25zdCB2ZXJ0aWNhbEdhcHMgPSBuZXcgQXJyYXkoc2VxMS5sZW5ndGggKyAxKS5maWxsKGZhbHNlKTtcbiAgICAgICAgY29uc3QgaG9yaXpvbnRhbEdhcHMgPSBuZXcgQXJyYXkoc2VxMS5sZW5ndGggKyAxKS5maWxsKGZhbHNlKTtcbiAgICAgICAgLy92YXJpYWJsZXMgdG8ga2VlcCB0cmFjayB3aGljaCByb3cgd2UgYXJlIGluXG4gICAgICAgIC8vIHRoZXkgd2lsbCBzd2FwIHBsYWNlcyBvbiBlYWNoIGl0ZXJhdGlvblxuICAgICAgICBsZXQgcHJldlJvdyA9IDA7XG4gICAgICAgIGxldCBjdXJyUm93ID0gMTtcbiAgICAgICAgLy8gSW5pdGlhbGl6ZSBmaXJzdCByb3dcbiAgICAgICAgZm9yIChsZXQgaSA9IDE7IGkgPCBzZXExLmxlbmd0aCArIDE7IGkrKylcbiAgICAgICAgICAgIG1hdHJpeFswXVtpXSA9IC1nYXBPcGVuIC0gKGkgLSAxKSAqIGdhcEV4dGVuZDtcbiAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSByZXN0IG9mIHRoZSBtYXRyaXhcbiAgICAgICAgZm9yIChsZXQgaSA9IDE7IGkgPCBzZXEyLmxlbmd0aCArIDE7IGkrKykge1xuICAgICAgICAgICAgbWF0cml4W2N1cnJSb3ddWzBdID0gLWdhcE9wZW4gLSAoaSAtIDEpICogZ2FwRXh0ZW5kO1xuICAgICAgICAgICAgZm9yIChsZXQgaiA9IDE7IGogPCBzZXExLmxlbmd0aCArIDE7IGorKykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGRpYWdvbmFsID0gbWF0cml4W3ByZXZSb3ddW2ogLSAxXSArIHNjb3JpbmdNYXRyaXhbYWxwaGFiZXRJbmRleGVzW3NlcTFbaiAtIDFdXV1bYWxwaGFiZXRJbmRleGVzW3NlcTJbaSAtIDFdXV07XG4gICAgICAgICAgICAgICAgY29uc3QgdG9wID0gbWF0cml4W3ByZXZSb3ddW2pdIC0gKHZlcnRpY2FsR2Fwc1tqXSA/IGdhcEV4dGVuZCA6IGdhcE9wZW4pO1xuICAgICAgICAgICAgICAgIGNvbnN0IGxlZnQgPSBtYXRyaXhbY3VyclJvd11baiAtIDFdIC0gKGhvcml6b250YWxHYXBzW2ogLSAxXSA/IGdhcEV4dGVuZCA6IGdhcE9wZW4pO1xuICAgICAgICAgICAgICAgIG1hdHJpeFtjdXJyUm93XVtqXSA9IE1hdGgubWF4KGRpYWdvbmFsLCBsZWZ0LCB0b3ApO1xuICAgICAgICAgICAgICAgIC8vIHVwZGF0ZSBnYXAgYXJyYXlzXG4gICAgICAgICAgICAgICAgaWYgKG1hdHJpeFtjdXJyUm93XVtqXSA9PT0gZGlhZ29uYWwpIHtcbiAgICAgICAgICAgICAgICAgICAgdmVydGljYWxHYXBzW2pdID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgIGhvcml6b250YWxHYXBzW2pdID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKG1hdHJpeFtjdXJyUm93XVtqXSA9PT0gbGVmdCkge1xuICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbEdhcHNbal0gPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgaG9yaXpvbnRhbEdhcHNbal0gPSB0cnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdmVydGljYWxHYXBzW2pdID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgaG9yaXpvbnRhbEdhcHNbal0gPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBTd2FwIHJvd3NcbiAgICAgICAgICAgIHByZXZSb3cgPSBjdXJyUm93O1xuICAgICAgICAgICAgY3VyclJvdyA9IChjdXJyUm93ICsgMSkgJSAyO1xuICAgICAgICB9XG4gICAgICAgIC8vIGFzIHRoZSBtYXRyaXggaXMgdGhlIHNpbWlsYXJpdHkgbWF0cml4LCBidXQgd2UgYXJlIGludGVyZXN0ZWQgaW4gZGlzdGFuY2UsXG4gICAgICAgIC8vIHdlIG5lZWQgY29tcGFyZSBpdCB0byBwZXJmZWN0IG1hdGNoIHNjb3JlIHRvIGdldCByZWFzb25hYmxlIGRpc3RhbmNlXG4gICAgICAgIGNvbnN0IHBlcmZlY3RNYXRjaFNlcTEgPSBzZXExLnNwbGl0KCcnKS5tYXAoKGMpID0+IHNjb3JpbmdNYXRyaXhbYWxwaGFiZXRJbmRleGVzW2NdXVthbHBoYWJldEluZGV4ZXNbY11dKVxuICAgICAgICAgICAgLnJlZHVjZSgoYSwgYikgPT4gYSArIGIsIDApO1xuICAgICAgICBjb25zdCBwZXJmZWN0TWF0Y2hTZXEyID0gc2VxMi5zcGxpdCgnJykubWFwKChjKSA9PiBzY29yaW5nTWF0cml4W2FscGhhYmV0SW5kZXhlc1tjXV1bYWxwaGFiZXRJbmRleGVzW2NdXSlcbiAgICAgICAgICAgIC5yZWR1Y2UoKGEsIGIpID0+IGEgKyBiLCAwKTtcbiAgICAgICAgY29uc3QgbWF4U2NvcmUgPSBNYXRoLm1heChwZXJmZWN0TWF0Y2hTZXExLCBwZXJmZWN0TWF0Y2hTZXEyKTtcbiAgICAgICAgcmV0dXJuIChtYXhTY29yZSAtIG1hdHJpeFtwcmV2Um93XVtzZXExLmxlbmd0aF0pIC8gbWF4U2NvcmU7XG4gICAgfTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaWJtVmxaR3hsYldGdUxYZDFibk5qYUM1cWN5SXNJbk52ZFhKalpWSnZiM1FpT2lJaUxDSnpiM1Z5WTJWeklqcGJJbTVsWldSc1pXMWhiaTEzZFc1elkyZ3VkSE1pWFN3aWJtRnRaWE1pT2x0ZExDSnRZWEJ3YVc1bmN5STZJa0ZCUlVFc2VVTkJRWGxETzBGQlEzcERMRTFCUVUwc1VVRkJVU3hIUVVOa0xFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTTdTVUZEZUVZc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRGVrWXNRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF6dEpRVU53Uml4RFFVRkRMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJRenRKUVVONlJpeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRE9VWXNRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETzBsQlEzSkdMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRPMGxCUTNSR0xFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRPMGxCUXpWR0xFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF6dEpRVU40Uml4RFFVRkRMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRE0wWXNRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRE8wbEJRek5HTEVOQlFVTXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXp0SlFVTjRSaXhEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETzBsQlF6RkdMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRE1VWXNRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTTdTVUZETDBZc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVXNRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXp0SlFVTndSaXhEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETzBsQlF6RkdMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVWQlFVVXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTTdTVUZET1VZc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTTdTVUZETlVZc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF6dEpRVU14Uml4RFFVRkRMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRPMGxCUTNaR0xFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRE8wbEJRM1JHTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRE4wWXNRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMEZCUlc1SExHOURRVUZ2UXp0QlFVTndReXhOUVVGTkxGZEJRVmNzUjBGQmVVSTdTVUZEZUVNc1IwRkJSeXhGUVVGRkxFTkJRVU1zUlVGQlJTeEhRVUZITEVWQlFVVXNRMEZCUXl4RlFVRkZMRWRCUVVjc1JVRkJSU3hEUVVGRExFVkJRVVVzUjBGQlJ5eEZRVUZGTEVOQlFVTXNSVUZCUlN4SFFVRkhMRVZCUVVVc1EwRkJReXhGUVVGRkxFZEJRVWNzUlVGQlJTeERRVUZETEVWQlFVVXNSMEZCUnl4RlFVRkZMRU5CUVVNc1JVRkJSU3hIUVVGSExFVkJRVVVzUTBGQlF5eEZRVUZGTEVkQlFVY3NSVUZCUlN4RFFVRkRPMGxCUTNSRkxFZEJRVWNzUlVGQlJTeERRVUZETEVWQlFVVXNSMEZCUnl4RlFVRkZMRVZCUVVVc1JVRkJSU3hIUVVGSExFVkJRVVVzUlVGQlJTeEZRVUZGTEVkQlFVY3NSVUZCUlN4RlFVRkZMRVZCUVVVc1IwRkJSeXhGUVVGRkxFVkJRVVVzUlVGQlJTeEhRVUZITEVWQlFVVXNSVUZCUlN4RlFVRkZMRWRCUVVjc1JVRkJSU3hGUVVGRkxFVkJRVVVzUjBGQlJ5eEZRVUZGTEVWQlFVVTdTVUZEY2tVc1IwRkJSeXhGUVVGRkxFVkJRVVVzUlVGQlJTeEhRVUZITEVWQlFVVXNSVUZCUlN4RlFVRkZMRWRCUVVjc1JVRkJSU3hGUVVGRkxFVkJRVVVzUjBGQlJ5eEZRVUZGTEVWQlFVVXNSVUZCUlN4SFFVRkhMRVZCUVVVc1JVRkJSU3hGUVVGRkxFZEJRVWNzUlVGQlJTeEZRVUZGTEVWQlFVVXNSMEZCUnl4RlFVRkZMRVZCUVVVN1EwRkRPVVFzUTBGQlF6dEJRVk5HTEUxQlFVMHNWMEZCVnl4SFFVRjFRanRKUVVOMFF5eFBRVUZQTEVWQlFVVXNRMEZCUXp0SlFVTldMRk5CUVZNc1JVRkJSU3hEUVVGRE8wbEJRMW9zWVVGQllTeEZRVUZGTEZGQlFWRTdTVUZEZGtJc1pVRkJaU3hGUVVGRkxGZEJRVmM3UTBGRE4wSXNRMEZCUXp0QlFVVkdPenM3UlVGSFJUdEJRVU5HTEUxQlFVMHNWVUZCVlN4alFVRmpMRU5CUVVNc1NVRkJhVU03U1VGRE9VUXNUMEZCVHl4RFFVRkRMRWxCUVZrc1JVRkJSU3hKUVVGWkxFVkJRVmNzUlVGQlJUdFJRVU0zUXl4TlFVRk5MRVZCUVVNc1QwRkJUeXhGUVVGRkxGTkJRVk1zUlVGQlJTeGhRVUZoTEVWQlFVVXNaVUZCWlN4RlFVRkRMRWRCUVVjc1JVRkJReXhIUVVGSExGZEJRVmNzUlVGQlJTeEhRVUZITEVsQlFVa3NSVUZCUXl4RFFVRkRPMUZCUTNaR0xHZEZRVUZuUlR0UlFVTm9SU3dyUTBGQkswTTdVVUZETDBNc1RVRkJUU3hOUVVGTkxFZEJRV1U3V1VGRGVrSXNTVUZCU1N4TFFVRkxMRU5CUVZNc1NVRkJTU3hEUVVGRExFMUJRVTBzUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRE8xbEJRekZETEVsQlFVa3NTMEZCU3l4RFFVRlRMRWxCUVVrc1EwRkJReXhOUVVGTkxFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJRenRUUVVNelF5eERRVUZETzFGQlEwWXNOa1ZCUVRaRk8xRkJRemRGTERSR1FVRTBSanRSUVVNMVJpeE5RVUZOTEZsQlFWa3NSMEZCWXl4SlFVRkpMRXRCUVVzc1EwRkJWU3hKUVVGSkxFTkJRVU1zVFVGQlRTeEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF6dFJRVU5vUml4TlFVRk5MR05CUVdNc1IwRkJZeXhKUVVGSkxFdEJRVXNzUTBGQlZTeEpRVUZKTEVOQlFVTXNUVUZCVFN4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXp0UlFVVnNSaXcyUTBGQk5rTTdVVUZETjBNc01FTkJRVEJETzFGQlF6RkRMRWxCUVVrc1QwRkJUeXhIUVVGSExFTkJRVU1zUTBGQlF6dFJRVU5vUWl4SlFVRkpMRTlCUVU4c1IwRkJSeXhEUVVGRExFTkJRVU03VVVGRGFFSXNkVUpCUVhWQ08xRkJRM1pDTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eEpRVUZKTEVOQlFVTXNUVUZCVFN4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVU3V1VGRGRFTXNUVUZCVFN4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNUMEZCVHl4SFFVRkhMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eEhRVUZITEZOQlFWTXNRMEZCUXp0UlFVVm9SQ3h0UTBGQmJVTTdVVUZEYmtNc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRWxCUVVrc1EwRkJReXhOUVVGTkxFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZPMWxCUTNoRExFMUJRVTBzUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhEUVVGRExFOUJRVThzUjBGQlJ5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1IwRkJSeXhUUVVGVExFTkJRVU03V1VGRGNFUXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXl4TlFVRk5MRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUlVGQlJTeEZRVUZGTzJkQ1FVTjRReXhOUVVGTkxGRkJRVkVzUjBGRFdpeE5RVUZOTEVOQlFVTXNUMEZCVHl4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eEhRVUZITEdGQlFXRXNRMEZCUXl4bFFVRmxMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1pVRkJaU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8yZENRVU55Unl4TlFVRk5MRWRCUVVjc1IwRkJSeXhOUVVGTkxFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhaUVVGWkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRk5CUVZNc1EwRkJReXhEUVVGRExFTkJRVU1zVDBGQlR5eERRVUZGTEVOQlFVTTdaMEpCUXpGRkxFMUJRVTBzU1VGQlNTeEhRVUZITEUxQlFVMHNRMEZCUXl4UFFVRlBMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4alFVRmpMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4VFFVRlRMRU5CUVVNc1EwRkJReXhEUVVGRExFOUJRVThzUTBGQlF5eERRVUZETzJkQ1FVTndSaXhOUVVGTkxFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGRE0wSXNVVUZCVVN4RlFVRkZMRWxCUVVrc1JVRkJSU3hIUVVGSExFTkJRM0JDTEVOQlFVTTdaMEpCUTBZc2IwSkJRVzlDTzJkQ1FVTndRaXhKUVVGSkxFMUJRVTBzUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1MwRkJTeXhSUVVGUkxFVkJRVVU3YjBKQlEyNURMRmxCUVZrc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eExRVUZMTEVOQlFVTTdiMEpCUTNoQ0xHTkJRV01zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4TFFVRkxMRU5CUVVNN2FVSkJRek5DTzNGQ1FVRk5MRWxCUVVrc1RVRkJUU3hEUVVGRExFOUJRVThzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4TFFVRkxMRWxCUVVrc1JVRkJSVHR2UWtGRGRFTXNXVUZCV1N4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFdEJRVXNzUTBGQlF6dHZRa0ZEZUVJc1kwRkJZeXhEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXp0cFFrRkRNVUk3Y1VKQlFVMDdiMEpCUTB3c1dVRkJXU3hEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXp0dlFrRkRka0lzWTBGQll5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRXRCUVVzc1EwRkJRenRwUWtGRE0wSTdZVUZEUmp0WlFVTkVMRmxCUVZrN1dVRkRXaXhQUVVGUExFZEJRVWNzVDBGQlR5eERRVUZETzFsQlEyeENMRTlCUVU4c1IwRkJSeXhEUVVGRExFOUJRVThzUjBGQlJ5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNN1UwRkROMEk3VVVGRFJDdzJSVUZCTmtVN1VVRkROMFVzZFVWQlFYVkZPMUZCUTNaRkxFMUJRVTBzWjBKQlFXZENMRWRCUVVjc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUlVGQlJTeERRVUZETEdGQlFXRXNRMEZCUXl4bFFVRmxMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eGxRVUZsTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRoUVVOMFJ5eE5RVUZOTEVOQlFVTXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFVkJRVVVzUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRE8xRkJRemxDTEUxQlFVMHNaMEpCUVdkQ0xFZEJRVWNzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNSVUZCUlN4RFFVRkRMR0ZCUVdFc1EwRkJReXhsUVVGbExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4bFFVRmxMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dGhRVU4wUnl4TlFVRk5MRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETzFGQlF6bENMRTFCUVUwc1VVRkJVU3hIUVVGSExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNaMEpCUVdkQ0xFVkJRVVVzWjBKQlFXZENMRU5CUVVNc1EwRkJRenRSUVVNNVJDeFBRVUZQTEVOQlFVTXNVVUZCVVN4SFFVRkhMRTFCUVUwc1EwRkJReXhQUVVGUExFTkJRVU1zUTBGQlF5eEpRVUZKTEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNc1IwRkJSeXhSUVVGUkxFTkJRVU03U1VGRE9VUXNRMEZCUXl4RFFVRkRPMEZCUTBvc1EwRkJReUlzSW5OdmRYSmpaWE5EYjI1MFpXNTBJanBiSW1sdGNHOXlkQ0I3YlcxRWFYTjBZVzVqWlVaMWJtTjBhVzl1Vkhsd1pYMGdabkp2YlNBbkxpOTBlWEJsY3ljN1hHNWNiaTh2SUVKc2IzTjFiU0EyTWlCdFlYUnlhWGdnWm05eUlIQnliM1JsYVc0Z2MyVnhkV1Z1WTJWelhHNWpiMjV6ZENCQ1RFOVRWVTAyTWpwQmNuSmhlVHhCY25KaGVUeHVkVzFpWlhJK1BpQTlYRzViV3pRc0lDMHhMQ0F0TWl3Z0xUSXNJREFzSUMweExDQXRNU3dnTUN3Z0xUSXNJQzB4TENBdE1Td2dMVEVzSUMweExDQXRNaXdnTFRFc0lERXNJREFzSUMwekxDQXRNaXdnTUN3Z0xUSXNJQzB4TENBd0xDQXRORjBzWEc0Z0lGc3RNU3dnTlN3Z01Dd2dMVElzSUMwekxDQXhMQ0F3TENBdE1pd2dNQ3dnTFRNc0lDMHlMQ0F5TENBdE1Td2dMVE1zSUMweUxDQXRNU3dnTFRFc0lDMHpMQ0F0TWl3Z0xUTXNJQzB4TENBd0xDQXRNU3dnTFRSZExGeHVJQ0JiTFRJc0lEQXNJRFlzSURFc0lDMHpMQ0F3TENBd0xDQXdMQ0F4TENBdE15d2dMVE1zSURBc0lDMHlMQ0F0TXl3Z0xUSXNJREVzSURBc0lDMDBMQ0F0TWl3Z0xUTXNJRE1zSURBc0lDMHhMQ0F0TkYwc1hHNGdJRnN0TWl3Z0xUSXNJREVzSURZc0lDMHpMQ0F3TENBeUxDQXRNU3dnTFRFc0lDMHpMQ0F0TkN3Z0xURXNJQzB6TENBdE15d2dMVEVzSURBc0lDMHhMQ0F0TkN3Z0xUTXNJQzB6TENBMExDQXhMQ0F0TVN3Z0xUUmRMRnh1SUNCYk1Dd2dMVE1zSUMwekxDQXRNeXdnT1N3Z0xUTXNJQzAwTENBdE15d2dMVE1zSUMweExDQXRNU3dnTFRNc0lDMHhMQ0F0TWl3Z0xUTXNJQzB4TENBdE1Td2dMVElzSUMweUxDQXRNU3dnTFRNc0lDMHpMQ0F0TWl3Z0xUUmRMRnh1SUNCYkxURXNJREVzSURBc0lEQXNJQzB6TENBMUxDQXlMQ0F0TWl3Z01Dd2dMVE1zSUMweUxDQXhMQ0F3TENBdE15d2dMVEVzSURBc0lDMHhMQ0F0TWl3Z0xURXNJQzB5TENBd0xDQXpMQ0F0TVN3Z0xUUmRMRnh1SUNCYkxURXNJREFzSURBc0lESXNJQzAwTENBeUxDQTFMQ0F0TWl3Z01Dd2dMVE1zSUMwekxDQXhMQ0F0TWl3Z0xUTXNJQzB4TENBd0xDQXRNU3dnTFRNc0lDMHlMQ0F0TWl3Z01Td2dOQ3dnTFRFc0lDMDBYU3hjYmlBZ1d6QXNJQzB5TENBd0xDQXRNU3dnTFRNc0lDMHlMQ0F0TWl3Z05pd2dMVElzSUMwMExDQXROQ3dnTFRJc0lDMHpMQ0F0TXl3Z0xUSXNJREFzSUMweUxDQXRNaXdnTFRNc0lDMHpMQ0F0TVN3Z0xUSXNJQzB4TENBdE5GMHNYRzRnSUZzdE1pd2dNQ3dnTVN3Z0xURXNJQzB6TENBd0xDQXdMQ0F0TWl3Z09Dd2dMVE1zSUMwekxDQXRNU3dnTFRJc0lDMHhMQ0F0TWl3Z0xURXNJQzB5TENBdE1pd2dNaXdnTFRNc0lEQXNJREFzSUMweExDQXRORjBzWEc0Z0lGc3RNU3dnTFRNc0lDMHpMQ0F0TXl3Z0xURXNJQzB6TENBdE15d2dMVFFzSUMwekxDQTBMQ0F5TENBdE15d2dNU3dnTUN3Z0xUTXNJQzB5TENBdE1Td2dMVE1zSUMweExDQXpMQ0F0TXl3Z0xUTXNJQzB4TENBdE5GMHNYRzRnSUZzdE1Td2dMVElzSUMwekxDQXROQ3dnTFRFc0lDMHlMQ0F0TXl3Z0xUUXNJQzB6TENBeUxDQTBMQ0F0TWl3Z01pd2dNQ3dnTFRNc0lDMHlMQ0F0TVN3Z0xUSXNJQzB4TENBeExDQXROQ3dnTFRNc0lDMHhMQ0F0TkYwc1hHNGdJRnN0TVN3Z01pd2dNQ3dnTFRFc0lDMHpMQ0F4TENBeExDQXRNaXdnTFRFc0lDMHpMQ0F0TWl3Z05Td2dMVEVzSUMwekxDQXRNU3dnTUN3Z0xURXNJQzB6TENBdE1pd2dMVElzSURBc0lERXNJQzB4TENBdE5GMHNYRzRnSUZzdE1Td2dMVEVzSUMweUxDQXRNeXdnTFRFc0lEQXNJQzB5TENBdE15d2dMVElzSURFc0lESXNJQzB4TENBMUxDQXdMQ0F0TWl3Z0xURXNJQzB4TENBdE1Td2dMVEVzSURFc0lDMHpMQ0F0TVN3Z0xURXNJQzAwWFN4Y2JpQWdXeTB5TENBdE15d2dMVE1zSUMwekxDQXRNaXdnTFRNc0lDMHpMQ0F0TXl3Z0xURXNJREFzSURBc0lDMHpMQ0F3TENBMkxDQXROQ3dnTFRJc0lDMHlMQ0F4TENBekxDQXRNU3dnTFRNc0lDMHpMQ0F0TVN3Z0xUUmRMRnh1SUNCYkxURXNJQzB5TENBdE1pd2dMVEVzSUMwekxDQXRNU3dnTFRFc0lDMHlMQ0F0TWl3Z0xUTXNJQzB6TENBdE1Td2dMVElzSUMwMExDQTNMQ0F0TVN3Z0xURXNJQzAwTENBdE15d2dMVElzSUMweUxDQXRNU3dnTFRJc0lDMDBYU3hjYmlBZ1d6RXNJQzB4TENBeExDQXdMQ0F0TVN3Z01Dd2dNQ3dnTUN3Z0xURXNJQzB5TENBdE1pd2dNQ3dnTFRFc0lDMHlMQ0F0TVN3Z05Dd2dNU3dnTFRNc0lDMHlMQ0F0TWl3Z01Dd2dNQ3dnTUN3Z0xUUmRMRnh1SUNCYk1Dd2dMVEVzSURBc0lDMHhMQ0F0TVN3Z0xURXNJQzB4TENBdE1pd2dMVElzSUMweExDQXRNU3dnTFRFc0lDMHhMQ0F0TWl3Z0xURXNJREVzSURVc0lDMHlMQ0F0TWl3Z01Dd2dMVEVzSUMweExDQXdMQ0F0TkYwc1hHNGdJRnN0TXl3Z0xUTXNJQzAwTENBdE5Dd2dMVElzSUMweUxDQXRNeXdnTFRJc0lDMHlMQ0F0TXl3Z0xUSXNJQzB6TENBdE1Td2dNU3dnTFRRc0lDMHpMQ0F0TWl3Z01URXNJRElzSUMwekxDQXROQ3dnTFRNc0lDMHlMQ0F0TkYwc1hHNGdJRnN0TWl3Z0xUSXNJQzB5TENBdE15d2dMVElzSUMweExDQXRNaXdnTFRNc0lESXNJQzB4TENBdE1Td2dMVElzSUMweExDQXpMQ0F0TXl3Z0xUSXNJQzB5TENBeUxDQTNMQ0F0TVN3Z0xUTXNJQzB5TENBdE1Td2dMVFJkTEZ4dUlDQmJNQ3dnTFRNc0lDMHpMQ0F0TXl3Z0xURXNJQzB5TENBdE1pd2dMVE1zSUMwekxDQXpMQ0F4TENBdE1pd2dNU3dnTFRFc0lDMHlMQ0F0TWl3Z01Dd2dMVE1zSUMweExDQTBMQ0F0TXl3Z0xUSXNJQzB4TENBdE5GMHNYRzRnSUZzdE1pd2dMVEVzSURNc0lEUXNJQzB6TENBd0xDQXhMQ0F0TVN3Z01Dd2dMVE1zSUMwMExDQXdMQ0F0TXl3Z0xUTXNJQzB5TENBd0xDQXRNU3dnTFRRc0lDMHpMQ0F0TXl3Z05Dd2dNU3dnTFRFc0lDMDBYU3hjYmlBZ1d5MHhMQ0F3TENBd0xDQXhMQ0F0TXl3Z015d2dOQ3dnTFRJc0lEQXNJQzB6TENBdE15d2dNU3dnTFRFc0lDMHpMQ0F0TVN3Z01Dd2dMVEVzSUMwekxDQXRNaXdnTFRJc0lERXNJRFFzSUMweExDQXRORjBzWEc0Z0lGc3dMQ0F0TVN3Z0xURXNJQzB4TENBdE1pd2dMVEVzSUMweExDQXRNU3dnTFRFc0lDMHhMQ0F0TVN3Z0xURXNJQzB4TENBdE1Td2dMVElzSURBc0lEQXNJQzB5TENBdE1Td2dMVEVzSUMweExDQXRNU3dnTFRFc0lDMDBYU3hjYmlBZ1d5MDBMQ0F0TkN3Z0xUUXNJQzAwTENBdE5Dd2dMVFFzSUMwMExDQXROQ3dnTFRRc0lDMDBMQ0F0TkN3Z0xUUXNJQzAwTENBdE5Dd2dMVFFzSUMwMExDQXROQ3dnTFRRc0lDMDBMQ0F0TkN3Z0xUUXNJQzAwTENBdE5Dd2dNVjFkTzF4dVhHNHZMeUJRY205MFpXbHVJR2x1WkdWNFpYTWdabTl5SUVKTVQxTlZUU0J0WVhSeWFYaGNibU52Ym5OMElGQnliM1JKYm1SbGVHVnpPaUI3VzJsa09uTjBjbWx1WjEwNmJuVnRZbVZ5ZlNBOUlIdGNiaUFnSjBFbk9pQXdMQ0FuVWljNklERXNJQ2RPSnpvZ01pd2dKMFFuT2lBekxDQW5ReWM2SURRc0lDZFJKem9nTlN3Z0owVW5PaUEyTENBblJ5YzZJRGNzSUNkSUp6b2dPQ3hjYmlBZ0owa25PaUE1TENBblRDYzZJREV3TENBblN5YzZJREV4TENBblRTYzZJREV5TENBblJpYzZJREV6TENBblVDYzZJREUwTENBblV5YzZJREUxTENBblZDYzZJREUyTEZ4dUlDQW5WeWM2SURFM0xDQW5XU2M2SURFNExDQW5WaWM2SURFNUxDQW5RaWM2SURJd0xDQW5XaWM2SURJeExDQW5XQ2M2SURJeUxDQW5LaWM2SURJelhHNTlPMXh1WEc1cGJuUmxjbVpoWTJVZ1RtVmxaR3hsYldGdVYzVnVZMmhCY21keklIdGNiaUFnWjJGd1QzQmxiam9nYm5WdFltVnlPMXh1SUNCbllYQkZlSFJsYm1RNklHNTFiV0psY2p0Y2JpQWdjMk52Y21sdVowMWhkSEpwZURvZ2JuVnRZbVZ5VzExYlhUdGNiaUFnWVd4d2FHRmlaWFJKYm1SbGVHVnpPaUI3VzJsa09uTjBjbWx1WjEwNmJuVnRZbVZ5ZlR0Y2JuMWNibHh1WTI5dWMzUWdaR1ZtWVhWc2RFRnlaM002SUU1bFpXUnNaVzFoYmxkMWJtTm9RWEpuY3lBOUlIdGNiaUFnWjJGd1QzQmxiam9nT0N4Y2JpQWdaMkZ3UlhoMFpXNWtPaUF5TEZ4dUlDQnpZMjl5YVc1blRXRjBjbWw0T2lCQ1RFOVRWVTAyTWl4Y2JpQWdZV3h3YUdGaVpYUkpibVJsZUdWek9pQlFjbTkwU1c1a1pYaGxjMXh1ZlR0Y2JseHVMeW9xSUZKbGRIVnlibk1nWVNCbWRXNWpkR2x2YmlCMGFHRjBJR05oYkdOMWJHRjBaWE1nZEdobElHUnBjM1JoYm1ObElHSmxkSGRsWlc0Z2RIZHZJSE5sY1hWbGJtTmxjeUJpWVhObFpDQnZiaUJuWVhBZ2NHVnVZV3gwZVNCaGJtUWdiV0YwY21sNFhHNGdLaUJBY0dGeVlXMGdlMUJoY25ScFlXdzhUbVZsWkd4bGJXRnVWM1Z1WTJoQmNtZHpQbjFoY21keklDMGdZWEpuZFcxbGJuUnpJR1p2Y2lCT1pXVmtiR1Z0WVc0dFYzVnVZMmdnWVd4bmIzSnBkR2h0SUd4cGEyVWdaMkZ3SUhCbGJtRnNkSGtzSUZOamIzSnBibWNnYldGMGNtbDRMaTVjYmlBcUlFQnlaWFIxY200Z2UyMXRSR2x6ZEdGdVkyVkdkVzVqZEdsdmJsUjVjR1Y5SUMwZ1puVnVZM1JwYjI0Z2RHaGhkQ0JqWVd4amRXeGhkR1Z6SUhSb1pTQmthWE4wWVc1alpTQmlaWFIzWldWdUlIUjNieUJ6WlhGMVpXNWpaWE5jYmlvdlhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z2JtVmxaR3hsYldGdVYzVnVZMmdvWVhKbmN6b2dVR0Z5ZEdsaGJEeE9aV1ZrYkdWdFlXNVhkVzVqYUVGeVozTStLVG9nYlcxRWFYTjBZVzVqWlVaMWJtTjBhVzl1Vkhsd1pTQjdYRzRnSUhKbGRIVnliaUFvYzJWeE1Ub2djM1J5YVc1bkxDQnpaWEV5T2lCemRISnBibWNwSURvZ2JuVnRZbVZ5SUQwK0lIdGNiaUFnSUNCamIyNXpkQ0I3WjJGd1QzQmxiaXdnWjJGd1JYaDBaVzVrTENCelkyOXlhVzVuVFdGMGNtbDRMQ0JoYkhCb1lXSmxkRWx1WkdWNFpYTjlJRDBnZXk0dUxtUmxabUYxYkhSQmNtZHpMQ0F1TGk1aGNtZHpmVHRjYmlBZ0lDQXZMeUJCY3lCM1pTQmtiMjRuZENCdVpXVmtJSFJ5WVdObFltRmpheXdnYm04Z2JtVmxaQ0IwYnlCemRHOXlaU0IwYUdVZ2QyaHZiR1VnYldGMGNtbDRYRzRnSUNBZ0x5OGdTVzUwWldGa0xDQjNaU0IzYVd4c0lITjBiM0psSUc5dWJIa2dkR2hsSUd4aGMzUWdkSGR2SUhKdmQzTmNiaUFnSUNCamIyNXpkQ0J0WVhSeWFYZzZJRzUxYldKbGNsdGRXMTBnUFNCYlhHNGdJQ0FnSUNCdVpYY2dRWEp5WVhrOGJuVnRZbVZ5UGloelpYRXhMbXhsYm1kMGFDQXJJREVwTG1acGJHd29NQ2tzWEc0Z0lDQWdJQ0J1WlhjZ1FYSnlZWGs4Ym5WdFltVnlQaWh6WlhFeExteGxibWQwYUNBcklERXBMbVpwYkd3b01DbGNiaUFnSUNCZE8xeHVJQ0FnSUM4dklITnBiV2xzWVhKc2VTd2dkMlVnYm1WbFpDQjBieUJyWldWd0lIUnlZV05ySUc5bUlIZG9ZWFFnYjNCbGNtRjBhVzl1SUd4bFpDQjBieUIwYUdVZ1kzVnljbVZ1ZENCalpXeHNYRzRnSUNBZ0x5OGdhUzVsTGlCM2FHVjBhR1Z5SUhkbElHTmhiV1VnWm5KdmJTQjBhR1VnYkdWbWRDd2dkRzl3SUc5eUlHUnBZV2R2Ym1Gc0lIUnZJR0Z6YzJsbmJpQm5ZWEFnYjNCbGJpOW5ZWEFnWlhoMFpXNWtJSEJsYm1Gc2RIbGNiaUFnSUNCamIyNXpkQ0IyWlhKMGFXTmhiRWRoY0hNNklHSnZiMnhsWVc1YlhTQTlJRzVsZHlCQmNuSmhlVHhpYjI5c1pXRnVQaWh6WlhFeExteGxibWQwYUNBcklERXBMbVpwYkd3b1ptRnNjMlVwTzF4dUlDQWdJR052Ym5OMElHaHZjbWw2YjI1MFlXeEhZWEJ6T2lCaWIyOXNaV0Z1VzEwZ1BTQnVaWGNnUVhKeVlYazhZbTl2YkdWaGJqNG9jMlZ4TVM1c1pXNW5kR2dnS3lBeEtTNW1hV3hzS0daaGJITmxLVHRjYmx4dUlDQWdJQzh2ZG1GeWFXRmliR1Z6SUhSdklHdGxaWEFnZEhKaFkyc2dkMmhwWTJnZ2NtOTNJSGRsSUdGeVpTQnBibHh1SUNBZ0lDOHZJSFJvWlhrZ2QybHNiQ0J6ZDJGd0lIQnNZV05sY3lCdmJpQmxZV05vSUdsMFpYSmhkR2x2Ymx4dUlDQWdJR3hsZENCd2NtVjJVbTkzSUQwZ01EdGNiaUFnSUNCc1pYUWdZM1Z5Y2xKdmR5QTlJREU3WEc0Z0lDQWdMeThnU1c1cGRHbGhiR2w2WlNCbWFYSnpkQ0J5YjNkY2JpQWdJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Uc2dhU0E4SUhObGNURXViR1Z1WjNSb0lDc2dNVHNnYVNzcktWeHVJQ0FnSUNBZ2JXRjBjbWw0V3pCZFcybGRJRDBnTFdkaGNFOXdaVzRnTFNBb2FTQXRJREVwSUNvZ1oyRndSWGgwWlc1a08xeHVYRzRnSUNBZ0x5OGdRMkZzWTNWc1lYUmxJSFJvWlNCeVpYTjBJRzltSUhSb1pTQnRZWFJ5YVhoY2JpQWdJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Uc2dhU0E4SUhObGNUSXViR1Z1WjNSb0lDc2dNVHNnYVNzcktTQjdYRzRnSUNBZ0lDQnRZWFJ5YVhoYlkzVnljbEp2ZDExYk1GMGdQU0F0WjJGd1QzQmxiaUF0SUNocElDMGdNU2tnS2lCbllYQkZlSFJsYm1RN1hHNGdJQ0FnSUNCbWIzSWdLR3hsZENCcUlEMGdNVHNnYWlBOElITmxjVEV1YkdWdVozUm9JQ3NnTVRzZ2Fpc3JLU0I3WEc0Z0lDQWdJQ0FnSUdOdmJuTjBJR1JwWVdkdmJtRnNJRDFjYmlBZ0lDQWdJQ0FnSUNCdFlYUnlhWGhiY0hKbGRsSnZkMTFiYWlBdElERmRJQ3NnYzJOdmNtbHVaMDFoZEhKcGVGdGhiSEJvWVdKbGRFbHVaR1Y0WlhOYmMyVnhNVnRxSUMwZ01WMWRYVnRoYkhCb1lXSmxkRWx1WkdWNFpYTmJjMlZ4TWx0cElDMGdNVjFkWFR0Y2JpQWdJQ0FnSUNBZ1kyOXVjM1FnZEc5d0lEMGdiV0YwY21sNFczQnlaWFpTYjNkZFcycGRJQzBnS0habGNuUnBZMkZzUjJGd2MxdHFYU0EvSUdkaGNFVjRkR1Z1WkNBNklHZGhjRTl3Wlc0Z0tUdGNiaUFnSUNBZ0lDQWdZMjl1YzNRZ2JHVm1kQ0E5SUcxaGRISnBlRnRqZFhKeVVtOTNYVnRxSUMwZ01WMGdMU0FvYUc5eWFYcHZiblJoYkVkaGNITmJhaUF0SURGZElEOGdaMkZ3UlhoMFpXNWtJRG9nWjJGd1QzQmxiaWs3WEc0Z0lDQWdJQ0FnSUcxaGRISnBlRnRqZFhKeVVtOTNYVnRxWFNBOUlFMWhkR2d1YldGNEtGeHVJQ0FnSUNBZ0lDQWdJR1JwWVdkdmJtRnNMQ0JzWldaMExDQjBiM0JjYmlBZ0lDQWdJQ0FnS1R0Y2JpQWdJQ0FnSUNBZ0x5OGdkWEJrWVhSbElHZGhjQ0JoY25KaGVYTmNiaUFnSUNBZ0lDQWdhV1lnS0cxaGRISnBlRnRqZFhKeVVtOTNYVnRxWFNBOVBUMGdaR2xoWjI5dVlXd3BJSHRjYmlBZ0lDQWdJQ0FnSUNCMlpYSjBhV05oYkVkaGNITmJhbDBnUFNCbVlXeHpaVHRjYmlBZ0lDQWdJQ0FnSUNCb2IzSnBlbTl1ZEdGc1IyRndjMXRxWFNBOUlHWmhiSE5sTzF4dUlDQWdJQ0FnSUNCOUlHVnNjMlVnYVdZZ0tHMWhkSEpwZUZ0amRYSnlVbTkzWFZ0cVhTQTlQVDBnYkdWbWRDa2dlMXh1SUNBZ0lDQWdJQ0FnSUhabGNuUnBZMkZzUjJGd2MxdHFYU0E5SUdaaGJITmxPMXh1SUNBZ0lDQWdJQ0FnSUdodmNtbDZiMjUwWVd4SFlYQnpXMnBkSUQwZ2RISjFaVHRjYmlBZ0lDQWdJQ0FnZlNCbGJITmxJSHRjYmlBZ0lDQWdJQ0FnSUNCMlpYSjBhV05oYkVkaGNITmJhbDBnUFNCMGNuVmxPMXh1SUNBZ0lDQWdJQ0FnSUdodmNtbDZiMjUwWVd4SFlYQnpXMnBkSUQwZ1ptRnNjMlU3WEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUgxY2JpQWdJQ0FnSUM4dklGTjNZWEFnY205M2MxeHVJQ0FnSUNBZ2NISmxkbEp2ZHlBOUlHTjFjbkpTYjNjN1hHNGdJQ0FnSUNCamRYSnlVbTkzSUQwZ0tHTjFjbkpTYjNjZ0t5QXhLU0FsSURJN1hHNGdJQ0FnZlZ4dUlDQWdJQzh2SUdGeklIUm9aU0J0WVhSeWFYZ2dhWE1nZEdobElITnBiV2xzWVhKcGRIa2diV0YwY21sNExDQmlkWFFnZDJVZ1lYSmxJR2x1ZEdWeVpYTjBaV1FnYVc0Z1pHbHpkR0Z1WTJVc1hHNGdJQ0FnTHk4Z2QyVWdibVZsWkNCamIyMXdZWEpsSUdsMElIUnZJSEJsY21abFkzUWdiV0YwWTJnZ2MyTnZjbVVnZEc4Z1oyVjBJSEpsWVhOdmJtRmliR1VnWkdsemRHRnVZMlZjYmlBZ0lDQmpiMjV6ZENCd1pYSm1aV04wVFdGMFkyaFRaWEV4SUQwZ2MyVnhNUzV6Y0d4cGRDZ25KeWt1YldGd0tDaGpLU0E5UGlCelkyOXlhVzVuVFdGMGNtbDRXMkZzY0doaFltVjBTVzVrWlhobGMxdGpYVjFiWVd4d2FHRmlaWFJKYm1SbGVHVnpXMk5kWFNsY2JpQWdJQ0FnSUM1eVpXUjFZMlVvS0dFc0lHSXBJRDArSUdFZ0t5QmlMQ0F3S1R0Y2JpQWdJQ0JqYjI1emRDQndaWEptWldOMFRXRjBZMmhUWlhFeUlEMGdjMlZ4TWk1emNHeHBkQ2duSnlrdWJXRndLQ2hqS1NBOVBpQnpZMjl5YVc1blRXRjBjbWw0VzJGc2NHaGhZbVYwU1c1a1pYaGxjMXRqWFYxYllXeHdhR0ZpWlhSSmJtUmxlR1Z6VzJOZFhTbGNiaUFnSUNBZ0lDNXlaV1IxWTJVb0tHRXNJR0lwSUQwK0lHRWdLeUJpTENBd0tUdGNiaUFnSUNCamIyNXpkQ0J0WVhoVFkyOXlaU0E5SUUxaGRHZ3ViV0Y0S0hCbGNtWmxZM1JOWVhSamFGTmxjVEVzSUhCbGNtWmxZM1JOWVhSamFGTmxjVElwTzF4dUlDQWdJSEpsZEhWeWJpQW9iV0Y0VTJOdmNtVWdMU0J0WVhSeWFYaGJjSEpsZGxKdmQxMWJjMlZ4TVM1c1pXNW5kR2hkS1NBdklHMWhlRk5qYjNKbE8xeHVJQ0I5TzF4dWZWeHVJbDE5IiwiLyoqXG4gKiBEZW5vdGVzIGEgdmVjdG9yIG9mIGZsb2F0aW5nIHBvaXQgdmFsdWVzLlxuICpcbiAqIEBleHBvcnRcbiAqIEBjbGFzcyBWZWN0b3JcbiAqIEBleHRlbmRzIHtGbG9hdDMyQXJyYXl9XG4gKi9cbmV4cG9ydCBjbGFzcyBWZWN0b3IgZXh0ZW5kcyBGbG9hdDMyQXJyYXkge1xufVxuLyoqXG4gKiBEZW5vdGVzIGEgdHdvLWRpbWVuc2lvbmFsIG1hdHJpeC5cbiAqXG4gKiBAZXhwb3J0XG4gKiBAY2xhc3MgTWF0cml4XG4gKiBAZXh0ZW5kcyB7QXJyYXk8VmVjdG9yPn1cbiAqL1xuZXhwb3J0IGNsYXNzIE1hdHJpeCBleHRlbmRzIEFycmF5IHtcbn1cbi8qKlxuICogRGVub3RlcyBjYXJ0ZXNpYW4gY29vcmRpbmF0ZXMuXG4gKlxuICogQGV4cG9ydFxuICogQGNsYXNzIENvb3JkaW5hdGVzXG4gKiBAZXh0ZW5kcyB7TWF0cml4fVxuICovXG5leHBvcnQgY2xhc3MgQ29vcmRpbmF0ZXMgZXh0ZW5kcyBNYXRyaXgge1xufVxuLyoqXG4gKiBEZW5vdGVzIGFuIGFycmF5IG9mIGFyYml0cmFyeS10eXBlZCB2ZWN0b3JzLlxuICpcbiAqIEBleHBvcnRcbiAqIEBjbGFzcyBWZWN0b3JzXG4gKiBAZXh0ZW5kcyB7QXJyYXk8YW55Pn1cbiAqL1xuZXhwb3J0IGNsYXNzIFZlY3RvcnMgZXh0ZW5kcyBBcnJheSB7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lkSGx3WlMxa1pXTnNZWEpoZEdsdmJuTXVhbk1pTENKemIzVnlZMlZTYjI5MElqb2lJaXdpYzI5MWNtTmxjeUk2V3lKMGVYQmxMV1JsWTJ4aGNtRjBhVzl1Y3k1MGN5SmRMQ0p1WVcxbGN5STZXMTBzSW0xaGNIQnBibWR6SWpvaVFVRkZRVHM3T3pzN08wZEJUVWM3UVVGRFNDeE5RVUZOTEU5QlFVOHNUVUZCVHl4VFFVRlJMRmxCUVZrN1EwRkJSenRCUVVVelF6czdPenM3TzBkQlRVYzdRVUZEU0N4TlFVRk5MRTlCUVU4c1RVRkJUeXhUUVVGUkxFdEJRV0U3UTBGQlJ6dEJRVVUxUXpzN096czdPMGRCVFVjN1FVRkRTQ3hOUVVGTkxFOUJRVThzVjBGQldTeFRRVUZSTEUxQlFVMDdRMEZCUnp0QlFVVXhRenM3T3pzN08wZEJUVWM3UVVGRFNDeE5RVUZOTEU5QlFVOHNUMEZCVVN4VFFVRlJMRXRCUVZVN1EwRkJSeUlzSW5OdmRYSmpaWE5EYjI1MFpXNTBJanBiSW1sdGNHOXlkQ0FxSUdGeklFUkhJR1p5YjIwZ0oyUmhkR0ZuY205ckxXRndhUzlrWnljN1hHNWNiaThxS2x4dUlDb2dSR1Z1YjNSbGN5QmhJSFpsWTNSdmNpQnZaaUJtYkc5aGRHbHVaeUJ3YjJsMElIWmhiSFZsY3k1Y2JpQXFYRzRnS2lCQVpYaHdiM0owWEc0Z0tpQkFZMnhoYzNNZ1ZtVmpkRzl5WEc0Z0tpQkFaWGgwWlc1a2N5QjdSbXh2WVhRek1rRnljbUY1ZlZ4dUlDb3ZYRzVsZUhCdmNuUWdZMnhoYzNNZ1ZtVmpkRzl5SUdWNGRHVnVaSE1nUm14dllYUXpNa0Z5Y21GNUlIdDlYRzVjYmk4cUtseHVJQ29nUkdWdWIzUmxjeUJoSUhSM2J5MWthVzFsYm5OcGIyNWhiQ0J0WVhSeWFYZ3VYRzRnS2x4dUlDb2dRR1Y0Y0c5eWRGeHVJQ29nUUdOc1lYTnpJRTFoZEhKcGVGeHVJQ29nUUdWNGRHVnVaSE1nZTBGeWNtRjVQRlpsWTNSdmNqNTlYRzRnS2k5Y2JtVjRjRzl5ZENCamJHRnpjeUJOWVhSeWFYZ2daWGgwWlc1a2N5QkJjbkpoZVR4V1pXTjBiM0krSUh0OVhHNWNiaThxS2x4dUlDb2dSR1Z1YjNSbGN5QmpZWEowWlhOcFlXNGdZMjl2Y21ScGJtRjBaWE11WEc0Z0tseHVJQ29nUUdWNGNHOXlkRnh1SUNvZ1FHTnNZWE56SUVOdmIzSmthVzVoZEdWelhHNGdLaUJBWlhoMFpXNWtjeUI3VFdGMGNtbDRmVnh1SUNvdlhHNWxlSEJ2Y25RZ1kyeGhjM01nUTI5dmNtUnBibUYwWlhNZ1pYaDBaVzVrY3lCTllYUnlhWGdnZTMxY2JseHVMeW9xWEc0Z0tpQkVaVzV2ZEdWeklHRnVJR0Z5Y21GNUlHOW1JR0Z5WW1sMGNtRnllUzEwZVhCbFpDQjJaV04wYjNKekxseHVJQ3BjYmlBcUlFQmxlSEJ2Y25SY2JpQXFJRUJqYkdGemN5QldaV04wYjNKelhHNGdLaUJBWlhoMFpXNWtjeUI3UVhKeVlYazhZVzU1UG4xY2JpQXFMMXh1Wlhod2IzSjBJR05zWVhOeklGWmxZM1J2Y25NZ1pYaDBaVzVrY3lCQmNuSmhlVHhoYm5rK0lIdDlYRzVjYmk4cUtseHVJQ29nUkdWdWIzUmxjeUJoSUdScFkzUnBiMjVoY25rZ1kyOXVkR0ZwYm1sdVp5Qm1kVzVqZEdsdmJpQnZjSFJwYjI1ekxseHVJQ3BjYmlBcUlFQmxlSEJ2Y25SY2JpQXFJRUIwZVhCbElFOXdkR2x2Ym5OY2JpQXFMMXh1Wlhod2IzSjBJSFI1Y0dVZ1QzQjBhVzl1Y3lBOUlIdGJibUZ0WlRvZ2MzUnlhVzVuWFRvZ1lXNTVmVHRjYmx4dUx5b3FYRzRnS2lCRVpXNXZkR1Z6SUdOMWMzUnZiU0JrYVhOMFlXNWpaU0J0WlhSeWFXTWdZbVYwZDJWbGJpQjBhR1VnZEhkdklHZHBkbVZ1SUhabFkzUnZjbk11WEc0Z0tseHVJQ29nUUdWNGNHOXlkRnh1SUNvZ1FIUjVjR1VnUkdsemRHRnVZMlZOWlhSeWFXTmNiaUFxSUVCd1lYSmhiU0I3WVc1NWZTQjJNU0JVYUdVZ1ptbHljM1FnZG1WamRHOXlMbHh1SUNvZ1FIQmhjbUZ0SUh0aGJubDlJSFl5SUZSb1pTQnpaV052Ym1RZ2RtVmpkRzl5TGx4dUlDb2dRSEpsZEhWeWJpQjdiblZ0WW1WeWZTQkVhWE4wWVc1alpTQmlaWFIzWldWdUlIUm9aWE5sSUhSM2J5QjJaV04wYjNKekxseHVJQ292WEc1bGVIQnZjblFnZEhsd1pTQkVhWE4wWVc1alpVMWxkSEpwWXlBOUlDaDJNVG9nWVc1NUxDQjJNam9nWVc1NUtTQTlQaUFvYm5WdFltVnlLVHRjYmx4dUx5b3FYRzRnS2lCRVpXNXZkR1Z6SUdFZ2MybHRjR3hsSUhOMGNtbHVaeUIwYnlCemRISnBibWNnWkdsamRHbHZibUZ5ZVM1Y2JpQXFYRzRnS2lCQVpYaHdiM0owWEc0Z0tpQkFkSGx3WlNCVGRISnBibWRFYVdOMGFXOXVZWEo1WEc0Z0tpOWNibVY0Y0c5eWRDQjBlWEJsSUZOMGNtbHVaMFJwWTNScGIyNWhjbmtnUFNCN1cydGxlVG9nYzNSeWFXNW5YVG9nYzNSeWFXNW5mVHRjYmx4dVhHNWxlSEJ2Y25RZ2RIbHdaU0JEYjJ4MWJXNUpibkIxZEU5d2RHbHZibk1nUFNCN1hHNGdJQ0FnWm1sc2RHVnlQem9nS0dOdmJEb2dSRWN1UTI5c2RXMXVLU0E5UGlCaWIyOXNaV0Z1SUh3Z2JuVnNiRHRjYm4wN1hHNGlYWDA9IiwiY29uc3QgcGVxID0gbmV3IFVpbnQzMkFycmF5KDB4MTAwMDApO1xuY29uc3QgbXllcnNfMzIgPSAoYSwgYikgPT4ge1xuICAgIGNvbnN0IG4gPSBhLmxlbmd0aDtcbiAgICBjb25zdCBtID0gYi5sZW5ndGg7XG4gICAgY29uc3QgbHN0ID0gMSA8PCAobiAtIDEpO1xuICAgIGxldCBwdiA9IC0xO1xuICAgIGxldCBtdiA9IDA7XG4gICAgbGV0IHNjID0gbjtcbiAgICBsZXQgaSA9IG47XG4gICAgd2hpbGUgKGktLSkge1xuICAgICAgICBwZXFbYS5jaGFyQ29kZUF0KGkpXSB8PSAxIDw8IGk7XG4gICAgfVxuICAgIGZvciAoaSA9IDA7IGkgPCBtOyBpKyspIHtcbiAgICAgICAgbGV0IGVxID0gcGVxW2IuY2hhckNvZGVBdChpKV07XG4gICAgICAgIGNvbnN0IHh2ID0gZXEgfCBtdjtcbiAgICAgICAgZXEgfD0gKChlcSAmIHB2KSArIHB2KSBeIHB2O1xuICAgICAgICBtdiB8PSB+KGVxIHwgcHYpO1xuICAgICAgICBwdiAmPSBlcTtcbiAgICAgICAgaWYgKG12ICYgbHN0KSB7XG4gICAgICAgICAgICBzYysrO1xuICAgICAgICB9XG4gICAgICAgIGlmIChwdiAmIGxzdCkge1xuICAgICAgICAgICAgc2MtLTtcbiAgICAgICAgfVxuICAgICAgICBtdiA9IChtdiA8PCAxKSB8IDE7XG4gICAgICAgIHB2ID0gKHB2IDw8IDEpIHwgfih4diB8IG12KTtcbiAgICAgICAgbXYgJj0geHY7XG4gICAgfVxuICAgIGkgPSBuO1xuICAgIHdoaWxlIChpLS0pIHtcbiAgICAgICAgcGVxW2EuY2hhckNvZGVBdChpKV0gPSAwO1xuICAgIH1cbiAgICByZXR1cm4gc2M7XG59O1xuY29uc3QgbXllcnNfeCA9IChiLCBhKSA9PiB7XG4gICAgY29uc3QgbiA9IGEubGVuZ3RoO1xuICAgIGNvbnN0IG0gPSBiLmxlbmd0aDtcbiAgICBjb25zdCBtaGMgPSBbXTtcbiAgICBjb25zdCBwaGMgPSBbXTtcbiAgICBjb25zdCBoc2l6ZSA9IE1hdGguY2VpbChuIC8gMzIpO1xuICAgIGNvbnN0IHZzaXplID0gTWF0aC5jZWlsKG0gLyAzMik7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBoc2l6ZTsgaSsrKSB7XG4gICAgICAgIHBoY1tpXSA9IC0xO1xuICAgICAgICBtaGNbaV0gPSAwO1xuICAgIH1cbiAgICBsZXQgaiA9IDA7XG4gICAgZm9yICg7IGogPCB2c2l6ZSAtIDE7IGorKykge1xuICAgICAgICBsZXQgbXYgPSAwO1xuICAgICAgICBsZXQgcHYgPSAtMTtcbiAgICAgICAgY29uc3Qgc3RhcnQgPSBqICogMzI7XG4gICAgICAgIGNvbnN0IHZsZW4gPSBNYXRoLm1pbigzMiwgbSkgKyBzdGFydDtcbiAgICAgICAgZm9yIChsZXQgayA9IHN0YXJ0OyBrIDwgdmxlbjsgaysrKSB7XG4gICAgICAgICAgICBwZXFbYi5jaGFyQ29kZUF0KGspXSB8PSAxIDw8IGs7XG4gICAgICAgIH1cbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IGVxID0gcGVxW2EuY2hhckNvZGVBdChpKV07XG4gICAgICAgICAgICBjb25zdCBwYiA9IChwaGNbKGkgLyAzMikgfCAwXSA+Pj4gaSkgJiAxO1xuICAgICAgICAgICAgY29uc3QgbWIgPSAobWhjWyhpIC8gMzIpIHwgMF0gPj4+IGkpICYgMTtcbiAgICAgICAgICAgIGNvbnN0IHh2ID0gZXEgfCBtdjtcbiAgICAgICAgICAgIGNvbnN0IHhoID0gKCgoKGVxIHwgbWIpICYgcHYpICsgcHYpIF4gcHYpIHwgZXEgfCBtYjtcbiAgICAgICAgICAgIGxldCBwaCA9IG12IHwgfih4aCB8IHB2KTtcbiAgICAgICAgICAgIGxldCBtaCA9IHB2ICYgeGg7XG4gICAgICAgICAgICBpZiAoKHBoID4+PiAzMSkgXiBwYikge1xuICAgICAgICAgICAgICAgIHBoY1soaSAvIDMyKSB8IDBdIF49IDEgPDwgaTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICgobWggPj4+IDMxKSBeIG1iKSB7XG4gICAgICAgICAgICAgICAgbWhjWyhpIC8gMzIpIHwgMF0gXj0gMSA8PCBpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcGggPSAocGggPDwgMSkgfCBwYjtcbiAgICAgICAgICAgIG1oID0gKG1oIDw8IDEpIHwgbWI7XG4gICAgICAgICAgICBwdiA9IG1oIHwgfih4diB8IHBoKTtcbiAgICAgICAgICAgIG12ID0gcGggJiB4djtcbiAgICAgICAgfVxuICAgICAgICBmb3IgKGxldCBrID0gc3RhcnQ7IGsgPCB2bGVuOyBrKyspIHtcbiAgICAgICAgICAgIHBlcVtiLmNoYXJDb2RlQXQoayldID0gMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBsZXQgbXYgPSAwO1xuICAgIGxldCBwdiA9IC0xO1xuICAgIGNvbnN0IHN0YXJ0ID0gaiAqIDMyO1xuICAgIGNvbnN0IHZsZW4gPSBNYXRoLm1pbigzMiwgbSAtIHN0YXJ0KSArIHN0YXJ0O1xuICAgIGZvciAobGV0IGsgPSBzdGFydDsgayA8IHZsZW47IGsrKykge1xuICAgICAgICBwZXFbYi5jaGFyQ29kZUF0KGspXSB8PSAxIDw8IGs7XG4gICAgfVxuICAgIGxldCBzY29yZSA9IG07XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuOyBpKyspIHtcbiAgICAgICAgY29uc3QgZXEgPSBwZXFbYS5jaGFyQ29kZUF0KGkpXTtcbiAgICAgICAgY29uc3QgcGIgPSAocGhjWyhpIC8gMzIpIHwgMF0gPj4+IGkpICYgMTtcbiAgICAgICAgY29uc3QgbWIgPSAobWhjWyhpIC8gMzIpIHwgMF0gPj4+IGkpICYgMTtcbiAgICAgICAgY29uc3QgeHYgPSBlcSB8IG12O1xuICAgICAgICBjb25zdCB4aCA9ICgoKChlcSB8IG1iKSAmIHB2KSArIHB2KSBeIHB2KSB8IGVxIHwgbWI7XG4gICAgICAgIGxldCBwaCA9IG12IHwgfih4aCB8IHB2KTtcbiAgICAgICAgbGV0IG1oID0gcHYgJiB4aDtcbiAgICAgICAgc2NvcmUgKz0gKHBoID4+PiAobSAtIDEpKSAmIDE7XG4gICAgICAgIHNjb3JlIC09IChtaCA+Pj4gKG0gLSAxKSkgJiAxO1xuICAgICAgICBpZiAoKHBoID4+PiAzMSkgXiBwYikge1xuICAgICAgICAgICAgcGhjWyhpIC8gMzIpIHwgMF0gXj0gMSA8PCBpO1xuICAgICAgICB9XG4gICAgICAgIGlmICgobWggPj4+IDMxKSBeIG1iKSB7XG4gICAgICAgICAgICBtaGNbKGkgLyAzMikgfCAwXSBePSAxIDw8IGk7XG4gICAgICAgIH1cbiAgICAgICAgcGggPSAocGggPDwgMSkgfCBwYjtcbiAgICAgICAgbWggPSAobWggPDwgMSkgfCBtYjtcbiAgICAgICAgcHYgPSBtaCB8IH4oeHYgfCBwaCk7XG4gICAgICAgIG12ID0gcGggJiB4djtcbiAgICB9XG4gICAgZm9yIChsZXQgayA9IHN0YXJ0OyBrIDwgdmxlbjsgaysrKSB7XG4gICAgICAgIHBlcVtiLmNoYXJDb2RlQXQoayldID0gMDtcbiAgICB9XG4gICAgcmV0dXJuIHNjb3JlO1xufTtcbmNvbnN0IGRpc3RhbmNlID0gKGEsIGIpID0+IHtcbiAgICBpZiAoYS5sZW5ndGggPCBiLmxlbmd0aCkge1xuICAgICAgICBjb25zdCB0bXAgPSBiO1xuICAgICAgICBiID0gYTtcbiAgICAgICAgYSA9IHRtcDtcbiAgICB9XG4gICAgaWYgKGIubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHJldHVybiBhLmxlbmd0aDtcbiAgICB9XG4gICAgaWYgKGEubGVuZ3RoIDw9IDMyKSB7XG4gICAgICAgIHJldHVybiBteWVyc18zMihhLCBiKTtcbiAgICB9XG4gICAgcmV0dXJuIG15ZXJzX3goYSwgYik7XG59O1xuY29uc3QgY2xvc2VzdCA9IChzdHIsIGFycikgPT4ge1xuICAgIGxldCBtaW5fZGlzdGFuY2UgPSBJbmZpbml0eTtcbiAgICBsZXQgbWluX2luZGV4ID0gMDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGFyci5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBkaXN0ID0gZGlzdGFuY2Uoc3RyLCBhcnJbaV0pO1xuICAgICAgICBpZiAoZGlzdCA8IG1pbl9kaXN0YW5jZSkge1xuICAgICAgICAgICAgbWluX2Rpc3RhbmNlID0gZGlzdDtcbiAgICAgICAgICAgIG1pbl9pbmRleCA9IGk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGFyclttaW5faW5kZXhdO1xufTtcbmV4cG9ydCB7IGNsb3Nlc3QsIGRpc3RhbmNlIH07XG4iLCJcInVzZSBzdHJpY3RcIjtcbi8vIFJlZmVyZW5jZTogaHR0cHM6Ly93d3cuZ2Vla3Nmb3JnZWVrcy5vcmcvamFyby1hbmQtamFyby13aW5rbGVyLXNpbWlsYXJpdHkvXG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG5leHBvcnRzLmphcm9XaW5rbGVyID0gZXhwb3J0cy5qYXJvID0gdm9pZCAwO1xuLyoqXG4gKlxuICogQHBhcmFtIHN0cjEgU3RyaW5nIDEgZm9yIGNvbXBhcmVcbiAqIEBwYXJhbSBzdHIyIFN0cmluZyAyIGZvciBjb21wYXJlXG4gKiBAcGFyYW0gb3B0aW9ucyB0byBjb250cm9sIGNhc2Ugc2Vuc2l0aXZlIG9yIG5vdFxuICovXG5mdW5jdGlvbiBqYXJvKHN0cjEsIHN0cjIsIG9wdGlvbnMpIHtcbiAgICAvLyBFeGl0IGVhcmx5IGlmIGVpdGhlciBhcmUgZW1wdHkuXG4gICAgaWYgKHN0cjEubGVuZ3RoID09PSAwIHx8IHN0cjIubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICAvLyBDb252ZXJ0IHRvIHVwcGVyIGlmIGNhc2Utc2Vuc2l0aXZlIGlzIGZhbHNlLlxuICAgIGlmIChvcHRpb25zICYmICFvcHRpb25zLmNhc2VTZW5zaXRpdmUpIHtcbiAgICAgICAgc3RyMSA9IHN0cjEudG9VcHBlckNhc2UoKTtcbiAgICAgICAgc3RyMiA9IHN0cjIudG9VcHBlckNhc2UoKTtcbiAgICB9XG4gICAgLy8gRXhhY3QgbWF0Y2hcbiAgICBpZiAoc3RyMSA9PT0gc3RyMikge1xuICAgICAgICByZXR1cm4gMTtcbiAgICB9XG4gICAgLy8gTnVtYmVyIG9mIG1hdGNoZXNcbiAgICB2YXIgbSA9IDA7XG4gICAgLy8gTGVuZ3RoIG9mIHR3byBTdHJpbmdzXG4gICAgdmFyIGxlbjEgPSBzdHIxLmxlbmd0aDtcbiAgICB2YXIgbGVuMiA9IHN0cjIubGVuZ3RoO1xuICAgIC8vIE1heGltdW0gZGlzdGFuY2VcbiAgICB2YXIgd2luZG93ID0gTWF0aC5mbG9vcihNYXRoLm1heChsZW4xLCBsZW4yKSAvIDIpIC0gMTtcbiAgICAvLyBIYXNoIGZvciBtYXRjaGVzXG4gICAgdmFyIHN0cjFIYXNoID0gbmV3IEFycmF5KGxlbjEpO1xuICAgIHZhciBzdHIySGFzaCA9IG5ldyBBcnJheShsZW4yKTtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGxlbjE7IGkrKykge1xuICAgICAgICBmb3IgKHZhciBqID0gTWF0aC5tYXgoMCwgaSAtIHdpbmRvdyk7IGogPD0gTWF0aC5taW4obGVuMiwgaSArIHdpbmRvdyArIDEpOyBqKyspIHtcbiAgICAgICAgICAgIGlmICghc3RyMUhhc2hbaV0gJiYgIXN0cjJIYXNoW2pdICYmIHN0cjFbaV0gPT09IHN0cjJbal0pIHtcbiAgICAgICAgICAgICAgICArK207XG4gICAgICAgICAgICAgICAgc3RyMUhhc2hbaV0gPSBzdHIySGFzaFtqXSA9IHRydWU7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gRXhpdCBlYXJseSBpZiBubyBtYXRjaGVzIHdlcmUgZm91bmQuXG4gICAgaWYgKG0gPT09IDApIHtcbiAgICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIC8vIENvdW50IHRoZSB0cmFuc3Bvc2l0aW9ucy5cbiAgICB2YXIgdCA9IDA7XG4gICAgdmFyIHBvaW50ID0gMDtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGxlbjE7IGkrKykge1xuICAgICAgICBpZiAoc3RyMUhhc2hbaV0pIHtcbiAgICAgICAgICAgIHdoaWxlICghc3RyMkhhc2hbcG9pbnRdKSB7XG4gICAgICAgICAgICAgICAgcG9pbnQrKztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChzdHIxLmNoYXJBdChpKSAhPT0gc3RyMi5jaGFyQXQocG9pbnQrKykpIHtcbiAgICAgICAgICAgICAgICB0Kys7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgdCAvPSAyO1xuICAgIHJldHVybiAobSAvIGxlbjEgKyBtIC8gbGVuMiArIChtIC0gdCkgLyBtKSAvIDM7XG59XG5leHBvcnRzLmphcm8gPSBqYXJvO1xuLyoqXG4gKlxuICogQHBhcmFtIHN0cjEgU3RyaW5nIDEgZm9yIGNvbXBhcmVcbiAqIEBwYXJhbSBzdHIyIFN0cmluZyAyIGZvciBjb21wYXJlXG4gKiBAcGFyYW0gb3B0aW9ucyB0byBjb250cm9sIGNhc2Ugc2Vuc2l0aXZlIG9yIG5vdFxuICovXG5mdW5jdGlvbiBqYXJvV2lua2xlcihzdHIxLCBzdHIyLCBvcHRpb25zKSB7XG4gICAgLy8gSmFybyBEaXN0YW5jZVxuICAgIHZhciBqYXJvRGlzdCA9IGphcm8oc3RyMSwgc3RyMiwgb3B0aW9ucyk7XG4gICAgLy8gU2FtZSBwcmVmaXggbGVuZ3RoLCBtYXhpdW0gaXMgNFxuICAgIHZhciBwcmVmaXggPSAwO1xuICAgIGlmIChqYXJvRGlzdCA+IDAuNykge1xuICAgICAgICB2YXIgbWluSW5kZXggPSBNYXRoLm1pbihzdHIxLmxlbmd0aCwgc3RyMi5sZW5ndGgpO1xuICAgICAgICB2YXIgaSA9IDA7XG4gICAgICAgIHdoaWxlIChzdHIxW2ldID09PSBzdHIyW2ldICYmIGkgPCA0ICYmIGkgPCBtaW5JbmRleCkge1xuICAgICAgICAgICAgKytwcmVmaXg7XG4gICAgICAgICAgICBpKys7XG4gICAgICAgIH1cbiAgICAgICAgamFyb0Rpc3QgKz0gMC4xICogcHJlZml4ICogKDEgLSBqYXJvRGlzdCk7XG4gICAgfVxuICAgIHJldHVybiBqYXJvRGlzdDtcbn1cbmV4cG9ydHMuamFyb1dpbmtsZXIgPSBqYXJvV2lua2xlcjtcbiJdLCJuYW1lcyI6WyJpc05pbCIsIngiLCJ0YW5pbW90b0Rpc3RhbmNlIiwieSIsImdldERpc3RhbmNlRnJvbVNpbWlsYXJpdHkiLCJ0b3RhbCIsInRydWVDb3VudCIsImNvbW1vbiIsImFuZFdpdGhDb3VudEJpdHMiLCJ0YW5pbW90b1NpbWlsYXJpdHkiLCJkaWNlRGlzdGFuY2UiLCJkaWNlU2ltaWxhcml0eSIsImNvc2luZURpc3RhbmNlIiwiTWF0aCIsInNxcnQiLCJjb3NpbmVTaW1pbGFyaXR5IiwiZXVjbGlkZWFuRGlzdGFuY2UiLCJoYW1taW5nRGlzdGFuY2UiLCJzb2thbERpc3RhbmNlIiwic29rYWxTaW1pbGFyaXR5Iiwia3VsY3p5bnNraURpc3RhbmNlIiwidG90YWxQcm9kIiwia3VsY3p5bnNraVNpbWlsYXJpdHkiLCJtY0Nvbm5hdWdoZXlEaXN0YW5jZSIsIm1jQ29ubmF1Z2hleVNpbWlsYXJpdHkiLCJhc3ltbWV0cmljRGlzdGFuY2UiLCJtaW4iLCJhc3ltbWV0cmljU2ltaWxhcml0eSIsImJyYXVuQmxhbnF1ZXREaXN0YW5jZSIsIm1heCIsImJyYXVuQmxhbnF1ZXRTaW1pbGFyaXR5IiwicnVzc2VsRGlzdGFuY2UiLCJsZW5ndGgiLCJydXNzZWxTaW1pbGFyaXR5Iiwicm9nb3RHb2xkYmVyZ0Rpc3RhbmNlIiwiY291bnRCaXRzIiwibGVuIiwiZGlmZiIsInJvZ290R29sZGJlcmdTaW1pbGFyaXR5Iiwic2ltaWxhcml0eSIsIm51bWVyaWNEaXN0YW5jZSIsImFicyIsIlRhbmltb3RvIiwiRGljZSIsIkFzeW1tZXRyaWMiLCJCcmF1bkJsYW5xdWV0IiwiQ29zaW5lIiwiS3VsY3p5bnNraSIsIk1jQ29ubmF1Z2hleSIsIlJvZ290R29sZGJlcmciLCJSdXNzZWwiLCJTb2thbCIsIkhhbW1pbmciLCJFdWNsaWRlYW4iLCJoYW1taW5nIiwic2VxMSIsInNlcTIiLCJyZXN1bHQiLCJpIiwibGV2ZW5zdGVpbiIsIk1tRGlzdGFuY2VGdW5jdGlvbnNOYW1lcyIsIm1tRGlzdGFuY2VGdW5jdGlvbnMiLCJIQU1NSU5HIiwiTEVWRU5TSFRFSU4iLCJORUVETEVNQU5OX1dVTlNDSCIsIm4iLCJkZWZhdWx0QXJncyIsImdhcE9wZW4iLCJnYXBFeHRlbmQiLCJzY29yaW5nTWF0cml4IiwiYWxwaGFiZXRJbmRleGVzIiwibmVlZGxlbWFuV3VuY2giLCJhcmdzIiwibWF0cml4IiwiQXJyYXkiLCJmaWxsIiwidmVydGljYWxHYXBzIiwiaG9yaXpvbnRhbEdhcHMiLCJwcmV2Um93IiwiY3VyclJvdyIsImoiLCJkaWFnb25hbCIsInRvcCIsImxlZnQiLCJwZXJmZWN0TWF0Y2hTZXExIiwic3BsaXQiLCJtYXAiLCJjIiwicmVkdWNlIiwiYSIsImIiLCJwZXJmZWN0TWF0Y2hTZXEyIiwibWF4U2NvcmUiLCJWZWN0b3IiLCJGbG9hdDMyQXJyYXkiLCJwZXEiLCJVaW50MzJBcnJheSIsImRpc3RhbmNlIiwidG1wIiwibSIsImxzdCIsInB2IiwibXYiLCJzYyIsImNoYXJDb2RlQXQiLCJlcSIsInh2IiwibXllcnNfMzIiLCJtaGMiLCJwaGMiLCJoc2l6ZSIsImNlaWwiLCJ2c2l6ZSIsInN0YXJ0IiwidmxlbiIsImsiLCJwYiIsIm1iIiwieGgiLCJwaCIsIm1oIiwic2NvcmUiLCJteWVyc194IiwiZXhwb3J0cyIsInN0cjEiLCJzdHIyIiwib3B0aW9ucyIsImphcm9EaXN0IiwiY2FzZVNlbnNpdGl2ZSIsInRvVXBwZXJDYXNlIiwibGVuMSIsImxlbjIiLCJ3aW5kb3ciLCJmbG9vciIsInN0cjFIYXNoIiwic3RyMkhhc2giLCJ0IiwicG9pbnQiLCJjaGFyQXQiLCJqYXJvIiwicHJlZml4IiwibWluSW5kZXgiXSwic291cmNlUm9vdCI6IiJ9