This repository was archived by the owner on Apr 10, 2025. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathindex.html
More file actions
135 lines (134 loc) · 32.5 KB
/
Copy pathindex.html
File metadata and controls
135 lines (134 loc) · 32.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
<!doctype html>
<meta charset="utf-8">
<title>SSSS Lockbox</title>
<script>
var m,n=this;function aa(a){a=a.split(".");for(var b=n,c;c=a.shift();)if(null!=b[c])b=b[c];else return null;return b}
function ba(a){var b=typeof a;if("object"==b)if(a){if(a instanceof Array)return"array";if(a instanceof Object)return b;var c=Object.prototype.toString.call(a);if("[object Window]"==c)return"object";if("[object Array]"==c||"number"==typeof a.length&&"undefined"!=typeof a.splice&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("splice"))return"array";if("[object Function]"==c||"undefined"!=typeof a.call&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("call"))return"function"}else return"null";
else if("function"==b&&"undefined"==typeof a.call)return"object";return b}function ca(a){var b=ba(a);return"array"==b||"object"==b&&"number"==typeof a.length}function r(a){return"string"==typeof a}function s(a){return"function"==ba(a)}function da(a){var b=typeof a;return"object"==b&&null!=a||"function"==b}var t="closure_uid_"+(1E9*Math.random()>>>0),ea=0,u=Date.now||function(){return+new Date};
function w(a,b){var c=a.split("."),d=n;c[0]in d||!d.execScript||d.execScript("var "+c[0]);for(var e;c.length&&(e=c.shift());)c.length||void 0===b?d=d[e]?d[e]:d[e]={}:d[e]=b}function x(a,b){function c(){}c.prototype=b.prototype;a.I=b.prototype;a.prototype=new c;a.prototype.constructor=a;a.va=function(a,c,f){return b.prototype[c].apply(a,Array.prototype.slice.call(arguments,2))}};function fa(a,b){for(var c=a.split("%s"),d="",e=Array.prototype.slice.call(arguments,1);e.length&&1<c.length;)d+=c.shift()+e.shift();return d+c.join("%s")}function y(a){if(!ga.test(a))return a;-1!=a.indexOf("&")&&(a=a.replace(ha,"&"));-1!=a.indexOf("<")&&(a=a.replace(ia,"<"));-1!=a.indexOf(">")&&(a=a.replace(ja,">"));-1!=a.indexOf('"')&&(a=a.replace(ka,"""));-1!=a.indexOf("'")&&(a=a.replace(la,"'"));-1!=a.indexOf("\x00")&&(a=a.replace(ma,"�"));return a}
var ha=/&/g,ia=/</g,ja=/>/g,ka=/"/g,la=/'/g,ma=/\x00/g,ga=/[\x00&<>"']/;function na(a,b){return a<b?-1:a>b?1:0};var z;a:{var oa=n.navigator;if(oa){var pa=oa.userAgent;if(pa){z=pa;break a}}z=""}function A(a){return-1!=z.indexOf(a)};function B(a){if(Error.captureStackTrace)Error.captureStackTrace(this,B);else{var b=Error().stack;b&&(this.stack=b)}a&&(this.message=String(a))}x(B,Error);B.prototype.name="CustomError";function qa(a,b){b.unshift(a);B.call(this,fa.apply(null,b));b.shift()}x(qa,B);qa.prototype.name="AssertionError";function ra(a,b){throw new qa("Failure"+(a?": "+a:""),Array.prototype.slice.call(arguments,1));};var C=Array.prototype,sa=C.indexOf?function(a,b,c){return C.indexOf.call(a,b,c)}:function(a,b,c){c=null==c?0:0>c?Math.max(0,a.length+c):c;if(r(a))return r(b)&&1==b.length?a.indexOf(b,c):-1;for(;c<a.length;c++)if(c in a&&a[c]===b)return c;return-1},ta=C.forEach?function(a,b,c){C.forEach.call(a,b,c)}:function(a,b,c){for(var d=a.length,e=r(a)?a.split(""):a,f=0;f<d;f++)f in e&&b.call(c,e[f],f,a)},ua=C.filter?function(a,b,c){return C.filter.call(a,b,c)}:function(a,b,c){for(var d=a.length,e=[],f=0,g=r(a)?
a.split(""):a,h=0;h<d;h++)if(h in g){var k=g[h];b.call(c,k,h,a)&&(e[f++]=k)}return e},va=C.map?function(a,b,c){return C.map.call(a,b,c)}:function(a,b,c){for(var d=a.length,e=Array(d),f=r(a)?a.split(""):a,g=0;g<d;g++)g in f&&(e[g]=b.call(c,f[g],g,a));return e},wa=C.every?function(a,b,c){return C.every.call(a,b,c)}:function(a,b,c){for(var d=a.length,e=r(a)?a.split(""):a,f=0;f<d;f++)if(f in e&&!b.call(c,e[f],f,a))return!1;return!0};function xa(a){return C.concat.apply(C,arguments)}
function ya(a){var b=a.length;if(0<b){for(var c=Array(b),d=0;d<b;d++)c[d]=a[d];return c}return[]}function za(a,b,c){return 2>=arguments.length?C.slice.call(a,b):C.slice.call(a,b,c)};function Aa(a,b){for(var c in a)b.call(void 0,a[c],c,a)}var Ba="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");function Ca(a,b){for(var c,d,e=1;e<arguments.length;e++){d=arguments[e];for(c in d)a[c]=d[c];for(var f=0;f<Ba.length;f++)c=Ba[f],Object.prototype.hasOwnProperty.call(d,c)&&(a[c]=d[c])}};var Da=A("Opera")||A("OPR"),D=A("Trident")||A("MSIE"),E=A("Gecko")&&-1==z.toLowerCase().indexOf("webkit")&&!(A("Trident")||A("MSIE")),F=-1!=z.toLowerCase().indexOf("webkit");function Ea(){var a=n.document;return a?a.documentMode:void 0}var Fa=function(){var a="",b;if(Da&&n.opera)return a=n.opera.version,s(a)?a():a;E?b=/rv\:([^\);]+)(\)|;)/:D?b=/\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/:F&&(b=/WebKit\/(\S+)/);b&&(a=(a=b.exec(z))?a[1]:"");return D&&(b=Ea(),b>parseFloat(a))?String(b):a}(),Ga={};
function G(a){var b;if(!(b=Ga[a])){b=0;for(var c=String(Fa).replace(/^[\s\xa0]+|[\s\xa0]+$/g,"").split("."),d=String(a).replace(/^[\s\xa0]+|[\s\xa0]+$/g,"").split("."),e=Math.max(c.length,d.length),f=0;0==b&&f<e;f++){var g=c[f]||"",h=d[f]||"",k=RegExp("(\\d*)(\\D*)","g"),l=RegExp("(\\d*)(\\D*)","g");do{var p=k.exec(g)||["","",""],q=l.exec(h)||["","",""];if(0==p[0].length&&0==q[0].length)break;b=na(0==p[1].length?0:parseInt(p[1],10),0==q[1].length?0:parseInt(q[1],10))||na(0==p[2].length,0==q[2].length)||
na(p[2],q[2])}while(0==b)}b=Ga[a]=0<=b}return b}var Ha=n.document,Ia=Ha&&D?Ea()||("CSS1Compat"==Ha.compatMode?parseInt(Fa,10):5):void 0;function Ja(){return!0}function Ka(a,b){var c=arguments,d=c.length;return function(){var a;d&&(a=c[d-1].apply(this,arguments));for(var b=d-2;0<=b;b--)a=c[b].call(this,a);return a}};var H="StopIteration"in n?n.StopIteration:Error("StopIteration");function I(){}I.prototype.next=function(){throw H;};I.prototype.O=function(){return this};function La(a){if(a instanceof I)return a;if("function"==typeof a.O)return a.O(!1);if(ca(a)){var b=0,c=new I;c.next=function(){for(;;){if(b>=a.length)throw H;if(b in a)return a[b++];b++}};return c}throw Error("Not implemented");}
function Ma(a,b){if(ca(a))try{ta(a,b,void 0)}catch(c){if(c!==H)throw c;}else{a=La(a);try{for(;;)b.call(void 0,a.next(),void 0,a)}catch(d){if(d!==H)throw d;}}};function J(a,b){this.e={};this.b=[];this.B=this.g=0;var c=arguments.length;if(1<c){if(c%2)throw Error("Uneven number of arguments");for(var d=0;d<c;d+=2)this.set(arguments[d],arguments[d+1])}else if(a){var e;if(a instanceof J)for(d=Na(a),Oa(a),e=[],c=0;c<a.b.length;c++)e.push(a.e[a.b[c]]);else{var c=[],f=0;for(d in a)c[f++]=d;d=c;c=[];f=0;for(e in a)c[f++]=a[e];e=c}for(c=0;c<d.length;c++)this.set(d[c],e[c])}}function Na(a){Oa(a);return a.b.concat()}m=J.prototype;
m.clear=function(){this.e={};this.B=this.g=this.b.length=0};m.remove=function(a){return Object.prototype.hasOwnProperty.call(this.e,a)?(delete this.e[a],this.g--,this.B++,this.b.length>2*this.g&&Oa(this),!0):!1};
function Oa(a){if(a.g!=a.b.length){for(var b=0,c=0;b<a.b.length;){var d=a.b[b];Object.prototype.hasOwnProperty.call(a.e,d)&&(a.b[c++]=d);b++}a.b.length=c}if(a.g!=a.b.length){for(var e={},c=b=0;b<a.b.length;)d=a.b[b],Object.prototype.hasOwnProperty.call(e,d)||(a.b[c++]=d,e[d]=1),b++;a.b.length=c}}m.get=function(a,b){return Object.prototype.hasOwnProperty.call(this.e,a)?this.e[a]:b};m.set=function(a,b){Object.prototype.hasOwnProperty.call(this.e,a)||(this.g++,this.b.push(a),this.B++);this.e[a]=b};
m.forEach=function(a,b){for(var c=Na(this),d=0;d<c.length;d++){var e=c[d],f=this.get(e);a.call(b,f,e,this)}};m.clone=function(){return new J(this)};m.O=function(a){Oa(this);var b=0,c=this.b,d=this.e,e=this.B,f=this,g=new I;g.next=function(){for(;;){if(e!=f.B)throw Error("The map has changed since the iterator was created");if(b>=c.length)throw H;var g=c[b++];return a?g:d[g]}};return g};function Pa(a){for(var b=[],c=arguments.callee.caller,d=0;c&&(!a||d<a);){b.push(Qa(c));b.push("()\n");try{c=c.caller}catch(e){b.push("[exception trying to get caller]\n");break}d++;if(d>=Ra){b.push("[...long stack...]");break}}a&&d>=a?b.push("[...reached max depth limit...]"):b.push("[end]");return b.join("")}var Ra=50;function Sa(a){var b;b||(b=Ta(a||arguments.callee.caller,[]));return b}
function Ta(a,b){var c=[];if(0<=sa(b,a))c.push("[...circular reference...]");else if(a&&b.length<Ra){c.push(Qa(a)+"(");for(var d=a.arguments,e=0;d&&e<d.length;e++){0<e&&c.push(", ");var f;f=d[e];switch(typeof f){case "object":f=f?"object":"null";break;case "string":break;case "number":f=String(f);break;case "boolean":f=f?"true":"false";break;case "function":f=(f=Qa(f))?f:"[fn]";break;default:f=typeof f}40<f.length&&(f=f.substr(0,40)+"...");c.push(f)}b.push(a);c.push(")\n");try{c.push(Ta(a.caller,
b))}catch(g){c.push("[exception trying to get caller]\n")}}else a?c.push("[...long stack...]"):c.push("[end]");return c.join("")}function Qa(a){if(K[a])return K[a];a=String(a);if(!K[a]){var b=/function ([^\(]+)/.exec(a);K[a]=b?b[1]:"[Anonymous]"}return K[a]}var K={};function L(a,b,c,d,e){this.reset(a,b,c,d,e)}L.prototype.da=null;L.prototype.ca=null;var Ua=0;L.prototype.reset=function(a,b,c,d,e){"number"==typeof e||Ua++;d||u();this.u=a;this.qa=b;delete this.da;delete this.ca};L.prototype.ia=function(a){this.u=a};function M(a){this.ha=a;this.fa=this.S=this.u=this.G=null}function Va(a,b){this.name=a;this.value=b}Va.prototype.toString=function(){return this.name};var Wa=new Va("WARNING",900),Xa=new Va("INFO",800),Ya=new Va("CONFIG",700);function Za(a){n.console&&(n.console.timeStamp?n.console.timeStamp(a):n.console.markTimeline&&n.console.markTimeline(a));n.msWriteProfilerMark&&n.msWriteProfilerMark(a)}m=M.prototype;m.getName=function(){return this.ha};m.getParent=function(){return this.G};
m.ia=function(a){this.u=a};function $a(a){if(a.u)return a.u;if(a.G)return $a(a.G);ra("Root logger has no level set.");return null}m.log=function(a,b,c){if(a.value>=$a(this).value)for(s(b)&&(b=b()),a=this.ea(a,b,c,M.prototype.log),Za("log:"+a.qa),b=this;b;){c=b;var d=a;if(c.fa)for(var e=0,f=void 0;f=c.fa[e];e++)f(d);b=b.getParent()}};
m.ea=function(a,b,c,d){a=new L(a,String(b),this.ha);if(c){a.da=c;var e;d=d||M.prototype.ea;try{var f;var g=aa("window.location.href");if(r(c))f={message:c,name:"Unknown error",lineNumber:"Not available",fileName:g,stack:"Not available"};else{var h,k;b=!1;try{h=c.lineNumber||c.xa||"Not available"}catch(l){h="Not available",b=!0}try{k=c.fileName||c.filename||c.sourceURL||n.$googDebugFname||g}catch(p){k="Not available",b=!0}f=!b&&c.lineNumber&&c.fileName&&c.stack&&c.message&&c.name?c:{message:c.message||
"Not available",name:c.name||"UnknownError",lineNumber:h,fileName:k,stack:c.stack||"Not available"}}e="Message: "+y(f.message)+'\nUrl: <a href="view-source:'+f.fileName+'" target="_new">'+f.fileName+"</a>\nLine: "+f.lineNumber+"\n\nBrowser stack:\n"+y(f.stack+"-> ")+"[end]\n\nJS stack traversal:\n"+y(Sa(d)+"-> ")}catch(q){e="Exception trying to expose exception! You win, we lose. "+q}a.ca=e}return a};m.info=function(a,b){this.log(Xa,a,b)};var ab={},bb=null;
function cb(a){bb||(bb=new M(""),ab[""]=bb,bb.ia(Ya));var b;if(!(b=ab[a])){b=new M(a);var c=a.lastIndexOf("."),d=a.substr(c+1),c=cb(a.substr(0,c));c.S||(c.S={});c.S[d]=b;b.G=c;ab[a]=b}return b};function N(){0!=db&&(eb[this[t]||(this[t]=++ea)]=this);this.r=this.r;this.D=this.D}var db=0,eb={};N.prototype.r=!1;N.prototype.T=function(){if(!this.r&&(this.r=!0,this.i(),0!=db)){var a=this[t]||(this[t]=++ea);delete eb[a]}};N.prototype.i=function(){if(this.D)for(;this.D.length;)this.D.shift()()};function O(a,b){N.call(this);this.ba=this.$=null;this.ga=b;this.k=[];if(a>this.ga)throw Error("[goog.structs.SimplePool] Initial cannot be greater than max");for(var c=0;c<a;c++)this.k.push(this.q())}x(O,N);function fb(a){return a.k.length?a.k.pop():a.q()}function P(a,b){a.k.length<a.ga?a.k.push(b):a.U(b)}O.prototype.q=function(){return this.$?this.$():{}};O.prototype.U=function(a){if(this.ba)this.ba(a);else if(da(a))if(s(a.T))a.T();else for(var b in a)delete a[b]};
O.prototype.i=function(){O.I.i.call(this);for(var a=this.k;a.length;)this.U(a.pop());delete this.k};function Q(){this.c=[];this.h=new J;this.ka=this.K=this.L=this.ja=0;this.l=new J;this.Z=this.Y=0;this.ra=1;this.j=new O(0,4E3);this.j.q=function(){return new gb};this.X=new O(0,50);this.X.q=function(){return new hb};var a=this;this.m=new O(0,2E3);this.m.q=function(){return String(a.ra++)};this.m.U=function(){};this.aa=3}var ib=Q.prototype,jb=cb("goog.debug.Trace");ib.pa=jb;Q.prototype.N=1E3;function hb(){this.A=this.time=this.count=0}
hb.prototype.toString=function(){var a=[];a.push(this.type," ",this.count," (",Math.round(10*this.time)/10," ms)");this.A&&a.push(" [VarAlloc = ",this.A,"]");return a.join("")};function gb(){}function kb(a,b,c,d){var e=[];-1==c?e.push(" "):e.push(lb(a.C-c));e.push(" ",mb(a.C-b));0==a.s?e.push(" Start "):1==a.s?(e.push(" Done "),e.push(lb(a.ta-a.startTime)," ms ")):e.push(" Comment ");e.push(d,a);0<a.w&&e.push("[VarAlloc ",a.w,"] ");return e.join("")}
gb.prototype.toString=function(){return null==this.type?this.p:"["+this.type+"] "+this.p};Q.prototype.reset=function(a){this.aa=a;for(a=0;a<this.c.length;a++){var b=this.j.id;b&&P(this.m,b);P(this.j,this.c[a])}this.c.length=0;this.h.clear();this.ja=u();this.Z=this.Y=this.ka=this.K=this.L=0;b=Na(this.l);for(a=0;a<b.length;a++){var c=this.l.get(b[a]);c.count=0;c.time=0;c.A=0;P(this.X,c)}this.l.clear()};function nb(){var a=R.wa;return a&&a.isTracing()?a.totalVarAlloc:-1}
Q.prototype.toString=function(){for(var a=[],b=-1,c=[],d=0;d<this.c.length;d++){var e=this.c[d];1==e.s&&c.pop();a.push(" ",kb(e,this.ja,b,c.join("")));b=e.C;a.push("\n");0==e.s&&c.push("| ")}if(0!=this.h.g){var f=u();a.push(" Unstopped timers:\n");Ma(this.h,function(b){a.push(" ",b," (",f-b.startTime," ms, started at ",mb(b.startTime),")\n")})}b=Na(this.l);for(d=0;d<b.length;d++)c=this.l.get(b[d]),1<c.count&&a.push(" TOTAL ",c,"\n");a.push("Total tracers created ",this.Y,"\n","Total comments created ",
this.Z,"\n","Overhead start: ",this.L," ms\n","Overhead end: ",this.K," ms\n","Overhead comment: ",this.ka," ms\n");return a.join("")};function lb(a){a=Math.round(a);var b="";1E3>a&&(b=" ");100>a&&(b=" ");10>a&&(b=" ");return b+a}function mb(a){a=Math.round(a);return String(100+a/1E3%60).substring(1,3)+"."+String(1E3+a%1E3).substring(1,4)}var R=new Q;function S(a){N.call(this);this.na=a;this.ua=!0;this.sa=!1}x(S,N);S.prototype.ma=!1;function ob(a){var b=pb,c=T(b,!0);a[c]||((a[c]=qb(b,a))[T(b,!1)]=a);return a[c]}function T(a,b){return(b?"__wrapper_":"__protected_")+(a[t]||(a[t]=++ea))+"__"}
function qb(a,b){function c(){if(a.r)return b.apply(this,arguments);if(d){var c=e,g=[];g.push("##PE_STACK_START##");g.push(c.replace(/(\r\n|\r|\n)/g,"##STACK_BR##"));g.push("##PE_STACK_END##");var g="protectedEntryPoint: "+g.join(""),c=u(),h=nb(),k;k=R.h.g;if(R.c.length+k>R.N){var l=R.pa;l&&l.log(Wa,"Giant thread trace. Clearing to avoid memory leak.",void 0);if(R.c.length>R.N/2){for(var p=0;p<R.c.length;p++)l=R.c[p],l.id&&P(R.m,l.id),P(R.j,l);R.c.length=0}k>R.N/2&&R.h.clear()}Za("Start : "+g);l=
fb(R.j);l.w=h;l.s=0;l.id=Number(fb(R.m));l.p=g;l.type=void 0;R.c.push(l);R.h.set(String(l.id),l);R.Y++;g=u();l.startTime=l.C=g;R.L+=g-c;c=l.id}try{return b.apply(this,arguments)}catch(q){a.na(q);if(!a.ua)throw a.sa&&("object"===typeof q?q.message=rb+q.message:q=rb+q),q&&q.stack&&Error.captureStackTrace&&n.console&&n.console.error(q.message,q.stack),q;throw new sb(q);}finally{if(d&&(h=c,c=u(),k=R.aa,g=R.h.get(String(h)),null!=g)){R.h.remove(String(h));var v,h=c-g.startTime;if(h<k)for(k=R.c.length-
1;0<=k;k--){if(R.c[k]==g){R.c.splice(k,1);P(R.m,g.id);P(R.j,g);break}}else v=fb(R.j),v.s=1,v.startTime=g.startTime,v.p=g.p,v.type=g.type,v.ta=v.C=c,R.c.push(v);k=g.type;l=null;k&&(l=R,p=l.l.get(k),p||(p=fb(l.X),p.type=k,l.l.set(k,p)),l=p,l.count++,l.time+=h);v&&(Za("Stop : "+v.p),v.w=nb(),l&&(l.A+=v.w-g.w));v=u();R.K+=v-c}}}var d=a.ma;if(d)var e=Pa(15);c[T(a,!1)]=b;return c}
S.prototype.i=function(){var a=aa("window"),b;b=a.setTimeout;b=b[T(this,!1)]||b;a.setTimeout=b;b=a.setInterval;b=b[T(this,!1)]||b;a.setInterval=b;S.I.i.call(this)};function sb(a){B.call(this,rb+(a&&a.message?String(a.message):String(a)));(a=a&&a.stack)&&r(a)&&(this.stack=a)}x(sb,B);var rb="Error in protected function: ";var tb="closure_listenable_"+(1E6*Math.random()|0),ub=0;function vb(a,b,c,d,e){this.o=a;this.H=null;this.src=b;this.type=c;this.R=!!d;this.V=e;this.key=++ub;this.v=this.Q=!1}function wb(a){a.v=!0;a.o=null;a.H=null;a.src=null;a.V=null};function xb(a){this.src=a;this.d={};this.M=0}xb.prototype.add=function(a,b,c,d,e){var f=a.toString();a=this.d[f];a||(a=this.d[f]=[],this.M++);var g=yb(a,b,d,e);-1<g?(b=a[g],c||(b.Q=!1)):(b=new vb(b,this.src,f,!!d,e),b.Q=c,a.push(b));return b};xb.prototype.remove=function(a,b,c,d){a=a.toString();if(!(a in this.d))return!1;var e=this.d[a];b=yb(e,b,c,d);return-1<b?(wb(e[b]),C.splice.call(e,b,1),0==e.length&&(delete this.d[a],this.M--),!0):!1};
function zb(a,b){var c=b.type;if(c in a.d){var d=a.d[c],e=sa(d,b),f;(f=0<=e)&&C.splice.call(d,e,1);f&&(wb(b),0==a.d[c].length&&(delete a.d[c],a.M--))}}function yb(a,b,c,d){for(var e=0;e<a.length;++e){var f=a[e];if(!f.v&&f.o==b&&f.R==!!c&&f.V==d)return e}return-1};var Ab=!D||D&&9<=Ia,Bb=D&&!G("9");!F||G("528");E&&G("1.9b")||D&&G("8")||Da&&G("9.5")||F&&G("528");E&&!G("8")||D&&G("9");function U(a,b){this.type=a;this.currentTarget=this.target=b;this.defaultPrevented=this.W=!1}U.prototype.i=function(){};U.prototype.T=function(){};U.prototype.stopPropagation=function(){this.W=!0};U.prototype.preventDefault=function(){this.defaultPrevented=!0};function Cb(a){Cb[" "](a);return a}Cb[" "]=function(){};function V(a,b){U.call(this,a?a.type:"");this.relatedTarget=this.currentTarget=this.target=null;this.charCode=this.keyCode=this.button=this.screenY=this.screenX=this.clientY=this.clientX=this.offsetY=this.offsetX=0;this.metaKey=this.shiftKey=this.altKey=this.ctrlKey=!1;this.t=this.state=null;if(a){var c=this.type=a.type;this.target=a.target||a.srcElement;this.currentTarget=b;var d=a.relatedTarget;if(d){if(E){var e;a:{try{Cb(d.nodeName);e=!0;break a}catch(f){}e=!1}e||(d=null)}}else"mouseover"==c?d=
a.fromElement:"mouseout"==c&&(d=a.toElement);this.relatedTarget=d;this.offsetX=F||void 0!==a.offsetX?a.offsetX:a.layerX;this.offsetY=F||void 0!==a.offsetY?a.offsetY:a.layerY;this.clientX=void 0!==a.clientX?a.clientX:a.pageX;this.clientY=void 0!==a.clientY?a.clientY:a.pageY;this.screenX=a.screenX||0;this.screenY=a.screenY||0;this.button=a.button;this.keyCode=a.keyCode||0;this.charCode=a.charCode||("keypress"==c?a.keyCode:0);this.ctrlKey=a.ctrlKey;this.altKey=a.altKey;this.shiftKey=a.shiftKey;this.metaKey=
a.metaKey;this.state=a.state;this.t=a;a.defaultPrevented&&this.preventDefault()}}x(V,U);V.prototype.stopPropagation=function(){V.I.stopPropagation.call(this);this.t.stopPropagation?this.t.stopPropagation():this.t.cancelBubble=!0};V.prototype.preventDefault=function(){V.I.preventDefault.call(this);var a=this.t;if(a.preventDefault)a.preventDefault();else if(a.returnValue=!1,Bb)try{if(a.ctrlKey||112<=a.keyCode&&123>=a.keyCode)a.keyCode=-1}catch(b){}};V.prototype.i=function(){};var Db="closure_lm_"+(1E6*Math.random()|0),Eb={},Fb=0;function Gb(a,b,c,d,e){if("array"==ba(b))for(var f=0;f<b.length;f++)Gb(a,b[f],c,d,e);else if(c=Hb(c),a&&a[tb])a.oa.add(String(b),c,!1,d,e);else{if(!b)throw Error("Invalid event type");var f=!!d,g=Ib(a);g||(a[Db]=g=new xb(a));c=g.add(b,c,!1,d,e);c.H||(d=Jb(),c.H=d,d.src=a,d.o=c,a.addEventListener?a.addEventListener(b.toString(),d,f):a.attachEvent(Kb(b.toString()),d),Fb++)}}
function Jb(){var a=Lb,b=Ab?function(c){return a.call(b.src,b.o,c)}:function(c){c=a.call(b.src,b.o,c);if(!c)return c};return b}function Kb(a){return a in Eb?Eb[a]:Eb[a]="on"+a}function Mb(a,b,c,d){var e=1;if(a=Ib(a))if(b=a.d[b.toString()])for(b=b.concat(),a=0;a<b.length;a++){var f=b[a];f&&f.R==c&&!f.v&&(e&=!1!==Nb(f,d))}return Boolean(e)}
function Nb(a,b){var c=a.o,d=a.V||a.src;if(a.Q&&"number"!=typeof a&&a&&!a.v){var e=a.src;if(e&&e[tb])zb(e.oa,a);else{var f=a.type,g=a.H;e.removeEventListener?e.removeEventListener(f,g,a.R):e.detachEvent&&e.detachEvent(Kb(f),g);Fb--;(f=Ib(e))?(zb(f,a),0==f.M&&(f.src=null,e[Db]=null)):wb(a)}}return c.call(d,b)}
function Lb(a,b){if(a.v)return!0;if(!Ab){var c=b||aa("window.event"),d=new V(c,this),e=!0;if(!(0>c.keyCode||void 0!=c.returnValue)){a:{var f=!1;if(0==c.keyCode)try{c.keyCode=-1;break a}catch(g){f=!0}if(f||void 0==c.returnValue)c.returnValue=!0}c=[];for(f=d.currentTarget;f;f=f.parentNode)c.push(f);for(var f=a.type,h=c.length-1;!d.W&&0<=h;h--)d.currentTarget=c[h],e&=Mb(c[h],f,!0,d);for(h=0;!d.W&&h<c.length;h++)d.currentTarget=c[h],e&=Mb(c[h],f,!1,d)}return e}return Nb(a,new V(b,this))}
function Ib(a){a=a[Db];return a instanceof xb?a:null}var Ob="__closure_events_fn_"+(1E9*Math.random()>>>0);function Hb(a){if(s(a))return a;a[Ob]||(a[Ob]=function(b){return a.handleEvent(b)});return a[Ob]};function Pb(a,b){if(0==b)return[[]];if(0==a.length)return[];for(var c=a[0],d=za(a,1),e=Pb(d,b),d=Pb(d,b-1),f=0;f<d.length;++f)d[f].push(c);return xa(e,d)}function Qb(a,b,c,d){d="undefined"==typeof d?[]:d;if(0==c)return a(d)?d:null;if(0==b.length)return null;var e=b[0];b=za(b,1);var f=Qb(a,b,c,d);return null!=f?f:Qb(a,b,c-1,xa(d,[e]))}w("comb.combinations",Pb);w("comb.combinationSuchThat",Qb);function Rb(){return"undefined"!=typeof crypto&&"function"==typeof crypto.getRandomValues?crypto:new W}function W(){}W.prototype.getRandomValues=function(a){a=new Uint8Array(a.buffer);for(var b=a.length,c=0;c<b;++c)a[c]=Math.floor(256*Math.random())};w("rng.getRng",Rb);w("rng.MathRng",W);W.prototype.getRandomValues=W.prototype.getRandomValues;function Sb(a){return(a&255)==a&&"number"==typeof a}function Tb(a,b){return a^b}function X(a,b){Ub();return 0==a||0==b?0:Y[Z[a]+Z[b]]}function Vb(a,b){if(0==b)throw Error("Divide by zero");Ub();return 0==a?0:Y[Z[a]-Z[b]+255]}function Wb(a){if(0==a)throw Error("Attempted to invert zero");Ub();return Y[255-Z[a]]}function Xb(a,b){if(0==b)return 1;if(0>b)return Xb(Wb(a),-b);var c=Xb(a,b>>1);return 1==c?a:b&1?X(a,X(c,c)):X(c,c)}var Z=null,Y=null;
function Ub(){if(!Y){Z=Array(256);Y=Array(510);for(var a=0;256>a;++a)Z[a]=255,Y[a]=0;for(var b=1,a=0;255>a;++a)Z[b]=a,Y[a]=b,b<<=1,b&256&&(b=(b^285)&255);for(a=0;255>a;++a)Y[a+255]=Y[a]}}w("gf28.add",Tb);w("gf28.sub",Tb);w("gf28.mul",X);w("gf28.div",Vb);w("gf28.inv",Wb);w("gf28.pow",Xb);w("gf28.isElem",Sb);w("gf28.ZERO",0);w("gf28.ONE",1);w("gf28.SIZE",256);w("gf28.MASK",255);w("gf28.GEN",2);w("gf28.PRIM_POLY",285);function Yb(a,b,c,d){function e(a){for(var b=0,c=1,d=0;d<p.length;++d)var e=X(p[d],c),c=X(c,a),b=b^e;return b}c="undefined"==typeof c?b:c;d="undefined"==typeof d?Rb():d;if(2>b)throw Error("Threshold must be at least 2.");if(c<b)throw Error("Must have at least threshold total keys.");if(255<c)throw Error("Can't make more than 255 distinct keys.");var f,g;if(a instanceof ArrayBuffer)g=new Uint8Array(a),f=g.length;else{f=a.length;g=new Uint8Array(f);for(var h="string"==typeof a?function(b){return a.charCodeAt(b)}:
function(b){return a[b]},k=0;k<f;++k){var l=h(k);if(!Sb(l))throw Error(l+" at msg["+k+"] is out of range.");g[k]=l}}var p=new Uint8Array(b);b=Array(c);for(k=0;k<c;++k)b[k]=new Uint8Array(1+f),b[k][0]=k+1;for(k=0;k<f;++k)for(d.getRandomValues(p.subarray(1)),p[0]=g[k],h=0;h<c;++h)b[h][1+k]=e(h+1);return b}
function Zb(a,b,c){b="undefined"==typeof b?a.length:b;c="undefined"==typeof c?Ja:c;b>a.length&&(b=a.length);if(b!=a.length)return b=Qb(Ka(c,Zb),a,b),null==b?null:Zb(b);if(0==a.length)throw Error("Can't combine nothing.");if(!wa(a,function(b){return b.length==a[0].length}))throw Error("Unequal key lengths.");c=a[0].length-1;for(var d=new Uint8Array(c),e=Array(b),f=0;f<c;++f){for(var g=0;g<b;++g)e[g]={x:a[g][0],y:a[g][f+1]};d[f]=$b(e)}return d}
function $b(a){for(var b=0,c=0;c<a.length;++c){for(var d=a[c].x,e=1,f=0;f<a.length;++f)if(c!=f){var g=a[f].x;if(d==g)throw Error("Keys at "+c+" and "+f+" have the same x-coordinates.");e=X(e,Vb(0^g,d^g))}d=X(a[c].y,e);b^=d}return b}w("ssss.combine",Zb);w("ssss.split",Yb);w("ssss.Key.getX",function(a){return(new Uint8Array(a))[0]});w("ssss.Key.getY",function(a,b){return(new Uint8Array(a))[b+1]});"undefined"==typeof _gaq&&(_gaq=[]);_gaq.push(["_setAccount","UA-28049294-1"]);_gaq.push(["_setDomainName","github.com"]);_gaq.push(["_setAllowLinker",!0]);_gaq.push(["_trackPageview"]);var ac=document.createElement("script");ac.type="text/javascript";ac.async=!0;ac.src=("https:"==document.location.protocol?"https://ssl":"http://www")+".google-analytics.com/ga.js";var bc=document.getElementsByTagName("script")[0];bc.parentNode.insertBefore(ac,bc);function cc(){this.f=-1};function dc(){this.f=-1;this.f=64;this.a=[];this.P=[];this.la=[];this.F=[];this.F[0]=128;for(var a=1;a<this.f;++a)this.F[a]=0;this.J=this.n=0;this.reset()}x(dc,cc);dc.prototype.reset=function(){this.a[0]=1732584193;this.a[1]=4023233417;this.a[2]=2562383102;this.a[3]=271733878;this.a[4]=3285377520;this.J=this.n=0};
function ec(a,b,c){c||(c=0);var d=a.la;if(r(b))for(var e=0;16>e;e++)d[e]=b.charCodeAt(c)<<24|b.charCodeAt(c+1)<<16|b.charCodeAt(c+2)<<8|b.charCodeAt(c+3),c+=4;else for(e=0;16>e;e++)d[e]=b[c]<<24|b[c+1]<<16|b[c+2]<<8|b[c+3],c+=4;for(e=16;80>e;e++){var f=d[e-3]^d[e-8]^d[e-14]^d[e-16];d[e]=(f<<1|f>>>31)&4294967295}b=a.a[0];c=a.a[1];for(var g=a.a[2],h=a.a[3],k=a.a[4],l,e=0;80>e;e++)40>e?20>e?(f=h^c&(g^h),l=1518500249):(f=c^g^h,l=1859775393):60>e?(f=c&g|h&(c|g),l=2400959708):(f=c^g^h,l=3395469782),f=(b<<
5|b>>>27)+f+k+l+d[e]&4294967295,k=h,h=g,g=(c<<30|c>>>2)&4294967295,c=b,b=f;a.a[0]=a.a[0]+b&4294967295;a.a[1]=a.a[1]+c&4294967295;a.a[2]=a.a[2]+g&4294967295;a.a[3]=a.a[3]+h&4294967295;a.a[4]=a.a[4]+k&4294967295}
dc.prototype.update=function(a,b){void 0===b&&(b=a.length);for(var c=b-this.f,d=0,e=this.P,f=this.n;d<b;){if(0==f)for(;d<=c;)ec(this,a,d),d+=this.f;if(r(a))for(;d<b;){if(e[f]=a.charCodeAt(d),++f,++d,f==this.f){ec(this,e);f=0;break}}else for(;d<b;)if(e[f]=a[d],++f,++d,f==this.f){ec(this,e);f=0;break}}this.n=f;this.J+=b};function fc(){for(var a=unescape(encodeURIComponent($("split-input").value)),b=a.length,c=new Uint8Array(b),d=0;d<b;++d)c[d]=a.charCodeAt(d);a=gc(c);b=new Uint8Array(1+c.length+a.length);b[0]=1;b.set(a,1);b.set(c,1+a.length);return b.buffer}function hc(a){if(!ic(a))throw Error("Invalid message");a=new Uint8Array(a,21);for(var b=[],c=a.length,d=0;d<c;++d)b.push(String.fromCharCode(a[d]));return decodeURIComponent(escape(b.join("")))}
function ic(a){if(1!=(new Uint8Array(a,0,1))[0])return!1;var b=new Uint8Array(a,1,20);a=gc(new Uint8Array(a,21));a:if(b.length!=a.length)b=!1;else{for(var c=b.length,d=0;d<c;++d)if(b[d]!=a[d]){b=!1;break a}b=!0}return b}function gc(a){var b=new dc;b.update(a);a=[];var c=8*b.J;56>b.n?b.update(b.F,56-b.n):b.update(b.F,b.f-(b.n-56));for(var d=b.f-1;56<=d;d--)b.P[d]=c&255,c/=256;ec(b,b.P);for(d=c=0;5>d;d++)for(var e=24;0<=e;e-=8)a[c]=b.a[d]>>e&255,++c;return new Uint8Array(a)};var jc=null,kc=null;function lc(){if(!jc){jc={};kc={};for(var a=0;65>a;a++)jc[a]="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(a),kc[jc[a]]=a,62<=a&&(kc["ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_.".charAt(a)]=a)}};var mc=!D||D&&9<=Ia;!E&&!D||D&&D&&9<=Ia||E&&G("1.9.1");D&&G("9");function $(a){var b=document;return r(a)?b.getElementById(a):a}function nc(a,b){Aa(b,function(b,d){"style"==d?a.style.cssText=b:"class"==d?a.className=b:"for"==d?a.htmlFor=b:d in oc?a.setAttribute(oc[d],b):0==d.lastIndexOf("aria-",0)||0==d.lastIndexOf("data-",0)?a.setAttribute(d,b):a[d]=b})}
var oc={cellpadding:"cellPadding",cellspacing:"cellSpacing",colspan:"colSpan",frameborder:"frameBorder",height:"height",maxlength:"maxLength",role:"role",rowspan:"rowSpan",type:"type",usemap:"useMap",valign:"vAlign",width:"width"};
function pc(a,b,c){var d=arguments,e=document,f=d[0],g=d[1];if(!mc&&g&&(g.name||g.type)){f=["<",f];g.name&&f.push(' name="',y(g.name),'"');if(g.type){f.push(' type="',y(g.type),'"');var h={};Ca(h,g);delete h.type;g=h}f.push(">");f=f.join("")}f=e.createElement(f);g&&(r(g)?f.className=g:"array"==ba(g)?f.className=g.join(" "):nc(f,g));2<d.length&&qc(e,f,d);return f}
function qc(a,b,c){function d(c){c&&b.appendChild(r(c)?a.createTextNode(c):c)}for(var e=2;e<c.length;e++){var f=c[e];!ca(f)||da(f)&&0<f.nodeType?d(f):ta(rc(f)?ya(f):f,d)}}function sc(a){for(var b;b=a.firstChild;)a.removeChild(b)}
function tc(a,b){if("textContent"in a)a.textContent=b;else if(3==a.nodeType)a.data=b;else if(a.firstChild&&3==a.firstChild.nodeType){for(;a.lastChild!=a.firstChild;)a.removeChild(a.lastChild);a.firstChild.data=b}else sc(a),a.appendChild((9==a.nodeType?a:a.ownerDocument||a.document).createTextNode(String(b)))}function rc(a){if(a&&"number"==typeof a.length){if(da(a))return"function"==typeof a.item||"string"==typeof a.item;if(s(a))return"function"==typeof a.item}return!1};Uint8Array.prototype.toString=function(){if(!ca(this))throw Error("encodeByteArray takes an array as a parameter");lc();for(var a=jc,b=[],c=0;c<this.length;c+=3){var d=this[c],e=c+1<this.length,f=e?this[c+1]:0,g=c+2<this.length,h=g?this[c+2]:0,k=d>>2,d=(d&3)<<4|f>>4,f=(f&15)<<2|h>>6,h=h&63;g||(h=64,e||(f=64));b.push(a[k],a[d],a[f],a[h])}return b.join("")};
function uc(a){var b=Uint8Array;lc();for(var c=kc,d=[],e=0;e<a.length;){var f=c[a.charAt(e++)],g=e<a.length?c[a.charAt(e)]:0;++e;var h=e<a.length?c[a.charAt(e)]:64;++e;var k=e<a.length?c[a.charAt(e)]:64;++e;if(null==f||null==g||null==h||null==k)throw Error();d.push(f<<2|g>>4);64!=h&&(d.push(g<<4&240|h>>2),64!=k&&d.push(h<<6&192|k))}return new b(d)}function vc(a){"undefined"!=typeof _gaq&&_gaq.push(["_trackEvent","error",a.message]);var b=$("err-div");tc(b,a.message);b.style.display="block"}
function wc(){$("err-div").style.display="none"}var pb=new S(vc);w("app.errFunc",vc);
w("app.run",function(){wc();var a=ob(Yb),b=ob(Zb);Gb($("split"),"click",function(){"undefined"!=typeof _gaq&&_gaq.push(["_trackEvent","ssss","split"]);wc();var b=parseInt($("split-k").value,10),d=parseInt($("split-n").value,10),b=a(fc(),b,d);sc($("split-output"));ta(b,function(a){var b=pc("pre");tc(b,a);$("split-output").appendChild(b)})});Gb($("combine"),"click",function(){"undefined"!=typeof _gaq&&_gaq.push(["_trackEvent","ssss","combine"]);wc();var a=parseInt($("combine-k").value,10),d=ua(va($("combine-keys").value.split("\n"),
uc),function(a){return a.length});0<a||(a=d.length);var e="";try{e=hc(b(d,a,function(a){return ic(a.buffer)}).buffer)}catch(f){vc({message:"Couldn't find a valid message; either you don't have enough keys or k is set too low."})}a=pc("pre");tc(a,e);sc($("combine-output"));$("combine-output").appendChild(a)})});
</script>
<style>
#err-div { background-color: #ffc; color: #f00; padding: 0.5em;
border: 1px dotted #f00 }
html { font-family: sans-serif }
body { max-width: 6in; margin: auto }
h1, h2 { border-bottom: 1px solid }
label, input { display: block }
</style>
<body>
<h1><abbr title="Shamir’s Secret Sharing Scheme">SSSS</abbr> Lockbox</h1>
<div id="err-div">
<noscript><p>This page requires JavaScript to run.</p></noscript>
</div>
<div id="warn-div">
<h2>WARNING</h2>
<p>This page is currently meant primarily for demo purposes. In particular,
you shouldn’t assume that it’ll combine keys created on previous versions of
the page—the message encoding and key formatting schemes are still under
active development.
<p>If you want to use this right now, the best thing to do is to check out a
known revision of the <a
href="https://github.com/mrdomino/lockbox">repository</a> and build it
yourself. The second best thing to do is to make an offline copy of this page
(“Save As…” → “Web Page, Complete” or similar) and distribute
that along with your keys.
<p>A more permanent implementation is “coming soon”.
</div>
<div id="split-div">
<h2>Split</h2>
<div>
<label for="split-k">Threshold (minimum number of keys needed)</label>
<input type="text" id="split-k" value="3">
<label for="split-n">Total number of keys to produce</label>
<input type="text" id="split-n" value="5">
<label for="split-input">Message</label>
<textarea id="split-input">default message</textarea>
<input type="button" value="Split" id="split">
</div>
<div id="split-output"></div>
</div>
<div id="combine-div">
<h2>Combine</h2>
<div>
<label for="combine-k">Threshold (defaults to number of keys
entered)</label>
<input type="text" id="combine-k">
<label for="combine-keys">Keys</label>
<textarea id="combine-keys"></textarea>
<input type="button" value="Combine" id="combine">
</div>
<div id="combine-output"></div>
</div>
<div id="about-div">
<h2>About</h2>
<p>This is a pure JavaScript implementation of
<a href="https://en.wikipedia.org/wiki/Shamir's_Secret_Sharing">Shamir’s
Secret Sharing</a>. There is no server needed; all crypto is done in your
browser. See the <a href="https://github.com/mrdomino/lockbox">github
project page</a> for more information.
<p>Written by <a href="https://www.google.com/profiles/mrdomino">mrdomino</a>.
</div>
<script>
try {
app.run();
} catch(e) {
try {
app.errFunc(e);
} catch(e1) {
try {
document.getElementById('err-div').appendChild(
document.createTextNode(e.message));
} finally {
alert('Something went really wrong. app-compiled.js may not have been ' +
'generated; try running make.');
}
}
}
</script>